From d85060f4d744cb324581421d83af1de247136d64 Mon Sep 17 00:00:00 2001 From: Jeffrey Aven Date: Mon, 15 Sep 2025 19:07:18 +1000 Subject: [PATCH 1/2] working mappings --- README.md | 376 +- package-lock.json | 527 + package.json | 2 +- provider-dev/config/.gitkeep | 0 provider-dev/config/all_services.csv | 576 + provider-dev/downloaded/.gitkeep | 0 provider-dev/downloaded/openapi.yaml | 73326 ++++++++++++++++ provider-dev/openapi/.gitkeep | 0 .../src/datadog/v00.00.00000/provider.yaml | 159 + .../v00.00.00000/services/actions.yaml | 3810 + .../datadog/v00.00.00000/services/apm.yaml | 2059 + .../v00.00.00000/services/catalog.yaml | 2359 + .../v00.00.00000/services/cloud_costs.yaml | 2512 + .../v00.00.00000/services/dashboards.yaml | 1304 + .../services/digital_experience.yaml | 2253 + .../v00.00.00000/services/infrastructure.yaml | 4125 + .../v00.00.00000/services/integrations.yaml | 5119 ++ .../datadog/v00.00.00000/services/logs.yaml | 3687 + .../v00.00.00000/services/metrics.yaml | 4681 + .../v00.00.00000/services/monitoring.yaml | 2089 + .../v00.00.00000/services/organization.yaml | 10507 +++ .../v00.00.00000/services/remote_config.yaml | 6790 ++ .../v00.00.00000/services/security.yaml | 12746 +++ .../services/service_management.yaml | 15360 ++++ .../services/software_delivery.yaml | 4554 + provider-dev/source/.gitkeep | 0 provider-dev/source/actions.yaml | 3645 + provider-dev/source/apm.yaml | 1888 + provider-dev/source/catalog.yaml | 2244 + provider-dev/source/cloud_costs.yaml | 2278 + provider-dev/source/dashboards.yaml | 1226 + provider-dev/source/digital_experience.yaml | 2071 + provider-dev/source/infrastructure.yaml | 3889 + provider-dev/source/integrations.yaml | 4414 + provider-dev/source/logs.yaml | 3443 + provider-dev/source/metrics.yaml | 4404 + provider-dev/source/monitoring.yaml | 1890 + provider-dev/source/organization.yaml | 9357 ++ provider-dev/source/remote_config.yaml | 6510 ++ provider-dev/source/security.yaml | 11685 +++ provider-dev/source/service_management.yaml | 14415 +++ provider-dev/source/software_delivery.yaml | 4326 + website/yarn.lock | 9087 ++ 43 files changed, 245508 insertions(+), 185 deletions(-) create mode 100644 package-lock.json delete mode 100644 provider-dev/config/.gitkeep create mode 100644 provider-dev/config/all_services.csv delete mode 100644 provider-dev/downloaded/.gitkeep create mode 100644 provider-dev/downloaded/openapi.yaml delete mode 100644 provider-dev/openapi/.gitkeep create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/provider.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/actions.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/apm.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/catalog.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/cloud_costs.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/dashboards.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/digital_experience.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/infrastructure.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/integrations.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/logs.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/metrics.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/monitoring.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/organization.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/remote_config.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/security.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/service_management.yaml create mode 100644 provider-dev/openapi/src/datadog/v00.00.00000/services/software_delivery.yaml delete mode 100644 provider-dev/source/.gitkeep create mode 100644 provider-dev/source/actions.yaml create mode 100644 provider-dev/source/apm.yaml create mode 100644 provider-dev/source/catalog.yaml create mode 100644 provider-dev/source/cloud_costs.yaml create mode 100644 provider-dev/source/dashboards.yaml create mode 100644 provider-dev/source/digital_experience.yaml create mode 100644 provider-dev/source/infrastructure.yaml create mode 100644 provider-dev/source/integrations.yaml create mode 100644 provider-dev/source/logs.yaml create mode 100644 provider-dev/source/metrics.yaml create mode 100644 provider-dev/source/monitoring.yaml create mode 100644 provider-dev/source/organization.yaml create mode 100644 provider-dev/source/remote_config.yaml create mode 100644 provider-dev/source/security.yaml create mode 100644 provider-dev/source/service_management.yaml create mode 100644 provider-dev/source/software_delivery.yaml create mode 100644 website/yarn.lock diff --git a/README.md b/README.md index 5545b37..eb57641 100644 --- a/README.md +++ b/README.md @@ -1,164 +1,168 @@ -# StackQL Provider Template +# `datadog` provider for [`stackql`](https://github.com/stackql/stackql) -This repository serves as a template for developing StackQL providers. It provides a structured workflow and tools to generate, test, and document StackQL providers for various cloud services and APIs. - -## What is StackQL? - -[StackQL](https://github.com/stackql/stackql) is an open-source SQL interface for cloud APIs that allows you to query and manipulate cloud resources using SQL-like syntax. With StackQL, you can: - -- Query cloud resources across multiple providers using familiar SQL syntax -- Join data from different services and providers -- Execute CRUDL operations (`SELECT`, `INSERT`, `UPDATE`, `REPLACE`, `DELETE`) on cloud resources -- Execute lifecycle operations (like starting or stopping vms) using `EXEC` -- Build custom dashboards and reports -- Automate infrastructure operations using [`stackql-deploy`](https://stackql-deploy.io/) - -## What are StackQL Providers? - -StackQL providers are extensions that connect StackQL to specific cloud services or APIs. Each provider: - -1. Defines a schema that maps API endpoints to SQL-like resources and methods -2. Implements authentication mechanisms for the target API -3. Translates SQL operations into API calls -4. Transforms API responses into tabular data that can be queried with SQL - -This template repository helps you build StackQL providers by converting OpenAPI specifications into StackQL-compatible provider schemas using the `@stackql/provider-utils` package. - -## How StackQL Providers Work - -StackQL providers bridge the gap between SQL queries and REST APIs: - -1. **Resource Mapping**: API endpoints are mapped to SQL-like tables and views -2. **Method Mapping**: API operations are mapped to SQL verbs (`SELECT`, `INSERT`, `UPDATE`, `REPLACE`, `DELETE` and `EXEC`) -3. **Parameter Mapping**: SQL query conditions are translated to API parameters -4. **Response Transformation**: API responses are converted to tabular results +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 this template for developing a StackQL provider, you'll need: - -1. An OpenAPI specification for the target API -2. Node.js and `npm` installed on your system -3. StackQL CLI installed (see [StackQL Installation](https://stackql.io/docs/installing-stackql)) -4. API credentials for testing your provider - -## Development Workflow +To use the DataDog provider with StackQL, you'll need: -### 1. Clone this Template - -Start by cloning this template repository and installing dependencies: - -```bash -git clone https://github.com/stackql/stackql-provider-template.git stackql-provider-myprovider -cd stackql-provider-myprovider -npm install -``` +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)) -### 2. Download the OpenAPI Specification +## 1. Download the Open API Specification -Obtain the OpenAPI specification for your target API. You can typically find this in the API documentation or developer portal. +First, download the DataDog API OpenAPI specification: ```bash -mkdir -p provider-dev/downloaded -curl -L https://api-url.example.com/openapi.yaml -o provider-dev/downloaded/provider-name.yaml +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 ``` -> recommended to automate this by creating a script in the `provider-dev/scripts` folder +## 2. Split into Service Specs -### 3. Split the OpenAPI Spec into Service Specs - -Break down the OpenAPI specification into smaller, service-specific files: +Next, split the monolithic OpenAPI specification into service-specific files: ```bash +rm -rf provider-dev/source/* npm run split -- \ - --provider-name your-provider-name \ - --api-doc provider-dev/downloaded/provider-name.yaml \ - --svc-discriminator tag \ + --provider-name datadog \ + --api-doc provider-dev/downloaded/openapi.yaml \ + --svc-discriminator path \ --output-dir provider-dev/source \ --overwrite \ --svc-name-overrides "$(cat < this will vary by provider and may not be necessary in many cases +### Test Meta Routes -### 7. Test the Provider +Test all metadata routes (services, resources, methods) in the provider: + +```bash +npm run test-meta-routes -- datadog --verbose +``` -#### Start the StackQL Server +When you're done testing, stop the StackQL server: ```bash -PROVIDER_REGISTRY_ROOT_DIR="$(pwd)/provider-dev/openapi" -npm run start-server -- --provider your-provider-name --registry $PROVIDER_REGISTRY_ROOT_DIR +npm run stop-server ``` -#### Test Metadata Routes +Use this command to view the server status: ```bash -npm run test-meta-routes -- your-provider-name --verbose +npm run server-status ``` -#### Run Test Queries +### Run test queries + +Run some test queries against the provider using the `stackql shell`: ```bash PROVIDER_REGISTRY_ROOT_DIR="$(pwd)/provider-dev/openapi" @@ -166,127 +170,131 @@ REG_STR='{"url": "file://'${PROVIDER_REGISTRY_ROOT_DIR}'", "localDocRoot": "'${P ./stackql shell --registry="${REG_STR}" ``` -Example test query: -```sql -SELECT * FROM your-provider-name.service_name.resource_name LIMIT 10; -``` +Example queries to try: -When you're done testing, stop the StackQL server: -```bash -npm run stop-server +```sql +-- Get organization details +SELECT +name, +description, +public_id, +created, +modified +FROM datadog.organizations.organization; + +-- List all active monitors +SELECT +id, +name, +status, +creator, +created, +modified, +type, +tags +FROM datadog.monitors.monitors +WHERE status = 'Alert'; + +-- View service level objectives +SELECT +id, +name, +description, +tags, +type, +created_at, +modified_at, +thresholds +FROM datadog.service_level_objectives.slos; + +-- Check all dashboard lists +SELECT +id, +name, +author, +created, +modified, +dashboard_count +FROM datadog.dashboards.lists; + +-- View host metrics +SELECT +host, +metric_name, +metric_value, +tags +FROM datadog.metrics.query +WHERE metric_name = 'system.cpu.user' +AND from_time = unix_timestamp() - 3600 +AND to_time = unix_timestamp(); ``` -### 8. Publish the Provider +## 6. Publish the provider -To publish your provider: +To publish the provider push the `datadog` dir to `providers/src` in a feature branch of the [`stackql-provider-registry`](https://github.com/stackql/stackql-provider-registry). Follow the [registry release flow](https://github.com/stackql/stackql-provider-registry/blob/dev/docs/build-and-deployment.md). -1. Fork the [stackql-provider-registry](https://github.com/stackql/stackql-provider-registry) repository -2. Copy your provider directory to `providers/src` in a feature branch -3. Follow the [registry release flow](https://github.com/stackql/stackql-provider-registry/blob/dev/docs/build-and-deployment.md) +Launch the StackQL shell: -Test your published provider in the `dev` registry: ```bash export DEV_REG="{ \"url\": \"https://registry-dev.stackql.app/providers\" }" ./stackql --registry="${DEV_REG}" shell ``` -Pull and verify your provider: +Pull the latest dev `datadog` provider: + ```sql -registry pull your-provider-name; --- Run test queries +registry pull datadog; ``` -### 9. Generate Documentation +Run some test queries to verify the provider works as expected. -Provider doc microsites are built using Docusaurus and published using GitHub Pages. To genarate and publish comprehensive user docs for your provider, do the following: +## 7. Generate web docs -a. Upodate `headerContent1.txt` and `headerContent2.txt` accordingly in `provider-dev/docgen/provider-data/` +Provider doc microsites are built using Docusaurus and published using GitHub Pages. + +a. Update `headerContent1.txt` and `headerContent2.txt` accordingly in `provider-dev/docgen/provider-data/` b. Update the following in `website/docusaurus.config.js`: ```js // Provider configuration - change these for different providers -const providerName = "yourprovidername"; -const providerTitle = "Your Provider Title"; +const providerName = "datadog"; +const providerTitle = "DataDog Provider"; ``` c. Then generate docs using... ```bash npm run generate-docs -- \ - --provider-name your-provider-name \ - --provider-dir ./provider-dev/openapi/src/your-provider-name/v00.00.00000 \ + --provider-name datadog \ + --provider-dir ./provider-dev/openapi/src/datadog/v00.00.00000 \ --output-dir ./website \ --provider-data-dir ./provider-dev/docgen/provider-data ``` -d. Test the documentation locally: +## 8. Test web docs locally + ```bash cd website +# test build yarn build + +# run local dev server yarn start ``` -### 10. Publish Documentation - -Remove the `.disabled` extension from `.github/workflows/test-web-deploy.yml.disabled` and `.github/workflows/prod-web-deploy.yml.disabled` - -Set up GitHub Pages in your repository settings, and configure DNS if needed: - -| Source Domain | Record Type | Target | -|---------------|-------------|--------| -| your-provider-name-provider.stackql.io | CNAME | stackql.github.io. | - -## Authentication Configuration - -Different APIs require different authentication methods. Here are common authentication configurations: +## 9. Publish web docs to GitHub Pages -### API Key in Header -```json -{ - "auth": { - "credentialsenvvar": "PROVIDER_API_KEY", - "type": "header", - "headerName": "X-API-Key" - } -} -``` +Under __Pages__ in the repository, in the __Build and deployment__ section select __GitHub Actions__ as the __Source__. In Netlify DNS create the following records: -### Bearer Token -```json -{ - "auth": { - "credentialsenvvar": "PROVIDER_TOKEN", - "type": "bearer" - } -} -``` +| Source Domain | Record Type | Target | +|---------------|--------------|--------| +| datadog-provider.stackql.io | CNAME | stackql.github.io. | -### Basic Authentication -```json -{ - "auth": { - "credentialsenvvar": "PROVIDER_BASIC_AUTH", - "type": "basic" - } -} -``` +## License -### OAuth (Client Credentials Flow) -```json -{ - "auth": { - "credentialsenvvar": "PROVIDER_OAUTH_CONFIG", - "type": "oauth-client-credentials", - "tokenUrl": "https://auth.example.com/token" - } -} -``` +MIT ## Contributing -Contributions are welcome! Please feel free to submit a Pull Request. - -## License - -MIT \ No newline at end of file +Contributions are welcome! Please feel free to submit a Pull Request. \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..474c1b7 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,527 @@ +{ + "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" + } + } + } +} diff --git a/package.json b/package.json index b63f7a4..a128d54 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ }, "dependencies": { "@stackql/pgwire-lite": "^1.0.1", - "@stackql/provider-utils": "^0.4.6" + "@stackql/provider-utils": "^0.4.9" }, "keywords": [ "stackql", diff --git a/provider-dev/config/.gitkeep b/provider-dev/config/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/provider-dev/config/all_services.csv b/provider-dev/config/all_services.csv new file mode 100644 index 0000000..80ff313 --- /dev/null +++ b/provider-dev/config/all_services.csv @@ -0,0 +1,576 @@ +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/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,,List App Key Registrations +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 +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/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/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/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/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/{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}/items,ListDatastoreItems,list_datastore_items,get,ItemApiPayloadArray,Actions Datastores,actions datastores,datastore_items,list_datastore_items,select,,List datastore items +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,CreateDatastore,create_datastore,post,CreateAppsDatastoreResponse,Actions Datastores,actions datastores,datastores,create_datastore,insert,,Create datastore +actions.yaml,/api/v2/actions-datastores/{datastore_id},DeleteDatastore,delete_datastore,delete,,Actions Datastores,actions datastores,datastores,delete_datastore,delete,,Delete datastore +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 +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/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/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/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/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/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/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/outcomes,ListScorecardOutcomes,list_scorecard_outcomes,get,OutcomesResponse,Service Scorecards,service scorecards,scorecard_outcomes,list_scorecard_outcomes,select,,List all rule outcomes +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 +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/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/scorecard/rules,ListScorecardRules,list_scorecard_rules,get,ListRulesResponse,Service Scorecards,service scorecards,scorecard_rules,list_scorecard_rules,select,,List all rules +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 +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 +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 +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 +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 +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/apicatalog/api/{id},DeleteOpenAPI,delete_open_api,delete,,API Management,api management,apis,delete_open_api,delete,,Delete an API +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 +catalog.yaml,/api/v2/apicatalog/api,ListAPIs,list_apis,get,ListAPIsResponse,API Management,api management,apis,list_apis,select,,List APIs +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 +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/entity,ListCatalogEntity,list_catalog_entity,get,ListEntityCatalogResponse,Software Catalog,software catalog,catalog_entities,list_catalog_entity,select,,Get a list of entities +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/{kind_id},DeleteCatalogKind,delete_catalog_kind,delete,,Software Catalog,software catalog,catalog_kinds,delete_catalog_kind,delete,,Delete a single kind +catalog.yaml,/api/v2/catalog/kind,ListCatalogKind,list_catalog_kind,get,ListKindCatalogResponse,Software Catalog,software catalog,catalog_kinds,list_catalog_kind,select,,Get a list of entity kinds +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 +catalog.yaml,/api/v2/catalog/relation,ListCatalogRelation,list_catalog_relation,get,ListRelationCatalogResponse,Software Catalog,software catalog,catalog_relations,list_catalog_relation,select,,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,,Get active billing dimensions for cost attribution +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/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/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/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,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/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/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/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/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/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/budget,UpsertBudget,upsert_budget,put,BudgetWithEntries,Cloud Cost Management,cloud cost management,budgets,upsert_budget,replace,,Create or update 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/custom_costs/{file_id},GetCustomCostsFile,get_custom_costs_file,get,CustomCostsFileGetResponse,Cloud Cost Management,cloud cost management,costs_files,get_custom_costs_file,select,,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,,List Custom Costs files +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 +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 +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 +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/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 +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,,Get Monthly Cost Attribution +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/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/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,,Get items of a Dashboard List +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 +dashboards.yaml,/api/v2/powerpacks,CreatePowerpack,create_powerpack,post,PowerpackResponse,Powerpack,powerpack,powerpacks,create_powerpack,insert,,Create a new powerpack +dashboards.yaml,/api/v2/powerpacks/{powerpack_id},DeletePowerpack,delete_powerpack,delete,,Powerpack,powerpack,powerpacks,delete_powerpack,delete,,Delete a powerpack +dashboards.yaml,/api/v2/powerpacks/{powerpack_id},GetPowerpack,get_powerpack,get,PowerpackResponse,Powerpack,powerpack,powerpacks,get_powerpack,select,,Get a Powerpack +dashboards.yaml,/api/v2/powerpacks,ListPowerpacks,list_powerpacks,get,ListPowerpacksResponse,Powerpack,powerpack,powerpacks,list_powerpacks,select,,Get all powerpacks +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,CreateRUMApplication,create_rumapplication,post,RUMApplicationResponse,RUM,rum,rum_applications,create_rumapplication,insert,,Create a new RUM application +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/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/applications/{id},UpdateRUMApplication,update_rumapplication,patch,RUMApplicationResponse,RUM,rum,rum_applications,update_rumapplication,update,,Update a RUM application +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,ListRUMEvents,list_rumevents,get,RUMEventsResponse,RUM,rum,rum_events,list_rumevents,select,,Get a list of 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/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/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/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/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,CreateRetentionFilter,create_retention_filter,post,RumRetentionFilterResponse,Rum Retention Filters,rum retention filters,rum_retention_filters,create_retention_filter,insert,,Create a RUM retention filter +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 +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 +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 +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/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,CreateApp,create_app,post,CreateAppResponse,App Builder,app builder,apps,create_app,insert,,Create App +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 +infrastructure.yaml,/api/v2/app-builder/apps/{app_id},GetApp,get_app,get,GetAppResponse,App Builder,app builder,apps,get_app,select,,Get App +infrastructure.yaml,/api/v2/app-builder/apps,ListApps,list_apps,get,ListAppsResponse,App Builder,app builder,apps,list_apps,select,,List Apps +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 +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/container_images,ListContainerImages,list_container_images,get,ContainerImagesResponse,Container Images,container images,container_images,list_container_images,select,,Get all Container Images +infrastructure.yaml,/api/v2/containers,ListContainers,list_containers,get,ContainersResponse,Containers,containers,containers,list_containers,select,,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/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 +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,,Get the list of devices +infrastructure.yaml,/api/v2/processes,ListProcesses,list_processes,get,ProcessSummariesResponse,Processes,processes,processes,list_processes,select,,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,CreateAWSAccount,create_awsaccount,post,AWSAccountResponse,AWS Integration,aws integration,aws_accounts,create_awsaccount,insert,,Create an AWS integration +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/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/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/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/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,CreateCloudflareAccount,create_cloudflare_account,post,CloudflareAccountResponse,Cloudflare Integration,cloudflare integration,cloudflare_accounts,create_cloudflare_account,insert,,Add Cloudflare account +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/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/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,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},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},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},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,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/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/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/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,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},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},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},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,CreateFastlyService,create_fastly_service,post,FastlyServiceResponse,Fastly Integration,fastly integration,fastly_services,create_fastly_service,insert,,Add Fastly service +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/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/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,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/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/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/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/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/gcp/sts_delegate,MakeGCPSTSDelegate,make_gcpstsdelegate,post,GCPSTSDelegateAccountResponse,GCP Integration,gcp integration,gcp_sts_delegate,make_gcpstsdelegate,exec,,Create a Datadog GCP principal +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,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/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/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/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,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/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/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/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,CreateOktaAccount,create_okta_account,post,OktaAccountResponse,Okta Integration,okta integration,okta_accounts,create_okta_account,insert,,Add Okta account +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/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/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,CreateOpsgenieService,create_opsgenie_service,post,OpsgenieServiceResponse,Opsgenie Integration,opsgenie integration,opsgenie_services,create_opsgenie_service,insert,,Create a new service object +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 +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 +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/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/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}/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/{archive_id}/readers,ListArchiveReadRoles,list_archive_read_roles,get,RolesResponse,Logs Archives,logs archives,archive_read_roles,list_archive_read_roles,select,,List read roles for an archive +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,CreateLogsArchive,create_logs_archive,post,LogsArchive,Logs Archives,logs archives,archives,create_logs_archive,insert,,Create 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/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/archives/{archive_id},UpdateLogsArchive,update_logs_archive,put,LogsArchive,Logs Archives,logs archives,archives,update_logs_archive,replace,,Update 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/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/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/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/analytics/aggregate,AggregateLogs,aggregate_logs,post,LogsAggregateResponse,Logs,logs,logs,aggregate_logs,exec,,Aggregate events +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/events,ListLogsGet,list_logs_get,get,LogsListResponse,Logs,logs,logs,list_logs_get,select,,Search logs (GET) +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 +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 +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 +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}/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,CreateDataset,create_dataset,post,DatasetResponseSingle,Datasets,datasets,datasets,create_dataset,insert,,Create a dataset +metrics.yaml,/api/v2/datasets/{dataset_id},DeleteDataset,delete_dataset,delete,,Datasets,datasets,datasets,delete_dataset,delete,,Delete a dataset +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/datasets/{dataset_id},UpdateDataset,update_dataset,put,DatasetResponseSingle,Datasets,datasets,datasets,update_dataset,replace,,Edit a dataset +metrics.yaml,/api/v2/series,SubmitMetrics,submit_metrics,post,IntakePayloadAccepted,Metrics,metrics,metrics,submit_metrics,insert,,Submit metrics +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/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/metrics/{metric_name}/assets,ListMetricAssets,list_metric_assets,get,MetricAssetsResponse,Metrics,metrics,related_assets,list_metric_assets,select,,Related Assets to a Metric +metrics.yaml,/api/v2/spans/analytics/aggregate,AggregateSpans,aggregate_spans,post,SpansAggregateResponse,Spans,spans,spans,aggregate_spans,exec,,Aggregate spans +metrics.yaml,/api/v2/spans/events/search,ListSpans,list_spans,post,SpansListResponse,Spans,spans,spans,list_spans,insert,,Search spans +metrics.yaml,/api/v2/spans/events,ListSpansGet,list_spans_get,get,SpansListResponse,Spans,spans,spans,list_spans_get,select,,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,,Get tag key cardinality details +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 +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 +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,,Get a list of metrics +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 +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,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/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/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/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/{monitor_id}/downtime_matches,ListMonitorDowntimes,list_monitor_downtimes,get,MonitorDowntimeMatchResponse,Downtimes,downtimes,downtimes,list_monitor_downtimes,select,,Get active downtimes for a monitor +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/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/notification_rule/{rule_id},GetMonitorNotificationRule,get_monitor_notification_rule,get,MonitorNotificationRuleResponse,Monitors,monitors,notification_rules,get_monitor_notification_rule,select,,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,,Get all monitor notification rules +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 +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/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 +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 +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 +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 +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/api_keys,CreateAPIKey,create_apikey,post,APIKeyResponse,Key Management,key management,api_keys,create_apikey,insert,,Create an API key +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/api_keys/{api_key_id},GetAPIKey,get_apikey,get,APIKeyResponse,Key Management,key management,api_keys,get_apikey,select,,Get API key +organization.yaml,/api/v2/api_keys,ListAPIKeys,list_apikeys,get,APIKeysResponse,Key Management,key management,api_keys,list_apikeys,select,,Get all API keys +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},DeleteApplicationKey,delete_application_key,delete,,Key Management,key management,application_keys,delete_application_key,delete,,Delete an application key +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,,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,,Get all application keys +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/audit/events,ListAuditLogs,list_audit_logs,get,AuditLogsEventsResponse,Audit,audit,audit_logs,list_audit_logs,select,,Get a list of Audit Logs events +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/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/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/authn_mappings/{authn_mapping_id},GetAuthNMapping,get_auth_nmapping,get,AuthNMappingResponse,AuthN Mappings,auth_n mappings,authn_mappings,get_auth_nmapping,select,,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,,List all AuthN Mappings +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/usage/billing_dimension_mapping,GetBillingDimensionMapping,get_billing_dimension_mapping,get,,Usage Metering,usage metering,billing_dimension_mapping,get_billing_dimension_mapping,select,,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_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,CreateOrgConnections,create_org_connections,post,OrgConnectionResponse,Org Connections,org connections,connections,create_org_connections,insert,,Create Org Connection +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/org_connections,ListOrgConnections,list_org_connections,get,OrgConnectionListResponse,Org Connections,org connections,connections,list_org_connections,select,,List Org Connections +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/usage/cost_by_org,GetCostByOrg,get_cost_by_org,get,,Usage Metering,usage metering,cost_by_org,get_cost_by_org,select,,Get cost across multi-org account +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/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/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,,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,,Get all application keys owned by current user +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/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/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/deletion/requests,GetDataDeletionRequests,get_data_deletion_requests,get,GetDataDeletionsResponseBody,Data Deletion,data deletion,data_deletion_requests,get_data_deletion_requests,select,,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/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/usage/estimated_cost,GetEstimatedCostByOrg,get_estimated_cost_by_org,get,,Usage Metering,usage metering,estimated_cost_by_org,get_estimated_cost_by_org,select,,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,,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,,Get hourly usage by product family +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/{user_invitation_uuid},GetInvitation,get_invitation,get,UserInvitationResponse,Users,users,invitations,get_invitation,select,$.data,Get a user invitation +organization.yaml,/api/v2/user_invitations,SendInvitations,send_invitations,post,UserInvitationsResponse,Users,users,invitations,send_invitations,exec,,Send invitation emails +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/ip_allowlist,UpdateIPAllowlist,update_ipallowlist,patch,IPAllowlistResponse,IP Allowlist,ip allowlist,ip_allowlist,update_ipallowlist,update,,Update 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,,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,,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,,Get projected cost across your account +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/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/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/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}/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}/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}/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/{role_id}/users,ListRoleUsers,list_role_users,get,UsersResponse,Roles,roles,role_users,list_role_users,select,,Get all users of a role +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/roles,CreateRole,create_role,post,RoleCreateResponse,Roles,roles,roles,create_role,insert,,Create role +organization.yaml,/api/v2/roles/{role_id},DeleteRole,delete_role,delete,,Roles,roles,roles,delete_role,delete,,Delete 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,,List roles +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,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/{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/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,,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,,List application keys for this service account +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/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/{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/{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/{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/{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/{super_team_id}/member_teams,ListMemberTeams,list_member_teams,get,TeamsResponse,Teams,teams,team_members,list_member_teams,select,,Get all member teams +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,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/{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}/memberships,GetTeamMemberships,get_team_memberships,get,UserTeamsResponse,Teams,teams,team_memberships,get_team_memberships,select,,Get team memberships +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}/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}/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 +organization.yaml,/api/v2/team,CreateTeam,create_team,post,TeamResponse,Teams,teams,teams,create_team,insert,,Create a team +organization.yaml,/api/v2/team/{team_id},DeleteTeam,delete_team,delete,,Teams,teams,teams,delete_team,delete,,Remove 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,,Get all teams +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/team/{team_id},UpdateTeam,update_team,patch,TeamResponse,Teams,teams,teams,update_team,update,,Update a team +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,,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,,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,,Get user memberships +organization.yaml,/api/v2/users,CreateUser,create_user,post,UserResponse,Users,users,users,create_user,insert,,Create a user +organization.yaml,/api/v2/users/{user_id},DisableUser,disable_user,delete,,Users,users,users,disable_user,exec,,Disable a user +organization.yaml,/api/v2/users/{user_id},GetUser,get_user,get,UserResponse,Users,users,users,get_user,select,,Get user details +organization.yaml,/api/v2/users,ListUsers,list_users,get,UsersResponse,Users,users,users,list_users,select,,List all users +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,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/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/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/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/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,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/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/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/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 +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/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/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,,List pipelines +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/obs_pipelines/pipelines/validate,ValidatePipeline,validate_pipeline,post,ValidationResponse,Observability Pipelines,observability pipelines,observability_pipelines,validate_pipeline,exec,,Validate an observability 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/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/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/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,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 +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 +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 +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/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/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,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/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/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/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,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/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/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/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/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/csm/onboarding/agents,ListAllCSMAgents,list_all_csmagents,get,CsmAgentsResponse,CSM Agents,csm agents,csm_agents,list_all_csmagents,select,,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,,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,CreateCustomFramework,create_custom_framework,post,CreateCustomFrameworkResponse,Security Monitoring,security monitoring,custom_frameworks,create_custom_framework,insert,,Create a custom framework +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/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/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/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/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/security_monitoring/configuration/security_filters/{security_filter_id},GetSecurityFilter,get_security_filter,get,SecurityFilterResponse,Security Monitoring,security monitoring,filters,get_security_filter,select,,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,,Get all security filters +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/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,,List findings +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/{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/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/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,,List historical jobs +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/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/{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,,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,,List hist signals +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,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/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/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,,List rules +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/{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/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/{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,,Get a quick list of security signals +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,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/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/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/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/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/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/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 +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,,List assets SBOMs +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/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,ListScanningGroups,list_scanning_groups,get,SensitiveDataScannerGetConfigResponse,Sensitive Data Scanner,sensitive data scanner,scanning_groups,list_scanning_groups,select,,List Scanning Groups +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 +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,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/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/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,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/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/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/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/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,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_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,,List vulnerabilities +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 +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 +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/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 +security.yaml,/api/v2/security/assets,ListVulnerableAssets,list_vulnerable_assets,get,ListVulnerableAssetsResponse,Security Monitoring,security monitoring,vulnerable_assets,list_vulnerable_assets,select,,List vulnerable assets +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,CreateCase,create_case,post,CaseResponse,Case Management,case management,cases,create_case,insert,,Create a case +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/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/downtime/{downtime_id},CancelDowntime,cancel_downtime,delete,,Downtimes,downtimes,downtimes,cancel_downtime,delete,,Cancel a downtime +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/downtime/{downtime_id},GetDowntime,get_downtime,get,DowntimeResponse,Downtimes,downtimes,downtimes,get_downtime,select,,Get a downtime +service_management.yaml,/api/v2/downtime,ListDowntimes,list_downtimes,get,ListDowntimesResponse,Downtimes,downtimes,downtimes,list_downtimes,select,,Get all downtimes +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/events,CreateEvent,create_event,post,EventCreateResponsePayload,Events,events,events,create_event,insert,,Post an event +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,,Get a list of events +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}/attachments,ListIncidentAttachments,list_incident_attachments,get,IncidentAttachmentsResponse,Incidents,incidents,incident_attachments,list_incident_attachments,select,,Get a list of attachments +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,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/{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/{incident_id}/relationships/integrations/{integration_metadata_id},GetIncidentIntegration,get_incident_integration,get,IncidentIntegrationMetadataResponse,Incidents,incidents,incident_integrations,get_incident_integration,select,,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,,Get a list of an incident's integration metadata +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-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-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-rules/{id},GetIncidentNotificationRule,get_incident_notification_rule,get,IncidentNotificationRule,Incidents,incidents,incident_notification_rules,get_incident_notification_rule,select,,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,,List incident notification rules +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/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/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/config/notification-templates/{id},GetIncidentNotificationTemplate,get_incident_notification_template,get,IncidentNotificationTemplate,Incidents,incidents,incident_notification_templates,get_incident_notification_template,select,,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,,List incident notification templates +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,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/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/services/{service_id},GetIncidentService,get_incident_service,get,IncidentServiceResponse,Incident Services,incident services,incident_services,get_incident_service,select,,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,,Get a list of all incident services +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,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/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/teams/{team_id},GetIncidentTeam,get_incident_team,get,IncidentTeamResponse,Incident Teams,incident teams,incident_teams,get_incident_team,select,,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,,Get a list of all incident teams +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,CreateIncidentTodo,create_incident_todo,post,IncidentTodoResponse,Incidents,incidents,incident_todos,create_incident_todo,insert,,Create an incident todo +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/{incident_id}/relationships/todos/{todo_id},GetIncidentTodo,get_incident_todo,get,IncidentTodoResponse,Incidents,incidents,incident_todos,get_incident_todo,select,,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,,Get a list of an incident's todos +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,CreateIncidentType,create_incident_type,post,IncidentTypeResponse,Incidents,incidents,incident_types,create_incident_type,insert,,Create an incident type +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/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/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,CreateIncident,create_incident,post,IncidentResponse,Incidents,incidents,incidents,create_incident,insert,,Create an incident +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/incidents/{incident_id},GetIncident,get_incident,get,IncidentResponse,Incidents,incidents,incidents,get_incident,select,,Get the details of an incident +service_management.yaml,/api/v2/incidents,ListIncidents,list_incidents,get,IncidentsResponse,Incidents,incidents,incidents,list_incidents,select,,Get a list of incidents +service_management.yaml,/api/v2/incidents/search,SearchIncidents,search_incidents,get,IncidentSearchResponse,Incidents,incidents,incidents,search_incidents,select,,Search for incidents +service_management.yaml,/api/v2/incidents/{incident_id},UpdateIncident,update_incident,patch,IncidentResponse,Incidents,incidents,incidents,update_incident,update,,Update an existing incident +service_management.yaml,/api/v2/error-tracking/issues/{issue_id},GetIssue,get_issue,get,IssueResponse,Error Tracking,error tracking,issues,get_issue,select,,Get the details of an error tracking issue +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/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/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/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/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,,Get On-Call escalation policy +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/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,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/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/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/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/on-call/schedules/{schedule_id},GetOnCallSchedule,get_on_call_schedule,get,Schedule,On-Call,on_call,on_call_schedule,get_on_call_schedule,select,,Get On-Call schedule +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,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,,Get On-Call team routing rules +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 +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,,Get the schedule on-call user +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/cases/projects/{project_id},DeleteProject,delete_project,delete,,Case Management,case management,projects,delete_project,delete,,Remove a project +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,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/services/definitions/{service_name},DeleteServiceDefinition,delete_service_definition,delete,,Service Definition,service definition,service_definitions,delete_service_definition,delete,,Delete a single service definition +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,CreateSLOReportJob,create_sloreport_job,post,SLOReportPostResponse,Service Level Objectives,service level objectives,slo_report_job,create_sloreport_job,insert,,Create a new SLO report +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 +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,,Get team on-call users +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/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/pipelines/events,ListCIAppPipelineEvents,list_ciapp_pipeline_events,get,CIAppPipelineEventsResponse,CI Visibility Pipelines,ci visibility pipelines,ci_app_pipeline_events,list_ciapp_pipeline_events,select,,Get a list of 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/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,,Get a list of tests events +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/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,,Get a list of deployment events +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/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,,Get a list of failure events +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/{instance_id}/cancel,CancelWorkflowInstance,cancel_workflow_instance,put,WorklflowCancelInstanceResponse,Workflow Automation,workflow automation,workflow_instances,cancel_workflow_instance,exec,,Cancel a workflow instance +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/{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,,List workflow instances +software_delivery.yaml,/api/v2/workflows,CreateWorkflow,create_workflow,post,CreateWorkflowResponse,Workflow Automation,workflow automation,workflows,create_workflow,insert,,Create a Workflow +software_delivery.yaml,/api/v2/workflows/{workflow_id},DeleteWorkflow,delete_workflow,delete,,Workflow Automation,workflow automation,workflows,delete_workflow,delete,,Delete an existing Workflow +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 +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 diff --git a/provider-dev/downloaded/.gitkeep b/provider-dev/downloaded/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/provider-dev/downloaded/openapi.yaml b/provider-dev/downloaded/openapi.yaml new file mode 100644 index 0000000..5c56fcb --- /dev/null +++ b/provider-dev/downloaded/openapi.yaml @@ -0,0 +1,73326 @@ +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/openapi/.gitkeep b/provider-dev/openapi/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/provider.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/provider.yaml new file mode 100644 index 0000000..c5b28cc --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/provider.yaml @@ -0,0 +1,159 @@ +id: datadog +name: datadog +version: v00.00.00000 +providerServices: + actions: + id: actions:v00.00.00000 + name: actions + preferred: true + service: + $ref: datadog/v00.00.00000/services/actions.yaml + title: actions API + version: v00.00.00000 + description: datadog actions API + apm: + id: apm:v00.00.00000 + name: apm + preferred: true + service: + $ref: datadog/v00.00.00000/services/apm.yaml + title: apm API + version: v00.00.00000 + description: datadog apm API + catalog: + id: catalog:v00.00.00000 + name: catalog + preferred: true + service: + $ref: datadog/v00.00.00000/services/catalog.yaml + title: catalog API + version: v00.00.00000 + description: datadog catalog API + cloud_costs: + id: cloud_costs:v00.00.00000 + name: cloud_costs + preferred: true + service: + $ref: datadog/v00.00.00000/services/cloud_costs.yaml + title: cloud_costs API + version: v00.00.00000 + description: datadog cloud_costs API + dashboards: + id: dashboards:v00.00.00000 + name: dashboards + preferred: true + service: + $ref: datadog/v00.00.00000/services/dashboards.yaml + title: dashboards API + version: v00.00.00000 + description: datadog dashboards API + digital_experience: + id: digital_experience:v00.00.00000 + name: digital_experience + preferred: true + service: + $ref: datadog/v00.00.00000/services/digital_experience.yaml + title: digital_experience API + version: v00.00.00000 + description: datadog digital_experience API + infrastructure: + id: infrastructure:v00.00.00000 + name: infrastructure + preferred: true + service: + $ref: datadog/v00.00.00000/services/infrastructure.yaml + title: infrastructure API + version: v00.00.00000 + description: datadog infrastructure API + integrations: + id: integrations:v00.00.00000 + name: integrations + preferred: true + service: + $ref: datadog/v00.00.00000/services/integrations.yaml + title: integrations API + version: v00.00.00000 + description: datadog integrations API + logs: + id: logs:v00.00.00000 + name: logs + preferred: true + service: + $ref: datadog/v00.00.00000/services/logs.yaml + title: logs API + version: v00.00.00000 + description: datadog logs API + metrics: + id: metrics:v00.00.00000 + name: metrics + preferred: true + service: + $ref: datadog/v00.00.00000/services/metrics.yaml + title: metrics API + version: v00.00.00000 + description: datadog metrics API + monitoring: + id: monitoring:v00.00.00000 + name: monitoring + preferred: true + service: + $ref: datadog/v00.00.00000/services/monitoring.yaml + title: monitoring API + version: v00.00.00000 + description: datadog monitoring API + organization: + id: organization:v00.00.00000 + name: organization + preferred: true + service: + $ref: datadog/v00.00.00000/services/organization.yaml + title: organization API + version: v00.00.00000 + description: datadog organization API + remote_config: + id: remote_config:v00.00.00000 + name: remote_config + preferred: true + service: + $ref: datadog/v00.00.00000/services/remote_config.yaml + title: remote_config API + version: v00.00.00000 + description: datadog remote_config API + security: + id: security:v00.00.00000 + name: security + preferred: true + service: + $ref: datadog/v00.00.00000/services/security.yaml + title: security API + version: v00.00.00000 + description: datadog security API + service_management: + id: service_management:v00.00.00000 + name: service_management + preferred: true + service: + $ref: datadog/v00.00.00000/services/service_management.yaml + title: service_management API + version: v00.00.00000 + description: datadog service_management API + software_delivery: + id: software_delivery:v00.00.00000 + name: software_delivery + preferred: true + service: + $ref: datadog/v00.00.00000/services/software_delivery.yaml + title: software_delivery API + version: v00.00.00000 + description: datadog software_delivery API +config: + 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 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 new file mode 100644 index 0000000..e0d4ce1 --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/actions.yaml @@ -0,0 +1,3810 @@ +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 + x-stackQL-resources: + datastores: + id: datadog.actions.datastores + name: datastores + title: Datastores + methods: + list_datastores: + operation: + $ref: '#/paths/~1api~1v2~1actions-datastores/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_datastore: + operation: + $ref: '#/paths/~1api~1v2~1actions-datastores/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_datastore: + operation: + $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + get_datastore: + operation: + $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_datastore: + operation: + $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/datastores/methods/get_datastore' + - $ref: >- + #/components/x-stackQL-resources/datastores/methods/list_datastores + insert: + - $ref: >- + #/components/x-stackQL-resources/datastores/methods/create_datastore + update: + - $ref: >- + #/components/x-stackQL-resources/datastores/methods/update_datastore + delete: + - $ref: >- + #/components/x-stackQL-resources/datastores/methods/delete_datastore + replace: [] + datastore_items: + id: datadog.actions.datastore_items + name: datastore_items + title: Datastore Items + methods: + delete_datastore_item: + operation: + $ref: >- + #/paths/~1api~1v2~1actions-datastores~1{datastore_id}~1items/delete + response: + mediaType: application/json + openAPIDocKey: '200' + list_datastore_items: + operation: + $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}~1items/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_datastore_item: + operation: + $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}~1items/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + bulk_write_datastore_items: + operation: + $ref: >- + #/paths/~1api~1v2~1actions-datastores~1{datastore_id}~1items~1bulk/post + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/datastore_items/methods/list_datastore_items + insert: + - $ref: >- + #/components/x-stackQL-resources/datastore_items/methods/bulk_write_datastore_items + update: + - $ref: >- + #/components/x-stackQL-resources/datastore_items/methods/update_datastore_item + delete: + - $ref: >- + #/components/x-stackQL-resources/datastore_items/methods/delete_datastore_item + replace: [] + app_key_registrations: + id: datadog.actions.app_key_registrations + name: app_key_registrations + title: App Key Registrations + methods: + list_app_key_registrations: + operation: + $ref: '#/paths/~1api~1v2~1actions~1app_key_registrations/get' + response: + mediaType: application/json + openAPIDocKey: '200' + unregister_app_key: + operation: + $ref: >- + #/paths/~1api~1v2~1actions~1app_key_registrations~1{app_key_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_app_key_registration: + operation: + $ref: >- + #/paths/~1api~1v2~1actions~1app_key_registrations~1{app_key_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + register_app_key: + operation: + $ref: >- + #/paths/~1api~1v2~1actions~1app_key_registrations~1{app_key_id}/put + response: + mediaType: application/json + openAPIDocKey: '201' + 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 + insert: [] + update: [] + delete: [] + replace: [] + connections: + id: datadog.actions.connections + name: connections + title: Connections + methods: + create_action_connection: + operation: + $ref: '#/paths/~1api~1v2~1actions~1connections/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_action_connection: + operation: + $ref: '#/paths/~1api~1v2~1actions~1connections~1{connection_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_action_connection: + operation: + $ref: '#/paths/~1api~1v2~1actions~1connections~1{connection_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_action_connection: + operation: + $ref: '#/paths/~1api~1v2~1actions~1connections~1{connection_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/connections/methods/get_action_connection + insert: + - $ref: >- + #/components/x-stackQL-resources/connections/methods/create_action_connection + update: + - $ref: >- + #/components/x-stackQL-resources/connections/methods/update_action_connection + delete: + - $ref: >- + #/components/x-stackQL-resources/connections/methods/delete_action_connection + replace: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..8a1e330 --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/apm.yaml @@ -0,0 +1,2059 @@ +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 + x-stackQL-resources: + spans_metrics: + id: datadog.apm.spans_metrics + name: spans_metrics + title: Spans Metrics + methods: + list_spans_metrics: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1metrics/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_spans_metric: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1metrics/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_spans_metric: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1metrics~1{metric_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_spans_metric: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1metrics~1{metric_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_spans_metric: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1metrics~1{metric_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $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 + update: + - $ref: >- + #/components/x-stackQL-resources/spans_metrics/methods/update_spans_metric + delete: + - $ref: >- + #/components/x-stackQL-resources/spans_metrics/methods/delete_spans_metric + replace: [] + retention_filters: + id: datadog.apm.retention_filters + name: retention_filters + title: Retention Filters + methods: + list_apm_retention_filters: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1retention-filters/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_apm_retention_filter: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1retention-filters/post' + response: + mediaType: application/json + openAPIDocKey: '200' + reorder_apm_retention_filters: + operation: + $ref: >- + #/paths/~1api~1v2~1apm~1config~1retention-filters-execution-order/put + response: + mediaType: application/json + openAPIDocKey: '200' + delete_apm_retention_filter: + operation: + $ref: >- + #/paths/~1api~1v2~1apm~1config~1retention-filters~1{filter_id}/delete + response: + mediaType: application/json + openAPIDocKey: '200' + get_apm_retention_filter: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1retention-filters~1{filter_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_apm_retention_filter: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1retention-filters~1{filter_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + scorecard_outcomes: + id: datadog.apm.scorecard_outcomes + name: scorecard_outcomes + title: Scorecard Outcomes + methods: + list_scorecard_outcomes: + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1outcomes/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_scorecard_outcomes_async: + 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' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/scorecard_outcomes/methods/list_scorecard_outcomes + insert: + - $ref: >- + #/components/x-stackQL-resources/scorecard_outcomes/methods/create_scorecard_outcomes_batch + update: [] + delete: [] + replace: [] + scorecard_rules: + id: datadog.apm.scorecard_rules + name: scorecard_rules + title: Scorecard Rules + methods: + list_scorecard_rules: + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_scorecard_rule: + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_scorecard_rule: + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1rules~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + update_scorecard_rule: + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1rules~1{rule_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/scorecard_rules/methods/list_scorecard_rules + insert: + - $ref: >- + #/components/x-stackQL-resources/scorecard_rules/methods/create_scorecard_rule + update: [] + delete: + - $ref: >- + #/components/x-stackQL-resources/scorecard_rules/methods/delete_scorecard_rule + replace: + - $ref: >- + #/components/x-stackQL-resources/scorecard_rules/methods/update_scorecard_rule +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..401e076 --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/catalog.yaml @@ -0,0 +1,2359 @@ +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' + 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' + 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 + title: Catalog Entities + methods: + list_catalog_entity: + operation: + $ref: '#/paths/~1api~1v2~1catalog~1entity/get' + response: + mediaType: application/json + openAPIDocKey: '200' + upsert_catalog_entity: + operation: + $ref: '#/paths/~1api~1v2~1catalog~1entity/post' + response: + mediaType: application/json + openAPIDocKey: '202' + delete_catalog_entity: + operation: + $ref: '#/paths/~1api~1v2~1catalog~1entity~1{entity_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/catalog_entities/methods/list_catalog_entity + insert: + - $ref: >- + #/components/x-stackQL-resources/catalog_entities/methods/upsert_catalog_entity + update: [] + delete: + - $ref: >- + #/components/x-stackQL-resources/catalog_entities/methods/delete_catalog_entity + replace: [] + catalog_kinds: + id: datadog.catalog.catalog_kinds + name: catalog_kinds + title: Catalog Kinds + methods: + list_catalog_kind: + operation: + $ref: '#/paths/~1api~1v2~1catalog~1kind/get' + response: + mediaType: application/json + openAPIDocKey: '200' + upsert_catalog_kind: + operation: + $ref: '#/paths/~1api~1v2~1catalog~1kind/post' + response: + mediaType: application/json + openAPIDocKey: '202' + delete_catalog_kind: + operation: + $ref: '#/paths/~1api~1v2~1catalog~1kind~1{kind_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/catalog_kinds/methods/list_catalog_kind + insert: + - $ref: >- + #/components/x-stackQL-resources/catalog_kinds/methods/upsert_catalog_kind + update: [] + delete: + - $ref: >- + #/components/x-stackQL-resources/catalog_kinds/methods/delete_catalog_kind + replace: [] + catalog_relations: + id: datadog.catalog.catalog_relations + name: catalog_relations + title: Catalog Relations + methods: + list_catalog_relation: + operation: + $ref: '#/paths/~1api~1v2~1catalog~1relation/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/catalog_relations/methods/list_catalog_relation + insert: [] + update: [] + delete: [] + replace: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..58b4d55 --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/cloud_costs.yaml @@ -0,0 +1,2512 @@ +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 + x-stackQL-resources: + aws_configs: + id: datadog.cloud_costs.aws_configs + name: aws_configs + title: Aws Configs + methods: + list_cost_awscurconfigs: + operation: + $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_cost_awscurconfig: + operation: + $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_cost_awscurconfig: + operation: + $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config~1{cloud_account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + update_cost_awscurconfig: + operation: + $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config~1{cloud_account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + 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 + create_cost_azure_ucconfigs: + operation: + $ref: '#/paths/~1api~1v2~1cost~1azure_uc_config/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_cost_azure_ucconfig: + operation: + $ref: >- + #/paths/~1api~1v2~1cost~1azure_uc_config~1{cloud_account_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + update_cost_azure_ucconfigs: + operation: + $ref: '#/paths/~1api~1v2~1cost~1azure_uc_config~1{cloud_account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + budgets: + id: datadog.cloud_costs.budgets + name: budgets + title: Budgets + methods: + upsert_budget: + operation: + $ref: '#/paths/~1api~1v2~1cost~1budget/put' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_budget: + operation: + $ref: '#/paths/~1api~1v2~1cost~1budget~1{budget_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_budget: + operation: + $ref: '#/paths/~1api~1v2~1cost~1budget~1{budget_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + list_budgets: + operation: + $ref: '#/paths/~1api~1v2~1cost~1budgets/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + 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' + 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~1custom_costs/get' + response: + mediaType: application/json + openAPIDocKey: '200' + upload_custom_costs_file: + operation: + $ref: '#/paths/~1api~1v2~1cost~1custom_costs/put' + response: + mediaType: application/json + openAPIDocKey: '202' + delete_custom_costs_file: + operation: + $ref: '#/paths/~1api~1v2~1cost~1custom_costs~1{file_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_custom_costs_file: + operation: + $ref: '#/paths/~1api~1v2~1cost~1custom_costs~1{file_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + insert: [] + update: [] + delete: + - $ref: >- + #/components/x-stackQL-resources/costs_files/methods/delete_custom_costs_file + replace: [] + gcp_configs: + id: datadog.cloud_costs.gcp_configs + name: gcp_configs + title: Gcp Configs + methods: + list_cost_gcpusage_cost_configs: + operation: + $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_cost_gcpusage_cost_config: + operation: + $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_cost_gcpusage_cost_config: + operation: + $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config~1{cloud_account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + update_cost_gcpusage_cost_config: + operation: + $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config~1{cloud_account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + replace: [] + active_billing_dimensions: + id: datadog.cloud_costs.active_billing_dimensions + name: active_billing_dimensions + title: Active Billing Dimensions + methods: + get_active_billing_dimensions: + operation: + $ref: '#/paths/~1api~1v2~1cost_by_tag~1active_billing_dimensions/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/active_billing_dimensions/methods/get_active_billing_dimensions + insert: [] + update: [] + delete: [] + replace: [] + monthly_cost_attribution: + id: datadog.cloud_costs.monthly_cost_attribution + name: monthly_cost_attribution + title: Monthly Cost Attribution + methods: + get_monthly_cost_attribution: + operation: + $ref: '#/paths/~1api~1v2~1cost_by_tag~1monthly_cost_attribution/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/monthly_cost_attribution/methods/get_monthly_cost_attribution + insert: [] + update: [] + delete: [] + replace: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..edd0641 --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/dashboards.yaml @@ -0,0 +1,1304 @@ +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 + x-stackQL-resources: + dashboard_list_items: + id: datadog.dashboards.dashboard_list_items + name: dashboard_list_items + title: Dashboard List Items + methods: + delete_dashboard_list_items: + operation: + $ref: >- + #/paths/~1api~1v2~1dashboard~1lists~1manual~1{dashboard_list_id}~1dashboards/delete + response: + mediaType: application/json + openAPIDocKey: '200' + get_dashboard_list_items: + operation: + $ref: >- + #/paths/~1api~1v2~1dashboard~1lists~1manual~1{dashboard_list_id}~1dashboards/get + response: + mediaType: application/json + openAPIDocKey: '200' + create_dashboard_list_items: + operation: + $ref: >- + #/paths/~1api~1v2~1dashboard~1lists~1manual~1{dashboard_list_id}~1dashboards/post + response: + mediaType: application/json + openAPIDocKey: '200' + update_dashboard_list_items: + operation: + $ref: >- + #/paths/~1api~1v2~1dashboard~1lists~1manual~1{dashboard_list_id}~1dashboards/put + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + powerpacks: + id: datadog.dashboards.powerpacks + name: powerpacks + title: Powerpacks + methods: + list_powerpacks: + operation: + $ref: '#/paths/~1api~1v2~1powerpacks/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_powerpack: + operation: + $ref: '#/paths/~1api~1v2~1powerpacks/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_powerpack: + operation: + $ref: '#/paths/~1api~1v2~1powerpacks~1{powerpack_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_powerpack: + operation: + $ref: '#/paths/~1api~1v2~1powerpacks~1{powerpack_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_powerpack: + operation: + $ref: '#/paths/~1api~1v2~1powerpacks~1{powerpack_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/powerpacks/methods/get_powerpack' + - $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: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..8b4afcd --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/digital_experience.yaml @@ -0,0 +1,2253 @@ +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 + x-stackQL-resources: + rum_events: + id: datadog.digital_experience.rum_events + name: rum_events + title: Rum Events + methods: + aggregate_rumevents: + operation: + $ref: '#/paths/~1api~1v2~1rum~1analytics~1aggregate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + list_rumevents: + operation: + $ref: '#/paths/~1api~1v2~1rum~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + search_rumevents: + operation: + $ref: '#/paths/~1api~1v2~1rum~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + create_rumapplication: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_rumapplication: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_rumapplication: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_rumapplication: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: + operation: + $ref: >- + #/paths/~1api~1v2~1rum~1applications~1{app_id}~1relationships~1retention_filters/patch + response: + mediaType: application/json + openAPIDocKey: '200' + list_retention_filters: + operation: + $ref: >- + #/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_retention_filter: + operation: + $ref: >- + #/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters/post + response: + mediaType: application/json + openAPIDocKey: '201' + 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' + 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 + update_retention_filter: + operation: + $ref: >- + #/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1{rf_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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_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 + create_rum_metric: + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1metrics/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_rum_metric: + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1metrics~1{metric_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_rum_metric: + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1metrics~1{metric_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_rum_metric: + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1metrics~1{metric_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..a2a96ff --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/infrastructure.yaml @@ -0,0 +1,4125 @@ +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 + x-stackQL-resources: + apps: + id: datadog.infrastructure.apps + name: apps + title: Apps + methods: + delete_apps: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + list_apps: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_app: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_app: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + get_app: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_app: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + unpublish_app: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}~1deployment/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + publish_app: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}~1deployment/post' + response: + mediaType: application/json + openAPIDocKey: '201' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/apps/methods/get_app' + - $ref: '#/components/x-stackQL-resources/apps/methods/list_apps' + insert: + - $ref: '#/components/x-stackQL-resources/apps/methods/create_app' + update: + - $ref: '#/components/x-stackQL-resources/apps/methods/update_app' + delete: + - $ref: '#/components/x-stackQL-resources/apps/methods/delete_app' + - $ref: '#/components/x-stackQL-resources/apps/methods/delete_apps' + replace: [] + container_images: + id: datadog.infrastructure.container_images + name: container_images + title: Container Images + methods: + list_container_images: + operation: + $ref: '#/paths/~1api~1v2~1container_images/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/container_images/methods/list_container_images + insert: [] + update: [] + delete: [] + replace: [] + containers: + id: datadog.infrastructure.containers + name: containers + title: Containers + methods: + list_containers: + operation: + $ref: '#/paths/~1api~1v2~1containers/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/containers/methods/list_containers + insert: [] + update: [] + delete: [] + replace: [] + devices: + id: datadog.infrastructure.devices + name: devices + title: Devices + methods: + list_devices: + operation: + $ref: '#/paths/~1api~1v2~1ndm~1devices/get' + response: + mediaType: application/json + openAPIDocKey: '200' + get_device: + operation: + $ref: '#/paths/~1api~1v2~1ndm~1devices~1{device_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/devices/methods/get_device' + - $ref: '#/components/x-stackQL-resources/devices/methods/list_devices' + insert: [] + update: [] + delete: [] + replace: [] + device_interfaces: + id: datadog.infrastructure.device_interfaces + name: device_interfaces + title: Device Interfaces + methods: + get_interfaces: + operation: + $ref: '#/paths/~1api~1v2~1ndm~1interfaces/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/device_interfaces/methods/get_interfaces + insert: [] + update: [] + delete: [] + replace: [] + device_user_tags: + id: datadog.infrastructure.device_user_tags + name: device_user_tags + title: Device User Tags + methods: + list_device_user_tags: + operation: + $ref: '#/paths/~1api~1v2~1ndm~1tags~1devices~1{device_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_device_user_tags: + operation: + $ref: '#/paths/~1api~1v2~1ndm~1tags~1devices~1{device_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + aggregated_connections: + id: datadog.infrastructure.aggregated_connections + name: aggregated_connections + title: Aggregated Connections + methods: + get_aggregated_connections: + operation: + $ref: '#/paths/~1api~1v2~1network~1connections~1aggregate/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/aggregated_connections/methods/get_aggregated_connections + insert: [] + update: [] + delete: [] + replace: [] + aggregated_dns: + id: datadog.infrastructure.aggregated_dns + name: aggregated_dns + title: Aggregated Dns + methods: + get_aggregated_dns: + operation: + $ref: '#/paths/~1api~1v2~1network~1dns~1aggregate/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/aggregated_dns/methods/get_aggregated_dns + insert: [] + update: [] + delete: [] + replace: [] + processes: + id: datadog.infrastructure.processes + name: processes + title: Processes + methods: + list_processes: + operation: + $ref: '#/paths/~1api~1v2~1processes/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/processes/methods/list_processes' + insert: [] + update: [] + delete: [] + replace: [] + spa_recommendations: + id: datadog.infrastructure.spa_recommendations + name: spa_recommendations + title: Spa Recommendations + methods: + get_sparecommendations: + operation: + $ref: '#/paths/~1api~1v2~1spa~1recommendations~1{service}~1{shard}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/spa_recommendations/methods/get_sparecommendations + insert: [] + update: [] + delete: [] + replace: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..44e95cf --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/integrations.yaml @@ -0,0 +1,5119 @@ +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 + x-stackQL-resources: + aws_accounts: + id: datadog.integrations.aws_accounts + name: aws_accounts + title: Aws Accounts + methods: + list_awsaccounts: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_awsaccount: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_awsaccount: + operation: + $ref: >- + #/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_awsaccount: + operation: + $ref: >- + #/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_awsaccount: + operation: + $ref: >- + #/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + create_new_awsexternal_id: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1generate_new_external_id/post' + response: + mediaType: application/json + openAPIDocKey: '200' + 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_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 + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/aws_namespaces/methods/list_awsnamespaces + insert: [] + update: [] + delete: [] + 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 + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/aws_iam_permissions/methods/get_awsintegration_iampermissions + 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 + 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 + create_gcpstsaccount: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_gcpstsaccount: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts~1{account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + update_gcpstsaccount: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts~1{account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '201' + 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 + make_gcpstsdelegate: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1sts_delegate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/gcp_sts_delegate/methods/get_gcpstsdelegate + insert: [] + update: [] + delete: [] + 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 + 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 + create_tenant_based_handle: + operation: + $ref: >- + #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles/post + response: + mediaType: application/json + openAPIDocKey: '201' + 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' + get_tenant_based_handle: + operation: + $ref: >- + #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles~1{handle_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_tenant_based_handle: + operation: + $ref: >- + #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles~1{handle_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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_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~1ms-teams~1configuration~1workflows-webhook-handles/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_workflows_webhook_handle: + operation: + $ref: >- + #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles/post + response: + mediaType: application/json + openAPIDocKey: '201' + 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' + get_workflows_webhook_handle: + operation: + $ref: >- + #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles~1{handle_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_workflows_webhook_handle: + operation: + $ref: >- + #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles~1{handle_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + insert: + - $ref: >- + #/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/create_workflows_webhook_handle + update: + - $ref: >- + #/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/update_workflows_webhook_handle + delete: + - $ref: >- + #/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/delete_workflows_webhook_handle + replace: [] + opsgenie_services: + id: datadog.integrations.opsgenie_services + name: opsgenie_services + title: Opsgenie Services + methods: + list_opsgenie_services: + operation: + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1services/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_opsgenie_service: + operation: + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1services/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_opsgenie_service: + operation: + $ref: >- + #/paths/~1api~1v2~1integration~1opsgenie~1services~1{integration_service_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_opsgenie_service: + operation: + $ref: >- + #/paths/~1api~1v2~1integration~1opsgenie~1services~1{integration_service_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_opsgenie_service: + operation: + $ref: >- + #/paths/~1api~1v2~1integration~1opsgenie~1services~1{integration_service_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + cloudflare_accounts: + id: datadog.integrations.cloudflare_accounts + name: cloudflare_accounts + title: Cloudflare Accounts + methods: + list_cloudflare_accounts: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1cloudflare~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_cloudflare_account: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1cloudflare~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_cloudflare_account: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1cloudflare~1accounts~1{account_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_cloudflare_account: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1cloudflare~1accounts~1{account_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_cloudflare_account: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1cloudflare~1accounts~1{account_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $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 + update: + - $ref: >- + #/components/x-stackQL-resources/cloudflare_accounts/methods/update_cloudflare_account + delete: + - $ref: >- + #/components/x-stackQL-resources/cloudflare_accounts/methods/delete_cloudflare_account + replace: [] + confluent_accounts: + id: datadog.integrations.confluent_accounts + name: confluent_accounts + title: Confluent Accounts + methods: + list_confluent_account: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_confluent_account: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_confluent_account: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_confluent_account: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_confluent_account: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $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 + update: + - $ref: >- + #/components/x-stackQL-resources/confluent_accounts/methods/update_confluent_account + delete: + - $ref: >- + #/components/x-stackQL-resources/confluent_accounts/methods/delete_confluent_account + replace: [] + confluent_resources: + id: datadog.integrations.confluent_resources + name: confluent_resources + title: Confluent Resources + methods: + list_confluent_resource: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_confluent_resource: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources/post + response: + mediaType: application/json + openAPIDocKey: '201' + delete_confluent_resource: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources~1{resource_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_confluent_resource: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources~1{resource_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_confluent_resource: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources~1{resource_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $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 + update: + - $ref: >- + #/components/x-stackQL-resources/confluent_resources/methods/update_confluent_resource + delete: + - $ref: >- + #/components/x-stackQL-resources/confluent_resources/methods/delete_confluent_resource + replace: [] + fastly_accounts: + id: datadog.integrations.fastly_accounts + name: fastly_accounts + title: Fastly Accounts + methods: + list_fastly_accounts: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_fastly_account: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_fastly_account: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_fastly_account: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_fastly_account: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $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 + update: + - $ref: >- + #/components/x-stackQL-resources/fastly_accounts/methods/update_fastly_account + delete: + - $ref: >- + #/components/x-stackQL-resources/fastly_accounts/methods/delete_fastly_account + replace: [] + fastly_services: + id: datadog.integrations.fastly_services + name: fastly_services + title: Fastly Services + methods: + list_fastly_services: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_fastly_service: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services/post + response: + mediaType: application/json + openAPIDocKey: '201' + delete_fastly_service: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services~1{service_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_fastly_service: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services~1{service_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_fastly_service: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services~1{service_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $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 + update: + - $ref: >- + #/components/x-stackQL-resources/fastly_services/methods/update_fastly_service + delete: + - $ref: >- + #/components/x-stackQL-resources/fastly_services/methods/delete_fastly_service + replace: [] + okta_accounts: + id: datadog.integrations.okta_accounts + name: okta_accounts + title: Okta Accounts + methods: + list_okta_accounts: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1okta~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_okta_account: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1okta~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_okta_account: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1okta~1accounts~1{account_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_okta_account: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1okta~1accounts~1{account_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_okta_account: + operation: + $ref: >- + #/paths/~1api~1v2~1integrations~1okta~1accounts~1{account_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..cc8d13e --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/logs.yaml @@ -0,0 +1,3687 @@ +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 + x-stackQL-resources: + logs: + id: datadog.logs.logs + name: logs + title: Logs + methods: + submit_log: + operation: + $ref: '#/paths/~1api~1v2~1logs/post' + response: + mediaType: application/json + openAPIDocKey: '202' + aggregate_logs: + operation: + $ref: '#/paths/~1api~1v2~1logs~1analytics~1aggregate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + list_logs_get: + operation: + $ref: '#/paths/~1api~1v2~1logs~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + list_logs: + operation: + $ref: '#/paths/~1api~1v2~1logs~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + 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' + update: [] + delete: [] + replace: [] + archive_order: + id: datadog.logs.archive_order + name: archive_order + title: Archive Order + methods: + get_logs_archive_order: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archive-order/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_logs_archive_order: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archive-order/put' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $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 + archives: + id: datadog.logs.archives + name: archives + title: Archives + methods: + list_logs_archives: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archives/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_logs_archive: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archives/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_logs_archive: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_logs_archive: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_logs_archive: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/archives/methods/get_logs_archive' + - $ref: >- + #/components/x-stackQL-resources/archives/methods/list_logs_archives + insert: + - $ref: >- + #/components/x-stackQL-resources/archives/methods/create_logs_archive + update: [] + delete: + - $ref: >- + #/components/x-stackQL-resources/archives/methods/delete_logs_archive + replace: + - $ref: >- + #/components/x-stackQL-resources/archives/methods/update_logs_archive + archive_read_roles: + id: datadog.logs.archive_read_roles + name: archive_read_roles + title: Archive Read Roles + methods: + remove_role_from_archive: + operation: + $ref: >- + #/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}~1readers/delete + response: + mediaType: application/json + openAPIDocKey: '204' + list_archive_read_roles: + operation: + $ref: >- + #/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}~1readers/get + response: + mediaType: application/json + openAPIDocKey: '200' + add_read_role_to_archive: + operation: + $ref: >- + #/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}~1readers/post + response: + mediaType: application/json + openAPIDocKey: '204' + sqlVerbs: + select: + - $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 + update: [] + delete: + - $ref: >- + #/components/x-stackQL-resources/archive_read_roles/methods/remove_role_from_archive + replace: [] + custom_destinations: + id: datadog.logs.custom_destinations + name: custom_destinations + title: Custom Destinations + methods: + list_logs_custom_destinations: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1custom-destinations/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_logs_custom_destination: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1custom-destinations/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_logs_custom_destination: + operation: + $ref: >- + #/paths/~1api~1v2~1logs~1config~1custom-destinations~1{custom_destination_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_logs_custom_destination: + operation: + $ref: >- + #/paths/~1api~1v2~1logs~1config~1custom-destinations~1{custom_destination_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_logs_custom_destination: + operation: + $ref: >- + #/paths/~1api~1v2~1logs~1config~1custom-destinations~1{custom_destination_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + insert: + - $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 + delete: + - $ref: >- + #/components/x-stackQL-resources/custom_destinations/methods/delete_logs_custom_destination + replace: [] + metrics: + id: datadog.logs.metrics + name: metrics + title: Metrics + methods: + list_logs_metrics: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1metrics/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_logs_metric: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1metrics/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_logs_metric: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1metrics~1{metric_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_logs_metric: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1metrics~1{metric_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_logs_metric: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1metrics~1{metric_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + update: + - $ref: >- + #/components/x-stackQL-resources/metrics/methods/update_logs_metric + delete: + - $ref: >- + #/components/x-stackQL-resources/metrics/methods/delete_logs_metric + replace: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..47250ac --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/metrics.yaml @@ -0,0 +1,4681 @@ +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 + x-stackQL-resources: + datasets: + id: datadog.metrics.datasets + name: datasets + title: Datasets + methods: + get_all_datasets: + operation: + $ref: '#/paths/~1api~1v2~1datasets/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_dataset: + operation: + $ref: '#/paths/~1api~1v2~1datasets/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_dataset: + operation: + $ref: '#/paths/~1api~1v2~1datasets~1{dataset_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_dataset: + operation: + $ref: '#/paths/~1api~1v2~1datasets~1{dataset_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_dataset: + operation: + $ref: '#/paths/~1api~1v2~1datasets~1{dataset_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/datasets/methods/get_dataset' + - $ref: '#/components/x-stackQL-resources/datasets/methods/get_all_datasets' + insert: + - $ref: '#/components/x-stackQL-resources/datasets/methods/create_dataset' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/datasets/methods/delete_dataset' + replace: + - $ref: '#/components/x-stackQL-resources/datasets/methods/update_dataset' + tag_configurations: + id: datadog.metrics.tag_configurations + name: tag_configurations + title: Tag Configurations + methods: + list_tag_configurations: + operation: + $ref: '#/paths/~1api~1v2~1metrics/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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' + delete_tag_configuration: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tags/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + list_tag_configuration_by_name: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tags/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_tag_configuration: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tags/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + create_tag_configuration: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tags/post' + response: + mediaType: application/json + openAPIDocKey: '201' + 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 + 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 + update: + - $ref: >- + #/components/x-stackQL-resources/tag_configurations/methods/update_tag_configuration + 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 + replace: [] + active_tag_configurations: + id: datadog.metrics.active_tag_configurations + name: active_tag_configurations + title: Active Tag Configurations + methods: + list_active_metric_configurations: + operation: + $ref: >- + #/paths/~1api~1v2~1metrics~1{metric_name}~1active-configurations/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/active_tag_configurations/methods/list_active_metric_configurations + insert: [] + update: [] + delete: [] + replace: [] + tags: + id: datadog.metrics.tags + name: tags + title: Tags + methods: + list_tags_by_metric_name: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1all-tags/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/tags/methods/list_tags_by_metric_name + insert: [] + update: [] + delete: [] + replace: [] + related_assets: + id: datadog.metrics.related_assets + name: related_assets + title: Related Assets + methods: + list_metric_assets: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1assets/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/related_assets/methods/list_metric_assets + insert: [] + update: [] + delete: [] + replace: [] + metrics_output_series: + id: datadog.metrics.metrics_output_series + name: metrics_output_series + title: Metrics Output Series + methods: + estimate_metrics_output_series: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1estimate/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/metrics_output_series/methods/estimate_metrics_output_series + insert: [] + update: [] + delete: [] + replace: [] + tag_cardinality_details: + id: datadog.metrics.tag_cardinality_details + name: tag_cardinality_details + title: Tag Cardinality Details + methods: + get_metric_tag_cardinality_details: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tag-cardinalities/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/tag_cardinality_details/methods/get_metric_tag_cardinality_details + insert: [] + update: [] + delete: [] + replace: [] + volumes: + id: datadog.metrics.volumes + name: volumes + title: Volumes + methods: + list_volumes_by_metric_name: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1volumes/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/volumes/methods/list_volumes_by_metric_name + insert: [] + update: [] + delete: [] + replace: [] + metrics: + id: datadog.metrics.metrics + name: metrics + title: Metrics + methods: + query_scalar_data: + operation: + $ref: '#/paths/~1api~1v2~1query~1scalar/post' + response: + mediaType: application/json + openAPIDocKey: '200' + query_timeseries_data: + operation: + $ref: '#/paths/~1api~1v2~1query~1timeseries/post' + response: + mediaType: application/json + openAPIDocKey: '200' + submit_metrics: + operation: + $ref: '#/paths/~1api~1v2~1series/post' + response: + mediaType: application/json + openAPIDocKey: '202' + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/metrics/methods/submit_metrics' + update: [] + delete: [] + replace: [] + spans: + id: datadog.metrics.spans + name: spans + title: Spans + methods: + aggregate_spans: + operation: + $ref: '#/paths/~1api~1v2~1spans~1analytics~1aggregate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + list_spans_get: + operation: + $ref: '#/paths/~1api~1v2~1spans~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + list_spans: + operation: + $ref: '#/paths/~1api~1v2~1spans~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/spans/methods/list_spans_get' + insert: + - $ref: '#/components/x-stackQL-resources/spans/methods/list_spans' + update: [] + delete: [] + replace: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..74754fa --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/monitoring.yaml @@ -0,0 +1,2089 @@ +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 + x-stackQL-resources: + notification_rules: + id: datadog.monitoring.notification_rules + name: notification_rules + title: Notification Rules + methods: + get_monitor_notification_rules: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1notification_rule/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_monitor_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1notification_rule/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_monitor_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1notification_rule~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_monitor_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1notification_rule~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_monitor_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1notification_rule~1{rule_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + create_monitor_config_policy: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1policy/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_monitor_config_policy: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1policy~1{policy_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_monitor_config_policy: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1policy~1{policy_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_monitor_config_policy: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1policy~1{policy_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + create_monitor_user_template: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template/post' + response: + mediaType: application/json + openAPIDocKey: '200' + validate_monitor_user_template: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template~1validate/post' + response: + mediaType: application/json + openAPIDocKey: '204' + delete_monitor_user_template: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template~1{template_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_monitor_user_template: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template~1{template_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_monitor_user_template: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template~1{template_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + validate_existing_monitor_user_template: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template~1{template_id}~1validate/post' + response: + mediaType: application/json + openAPIDocKey: '204' + 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' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/downtimes/methods/list_monitor_downtimes + 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 + 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 + set_on_demand_concurrency_cap: + operation: + $ref: >- + #/paths/~1api~1v2~1synthetics~1settings~1on_demand_concurrency_cap/post + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..157e479 --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/organization.yaml @@ -0,0 +1,10507 @@ +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 + x-stackQL-resources: + api_keys: + id: datadog.organization.api_keys + name: api_keys + title: Api Keys + methods: + list_apikeys: + operation: + $ref: '#/paths/~1api~1v2~1api_keys/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_apikey: + operation: + $ref: '#/paths/~1api~1v2~1api_keys/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_apikey: + operation: + $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_apikey: + operation: + $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_apikey: + operation: + $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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' + delete_application_key: + operation: + $ref: '#/paths/~1api~1v2~1application_keys~1{app_key_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_application_key: + operation: + $ref: '#/paths/~1api~1v2~1application_keys~1{app_key_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_application_key: + operation: + $ref: '#/paths/~1api~1v2~1application_keys~1{app_key_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + 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' + search_audit_logs: + operation: + $ref: '#/paths/~1api~1v2~1audit~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + 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' + create_auth_nmapping: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_auth_nmapping: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_auth_nmapping: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_auth_nmapping: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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_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' + 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: + operation: + $ref: >- + #/paths/~1api~1v2~1current_user~1application_keys~1{app_key_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + 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' + update_current_user_application_key: + operation: + $ref: >- + #/paths/~1api~1v2~1current_user~1application_keys~1{app_key_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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: + operation: + $ref: '#/paths/~1api~1v2~1deletion~1data~1{product}/post' + response: + mediaType: application/json + openAPIDocKey: '200' + get_data_deletion_requests: + operation: + $ref: '#/paths/~1api~1v2~1deletion~1requests/get' + response: + mediaType: application/json + openAPIDocKey: '200' + cancel_data_deletion_request: + operation: + $ref: '#/paths/~1api~1v2~1deletion~1requests~1{id}~1cancel/put' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + patch_domain_allowlist: + operation: + $ref: '#/paths/~1api~1v2~1domain_allowlist/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + ip_allowlist: + id: datadog.organization.ip_allowlist + name: ip_allowlist + title: Ip Allowlist + methods: + get_ipallowlist: + operation: + $ref: '#/paths/~1api~1v2~1ip_allowlist/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' + 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: [] + configs: + id: datadog.organization.configs + name: configs + title: Configs + methods: + list_org_configs: + operation: + $ref: '#/paths/~1api~1v2~1org_configs/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + get_org_config: + operation: + $ref: '#/paths/~1api~1v2~1org_configs~1{org_config_name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_org_config: + operation: + $ref: '#/paths/~1api~1v2~1org_configs~1{org_config_name}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $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/configs/methods/update_org_config' + delete: [] + replace: [] + connections: + id: datadog.organization.connections + name: connections + title: Connections + methods: + list_org_connections: + operation: + $ref: '#/paths/~1api~1v2~1org_connections/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_org_connections: + operation: + $ref: '#/paths/~1api~1v2~1org_connections/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_org_connections: + operation: + $ref: '#/paths/~1api~1v2~1org_connections~1{connection_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + update_org_connections: + operation: + $ref: '#/paths/~1api~1v2~1org_connections~1{connection_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/connections/methods/list_org_connections + insert: + - $ref: >- + #/components/x-stackQL-resources/connections/methods/create_org_connections + update: + - $ref: >- + #/components/x-stackQL-resources/connections/methods/update_org_connections + delete: + - $ref: >- + #/components/x-stackQL-resources/connections/methods/delete_org_connections + replace: [] + permissions: + id: datadog.organization.permissions + name: permissions + title: Permissions + methods: + list_permissions: + operation: + $ref: '#/paths/~1api~1v2~1permissions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/permissions/methods/list_permissions + insert: [] + update: [] + delete: [] + replace: [] + restriction_policies: + id: datadog.organization.restriction_policies + name: restriction_policies + title: Restriction Policies + methods: + delete_restriction_policy: + operation: + $ref: '#/paths/~1api~1v2~1restriction_policy~1{resource_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_restriction_policy: + operation: + $ref: '#/paths/~1api~1v2~1restriction_policy~1{resource_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_restriction_policy: + operation: + $ref: '#/paths/~1api~1v2~1restriction_policy~1{resource_id}/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $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 + replace: + - $ref: >- + #/components/x-stackQL-resources/restriction_policies/methods/update_restriction_policy + roles: + id: datadog.organization.roles + name: roles + title: Roles + methods: + list_roles: + operation: + $ref: '#/paths/~1api~1v2~1roles/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_role: + operation: + $ref: '#/paths/~1api~1v2~1roles/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_role: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_role: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_role: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + clone_role: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1clone/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/roles/methods/get_role' + - $ref: '#/components/x-stackQL-resources/roles/methods/list_roles' + insert: + - $ref: '#/components/x-stackQL-resources/roles/methods/create_role' + update: + - $ref: '#/components/x-stackQL-resources/roles/methods/update_role' + delete: + - $ref: '#/components/x-stackQL-resources/roles/methods/delete_role' + replace: [] + role_permissions: + id: datadog.organization.role_permissions + name: role_permissions + title: Role Permissions + methods: + remove_permission_from_role: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1permissions/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + list_role_permissions: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1permissions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + add_permission_to_role: + 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' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/role_permissions/methods/list_role_permissions + insert: + - $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 + replace: [] + role_users: + id: datadog.organization.role_users + name: role_users + title: Role Users + methods: + list_role_users: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1users/get' + response: + mediaType: application/json + openAPIDocKey: '200' + add_user_to_role: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1users/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/role_users/methods/list_role_users + insert: + - $ref: >- + #/components/x-stackQL-resources/role_users/methods/add_user_to_role + update: [] + delete: [] + replace: [] + idp_metadata: + id: datadog.organization.idp_metadata + name: idp_metadata + title: Idp Metadata + methods: + upload_id_pmetadata: + operation: + $ref: '#/paths/~1api~1v2~1saml_configurations~1idp_metadata/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + service_accounts: + id: datadog.organization.service_accounts + name: service_accounts + title: Service Accounts + methods: + create_service_account: + operation: + $ref: '#/paths/~1api~1v2~1service_accounts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + sqlVerbs: + select: [] + insert: + - $ref: >- + #/components/x-stackQL-resources/service_accounts/methods/create_service_account + update: [] + delete: [] + replace: [] + service_account_keys: + id: datadog.organization.service_account_keys + name: service_account_keys + title: Service Account Keys + methods: + list_service_account_application_keys: + operation: + $ref: >- + #/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys/get + response: + mediaType: application/json + openAPIDocKey: '200' + create_service_account_application_key: + operation: + $ref: >- + #/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys/post + response: + mediaType: application/json + openAPIDocKey: '201' + delete_service_account_application_key: + operation: + $ref: >- + #/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys~1{app_key_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_service_account_application_key: + operation: + $ref: >- + #/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys~1{app_key_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + update_service_account_application_key: + operation: + $ref: >- + #/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys~1{app_key_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + insert: + - $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 + delete: + - $ref: >- + #/components/x-stackQL-resources/service_account_keys/methods/delete_service_account_application_key + replace: [] + teams: + id: datadog.organization.teams + name: teams + title: Teams + methods: + list_teams: + operation: + $ref: '#/paths/~1api~1v2~1team/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_team: + operation: + $ref: '#/paths/~1api~1v2~1team/post' + response: + mediaType: application/json + openAPIDocKey: '201' + sync_teams: + operation: + $ref: '#/paths/~1api~1v2~1team~1sync/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_team: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_team: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_team: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/teams/methods/get_team' + - $ref: '#/components/x-stackQL-resources/teams/methods/list_teams' + insert: + - $ref: '#/components/x-stackQL-resources/teams/methods/create_team' + update: + - $ref: '#/components/x-stackQL-resources/teams/methods/update_team' + delete: + - $ref: '#/components/x-stackQL-resources/teams/methods/delete_team' + replace: [] + team_members: + id: datadog.organization.team_members + name: team_members + title: Team Members + methods: + list_member_teams: + operation: + $ref: '#/paths/~1api~1v2~1team~1{super_team_id}~1member_teams/get' + response: + mediaType: application/json + openAPIDocKey: '200' + add_member_team: + operation: + $ref: '#/paths/~1api~1v2~1team~1{super_team_id}~1member_teams/post' + response: + mediaType: application/json + openAPIDocKey: '204' + remove_member_team: + operation: + $ref: >- + #/paths/~1api~1v2~1team~1{super_team_id}~1member_teams~1{member_team_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/team_members/methods/list_member_teams + insert: + - $ref: >- + #/components/x-stackQL-resources/team_members/methods/add_member_team + update: [] + delete: + - $ref: >- + #/components/x-stackQL-resources/team_members/methods/remove_member_team + replace: [] + team_links: + id: datadog.organization.team_links + name: team_links + title: Team Links + methods: + get_team_links: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1links/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_team_link: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1links/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_team_link: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1links~1{link_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_team_link: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1links~1{link_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_team_link: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1links~1{link_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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' + create_team_membership: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_team_membership: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships~1{user_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + update_team_membership: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships~1{user_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/team_memberships/methods/get_team_memberships + insert: + - $ref: >- + #/components/x-stackQL-resources/team_memberships/methods/create_team_membership + update: + - $ref: >- + #/components/x-stackQL-resources/team_memberships/methods/update_team_membership + delete: + - $ref: >- + #/components/x-stackQL-resources/team_memberships/methods/delete_team_membership + replace: [] + team_permission_settings: + id: datadog.organization.team_permission_settings + name: team_permission_settings + title: Team Permission Settings + methods: + get_team_permission_settings: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1permission-settings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_team_permission_setting: + operation: + $ref: >- + #/paths/~1api~1v2~1team~1{team_id}~1permission-settings~1{action}/put + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $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' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/usage_application_security_monitoring/methods/get_usage_application_security_monitoring + insert: [] + update: [] + delete: [] + replace: [] + billing_dimension_mapping: + id: datadog.organization.billing_dimension_mapping + name: billing_dimension_mapping + title: Billing Dimension Mapping + methods: + get_billing_dimension_mapping: + operation: + $ref: '#/paths/~1api~1v2~1usage~1billing_dimension_mapping/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + 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 + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/cost_by_org/methods/get_cost_by_org + insert: [] + update: [] + delete: [] + replace: [] + estimated_cost_by_org: + id: datadog.organization.estimated_cost_by_org + name: estimated_cost_by_org + title: Estimated Cost By Org + methods: + get_estimated_cost_by_org: + operation: + $ref: '#/paths/~1api~1v2~1usage~1estimated_cost/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/estimated_cost_by_org/methods/get_estimated_cost_by_org + insert: [] + update: [] + delete: [] + replace: [] + historical_cost_by_org: + id: datadog.organization.historical_cost_by_org + name: historical_cost_by_org + title: Historical Cost By Org + methods: + get_historical_cost_by_org: + operation: + $ref: '#/paths/~1api~1v2~1usage~1historical_cost/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/historical_cost_by_org/methods/get_historical_cost_by_org + insert: [] + update: [] + delete: [] + replace: [] + hourly_usage: + id: datadog.organization.hourly_usage + name: hourly_usage + title: Hourly Usage + methods: + get_hourly_usage: + operation: + $ref: '#/paths/~1api~1v2~1usage~1hourly_usage/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + sqlVerbs: + select: + - $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 + methods: + get_usage_lambda_traced_invocations: + operation: + $ref: '#/paths/~1api~1v2~1usage~1lambda_traced_invocations/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/lambda_traced_invocations_usage/methods/get_usage_lambda_traced_invocations + insert: [] + update: [] + delete: [] + replace: [] + observability_pipelines_usage: + id: datadog.organization.observability_pipelines_usage + name: observability_pipelines_usage + title: Observability Pipelines Usage + methods: + get_usage_observability_pipelines: + operation: + $ref: '#/paths/~1api~1v2~1usage~1observability_pipelines/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/observability_pipelines_usage/methods/get_usage_observability_pipelines + insert: [] + update: [] + delete: [] + replace: [] + projected_cost: + id: datadog.organization.projected_cost + name: projected_cost + title: Projected Cost + methods: + get_projected_cost: + operation: + $ref: '#/paths/~1api~1v2~1usage~1projected_cost/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/projected_cost/methods/get_projected_cost + insert: [] + update: [] + delete: [] + replace: [] + invitations: + id: datadog.organization.invitations + name: invitations + title: Invitations + methods: + send_invitations: + operation: + $ref: '#/paths/~1api~1v2~1user_invitations/post' + response: + mediaType: application/json + openAPIDocKey: '201' + get_invitation: + operation: + $ref: '#/paths/~1api~1v2~1user_invitations~1{user_invitation_uuid}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/invitations/methods/get_invitation + insert: [] + update: [] + delete: [] + replace: [] + users: + id: datadog.organization.users + name: users + title: Users + methods: + list_users: + operation: + $ref: '#/paths/~1api~1v2~1users/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_user: + operation: + $ref: '#/paths/~1api~1v2~1users/post' + response: + mediaType: application/json + openAPIDocKey: '201' + disable_user: + operation: + $ref: '#/paths/~1api~1v2~1users~1{user_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_user: + operation: + $ref: '#/paths/~1api~1v2~1users~1{user_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_user: + operation: + $ref: '#/paths/~1api~1v2~1users~1{user_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + user_organizations: + id: datadog.organization.user_organizations + name: user_organizations + title: User Organizations + methods: + list_user_organizations: + operation: + $ref: '#/paths/~1api~1v2~1users~1{user_id}~1orgs/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/user_organizations/methods/list_user_organizations + insert: [] + update: [] + delete: [] + replace: [] + user_permissions: + id: datadog.organization.user_permissions + name: user_permissions + title: User Permissions + methods: + list_user_permissions: + operation: + $ref: '#/paths/~1api~1v2~1users~1{user_id}~1permissions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/user_permissions/methods/list_user_permissions + insert: [] + update: [] + delete: [] + replace: [] + user_team_memberships: + id: datadog.organization.user_team_memberships + name: user_team_memberships + title: User Team Memberships + methods: + get_user_memberships: + operation: + $ref: '#/paths/~1api~1v2~1users~1{user_uuid}~1memberships/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/user_team_memberships/methods/get_user_memberships + insert: [] + update: [] + delete: [] + replace: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..76ec3af --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/remote_config.yaml @@ -0,0 +1,6790 @@ +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 + x-stackQL-resources: + waf_custom_rules: + id: datadog.remote_config.waf_custom_rules + name: waf_custom_rules + title: Waf Custom Rules + methods: + list_application_security_wafcustom_rules: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_application_security_waf_custom_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules/post + response: + mediaType: application/json + openAPIDocKey: '201' + delete_application_security_waf_custom_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules~1{custom_rule_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_application_security_waf_custom_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules~1{custom_rule_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_application_security_waf_custom_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules~1{custom_rule_id}/put + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + insert: + - $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 + replace: + - $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 + title: Waf Exclusion Filters + methods: + list_application_security_waf_exclusion_filters: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_application_security_waf_exclusion_filter: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters/post + response: + mediaType: application/json + openAPIDocKey: '200' + delete_application_security_waf_exclusion_filter: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters~1{exclusion_filter_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_application_security_waf_exclusion_filter: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters~1{exclusion_filter_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_application_security_waf_exclusion_filter: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters~1{exclusion_filter_id}/put + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + csm_threats_agent_rules: + id: datadog.remote_config.csm_threats_agent_rules + name: csm_threats_agent_rules + title: Csm Threats Agent Rules + methods: + list_csmthreats_agent_rules: + operation: + $ref: '#/paths/~1api~1v2~1remote_config~1products~1cws~1agent_rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_csmthreats_agent_rule: + operation: + $ref: '#/paths/~1api~1v2~1remote_config~1products~1cws~1agent_rules/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_csmthreats_agent_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1cws~1agent_rules~1{agent_rule_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_csmthreats_agent_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1cws~1agent_rules~1{agent_rule_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_csmthreats_agent_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1cws~1agent_rules~1{agent_rule_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + insert: + - $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 + delete: + - $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 + name: csm_threats_agent_policies + title: Csm Threats Agent Policies + methods: + list_csmthreats_agent_policies: + operation: + $ref: '#/paths/~1api~1v2~1remote_config~1products~1cws~1policy/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_csmthreats_agent_policy: + 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' + delete_csmthreats_agent_policy: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1cws~1policy~1{policy_id}/delete + response: + mediaType: application/json + openAPIDocKey: '202' + get_csmthreats_agent_policy: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1cws~1policy~1{policy_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_csmthreats_agent_policy: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1cws~1policy~1{policy_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + insert: + - $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 + delete: + - $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 + methods: + list_pipelines: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1obs_pipelines~1pipelines/get + response: + mediaType: application/json + openAPIDocKey: '200' + 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: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1obs_pipelines~1pipelines~1{pipeline_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_pipeline: + operation: + $ref: >- + #/paths/~1api~1v2~1remote_config~1products~1obs_pipelines~1pipelines~1{pipeline_id}/put + response: + mediaType: application/json + openAPIDocKey: '200' + 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 +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..5c6707b --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/security.yaml @@ -0,0 +1,12746 @@ +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 + x-stackQL-resources: + aws_scan_options: + id: datadog.security.aws_scan_options + name: aws_scan_options + title: Aws Scan Options + methods: + list_aws_scan_options: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1aws/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_aws_scan_options: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1aws/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_aws_scan_options: + operation: + $ref: >- + #/paths/~1api~1v2~1agentless_scanning~1accounts~1aws~1{account_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + 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 + update_aws_scan_options: + operation: + $ref: >- + #/paths/~1api~1v2~1agentless_scanning~1accounts~1aws~1{account_id}/patch + response: + mediaType: application/json + openAPIDocKey: '204' + 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: [] + 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 + create_aws_on_demand_task: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1ondemand~1aws/post' + response: + mediaType: application/json + openAPIDocKey: '201' + 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 + 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: + operation: + $ref: >- + #/paths/~1api~1v2~1cloud_security_management~1custom_frameworks/post + response: + mediaType: application/json + openAPIDocKey: '200' + delete_custom_framework: + operation: + $ref: >- + #/paths/~1api~1v2~1cloud_security_management~1custom_frameworks~1{handle}~1{version}/delete + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + update_custom_framework: + operation: + $ref: >- + #/paths/~1api~1v2~1cloud_security_management~1custom_frameworks~1{handle}~1{version}/put + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + update_resource_evaluation_filters: + operation: + $ref: '#/paths/~1api~1v2~1cloud_security_management~1resource_filters/put' + response: + mediaType: application/json + openAPIDocKey: '201' + 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' + 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 + 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 + 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 + 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' + 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: + operation: + $ref: '#/paths/~1api~1v2~1posture_management~1findings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + mute_findings: + operation: + $ref: '#/paths/~1api~1v2~1posture_management~1findings/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + get_finding: + operation: + $ref: '#/paths/~1api~1v2~1posture_management~1findings~1{finding_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/findings/methods/get_finding' + - $ref: '#/components/x-stackQL-resources/findings/methods/list_findings' + insert: [] + update: [] + delete: [] + replace: [] + vulnerable_assets: + id: datadog.security.vulnerable_assets + name: vulnerable_assets + title: Vulnerable Assets + methods: + list_vulnerable_assets: + operation: + $ref: '#/paths/~1api~1v2~1security~1assets/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: + operation: + $ref: '#/paths/~1api~1v2~1security~1cloud_workload~1policy~1download/get' + response: + mediaType: application/yaml + openAPIDocKey: '200' + 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 + create_cloud_workload_security_agent_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules/post + response: + mediaType: application/json + openAPIDocKey: '200' + 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' + 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 + update_cloud_workload_security_agent_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules~1{agent_rule_id}/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: + operation: + $ref: '#/paths/~1api~1v2~1security~1sboms/get' + response: + mediaType: application/json + openAPIDocKey: '200' + get_sbom: + operation: + $ref: '#/paths/~1api~1v2~1security~1sboms~1{asset_type}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + 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: [] + 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 + 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: + operation: + $ref: '#/paths/~1api~1v2~1security~1signals~1notification_rules~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + patch_signal_notification_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1security~1signals~1notification_rules~1{id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/vulnerabilities/methods/list_vulnerabilities + insert: [] + 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 + create_vulnerability_notification_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules/post + response: + mediaType: application/json + openAPIDocKey: '201' + delete_vulnerability_notification_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules~1{id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_vulnerability_notification_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules~1{id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + patch_vulnerability_notification_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules~1{id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + 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' + create_security_filter: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters/post + response: + mediaType: application/json + openAPIDocKey: '200' + delete_security_filter: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters~1{security_filter_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_security_filter: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters~1{security_filter_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + update_security_filter: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters~1{security_filter_id}/patch + 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: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_security_monitoring_suppression: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions/post + response: + mediaType: application/json + openAPIDocKey: '200' + validate_security_monitoring_suppression: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1validation/post + response: + mediaType: application/json + openAPIDocKey: '204' + delete_security_monitoring_suppression: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1{suppression_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + 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_security_monitoring_suppression: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1{suppression_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + insert: + - $ref: >- + #/components/x-stackQL-resources/monitoring_suppressions/methods/create_security_monitoring_suppression + update: + - $ref: >- + #/components/x-stackQL-resources/monitoring_suppressions/methods/update_security_monitoring_suppression + delete: + - $ref: >- + #/components/x-stackQL-resources/monitoring_suppressions/methods/delete_security_monitoring_suppression + replace: [] + suppressions_affecting_future_rule: + id: datadog.security.suppressions_affecting_future_rule + name: suppressions_affecting_future_rule + title: Suppressions Affecting Future Rule + methods: + get_suppressions_affecting_future_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1rules/post + response: + mediaType: application/json + openAPIDocKey: '200' + 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~1security_monitoring~1configuration~1suppressions~1rules~1{rule_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/suppressions_affecting_rule/methods/get_suppressions_affecting_rule + insert: [] + update: [] + delete: [] + replace: [] + monitoring_rules: + id: datadog.security.monitoring_rules + name: monitoring_rules + title: Monitoring Rules + methods: + list_security_monitoring_rules: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_security_monitoring_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules/post' + response: + mediaType: application/json + openAPIDocKey: '200' + convert_security_monitoring_rule_from_jsonto_terraform: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1convert/post' + response: + mediaType: application/json + openAPIDocKey: '200' + test_security_monitoring_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1test/post' + response: + mediaType: application/json + openAPIDocKey: '200' + validate_security_monitoring_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1validation/post' + response: + mediaType: application/json + openAPIDocKey: '204' + delete_security_monitoring_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_security_monitoring_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_security_monitoring_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + convert_existing_security_monitoring_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}~1convert/get + response: + mediaType: application/json + openAPIDocKey: '200' + test_existing_security_monitoring_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}~1test/post + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + insert: + - $ref: >- + #/components/x-stackQL-resources/monitoring_rules/methods/create_security_monitoring_rule + update: [] + 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 + methods: + get_rule_version_history: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}~1version_history/get + 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: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals/get' + response: + mediaType: application/json + openAPIDocKey: '200' + search_security_monitoring_signals: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + get_security_monitoring_signal: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + edit_security_monitoring_signal_assignee: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1assignee/patch + response: + mediaType: application/json + openAPIDocKey: '200' + edit_security_monitoring_signal_incidents: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1incidents/patch + response: + mediaType: application/json + openAPIDocKey: '200' + edit_security_monitoring_signal_state: + operation: + $ref: >- + #/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1state/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + insert: [] + update: [] + delete: [] + replace: [] + scanning_groups: + id: datadog.security.scanning_groups + name: scanning_groups + title: Scanning Groups + methods: + list_scanning_groups: + operation: + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config/get' + response: + mediaType: application/json + openAPIDocKey: '200' + reorder_scanning_groups: + operation: + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + create_scanning_group: + operation: + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config~1groups/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_scanning_group: + operation: + $ref: >- + #/paths/~1api~1v2~1sensitive-data-scanner~1config~1groups~1{group_id}/delete + response: + mediaType: application/json + openAPIDocKey: '200' + update_scanning_group: + operation: + $ref: >- + #/paths/~1api~1v2~1sensitive-data-scanner~1config~1groups~1{group_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + update: + - $ref: >- + #/components/x-stackQL-resources/scanning_groups/methods/update_scanning_group + 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 + methods: + create_scanning_rule: + operation: + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config~1rules/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_scanning_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1sensitive-data-scanner~1config~1rules~1{rule_id}/delete + response: + mediaType: application/json + openAPIDocKey: '200' + update_scanning_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1sensitive-data-scanner~1config~1rules~1{rule_id}/patch + 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: + operation: + $ref: >- + #/paths/~1api~1v2~1sensitive-data-scanner~1config~1standard-patterns/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + 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~1siem-historical-detections~1histsignals/get' + response: + mediaType: application/json + openAPIDocKey: '200' + search_security_monitoring_histsignals: + operation: + $ref: >- + #/paths/~1api~1v2~1siem-historical-detections~1histsignals~1search/get + response: + mediaType: application/json + openAPIDocKey: '200' + get_security_monitoring_histsignal: + operation: + $ref: >- + #/paths/~1api~1v2~1siem-historical-detections~1histsignals~1{histsignal_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + convert_job_result_to_signal: + operation: + $ref: >- + #/paths/~1api~1v2~1siem-historical-detections~1jobs~1signal_convert/post + response: + mediaType: application/json + openAPIDocKey: '204' + 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' + 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~1siem-historical-detections~1jobs/get' + response: + mediaType: application/json + openAPIDocKey: '200' + run_historical_job: + operation: + $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_historical_job: + operation: + $ref: >- + #/paths/~1api~1v2~1siem-historical-detections~1jobs~1{job_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_historical_job: + operation: + $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs~1{job_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + cancel_historical_job: + operation: + $ref: >- + #/paths/~1api~1v2~1siem-historical-detections~1jobs~1{job_id}~1cancel/patch + response: + mediaType: application/json + openAPIDocKey: '204' + 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 + replace: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..2d81ef7 --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/service_management.yaml @@ -0,0 +1,15360 @@ +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 + x-stackQL-resources: + cases: + id: datadog.service_management.cases + name: cases + title: Cases + methods: + search_cases: + operation: + $ref: '#/paths/~1api~1v2~1cases/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_case: + operation: + $ref: '#/paths/~1api~1v2~1cases/post' + response: + mediaType: application/json + openAPIDocKey: '201' + get_case: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + archive_case: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1archive/post' + response: + mediaType: application/json + openAPIDocKey: '200' + assign_case: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1assign/post' + response: + mediaType: application/json + openAPIDocKey: '200' + update_attributes: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1attributes/post' + response: + mediaType: application/json + openAPIDocKey: '200' + update_priority: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1priority/post' + response: + mediaType: application/json + openAPIDocKey: '200' + update_status: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1status/post' + response: + mediaType: application/json + openAPIDocKey: '200' + unarchive_case: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1unarchive/post' + response: + mediaType: application/json + openAPIDocKey: '200' + unassign_case: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1unassign/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/cases/methods/get_case' + insert: + - $ref: '#/components/x-stackQL-resources/cases/methods/create_case' + 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 + create_project: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_project: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_project: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + 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: [] + 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' + create_downtime: + operation: + $ref: '#/paths/~1api~1v2~1downtime/post' + response: + mediaType: application/json + openAPIDocKey: '200' + cancel_downtime: + operation: + $ref: '#/paths/~1api~1v2~1downtime~1{downtime_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_downtime: + operation: + $ref: '#/paths/~1api~1v2~1downtime~1{downtime_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_downtime: + operation: + $ref: '#/paths/~1api~1v2~1downtime~1{downtime_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: + operation: + $ref: '#/paths/~1api~1v2~1error-tracking~1issues~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + get_issue: + operation: + $ref: '#/paths/~1api~1v2~1error-tracking~1issues~1{issue_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_issue_assignee: + operation: + $ref: >- + #/paths/~1api~1v2~1error-tracking~1issues~1{issue_id}~1assignee/put + response: + mediaType: application/json + openAPIDocKey: '200' + update_issue_state: + operation: + $ref: '#/paths/~1api~1v2~1error-tracking~1issues~1{issue_id}~1state/put' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/issues/methods/get_issue' + insert: + - $ref: '#/components/x-stackQL-resources/issues/methods/search_issues' + update: [] + delete: [] + 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' + create_event: + operation: + $ref: '#/paths/~1api~1v2~1events/post' + response: + mediaType: application/json + openAPIDocKey: '202' + search_events: + operation: + $ref: '#/paths/~1api~1v2~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + get_event: + operation: + $ref: '#/paths/~1api~1v2~1events~1{event_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + 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' + - $ref: '#/components/x-stackQL-resources/events/methods/search_events' + 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' + create_incident: + operation: + $ref: '#/paths/~1api~1v2~1incidents/post' + response: + mediaType: application/json + openAPIDocKey: '201' + search_incidents: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1search/get' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_incident: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_incident: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_incident: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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_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' + create_incident_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_incident_notification_rule: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1config~1notification-rules~1{id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_incident_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_incident_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules~1{id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + 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' + create_incident_notification_template: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-templates/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_incident_notification_template: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1config~1notification-templates~1{id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_incident_notification_template: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1config~1notification-templates~1{id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + update_incident_notification_template: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1config~1notification-templates~1{id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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_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 + create_incident_type: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1types/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_incident_type: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1config~1types~1{incident_type_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_incident_type: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1config~1types~1{incident_type_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_incident_type: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1config~1types~1{incident_type_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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_attachments: + id: datadog.service_management.incident_attachments + name: incident_attachments + title: Incident Attachments + methods: + list_incident_attachments: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1attachments/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_incident_attachments: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1attachments/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/incident_attachments/methods/list_incident_attachments + insert: [] + update: + - $ref: >- + #/components/x-stackQL-resources/incident_attachments/methods/update_incident_attachments + 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' + create_incident_integration: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations/post + response: + mediaType: application/json + openAPIDocKey: '201' + 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' + 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' + update_incident_integration: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations~1{integration_metadata_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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' + create_incident_todo: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos/post + response: + mediaType: application/json + openAPIDocKey: '201' + delete_incident_todo: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos~1{todo_id}/delete + response: + mediaType: application/json + openAPIDocKey: '204' + get_incident_todo: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos~1{todo_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + update_incident_todo: + operation: + $ref: >- + #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos~1{todo_id}/patch + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + 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: + operation: + $ref: '#/paths/~1api~1v2~1on-call~1escalation-policies/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_on_call_escalation_policy: + operation: + $ref: >- + #/paths/~1api~1v2~1on-call~1escalation-policies~1{policy_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' + update_on_call_escalation_policy: + operation: + $ref: '#/paths/~1api~1v2~1on-call~1escalation-policies~1{policy_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + 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: + create_on_call_page: + operation: + $ref: '#/paths/~1api~1v2~1on-call~1pages/post' + 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: + operation: + $ref: '#/paths/~1api~1v2~1on-call~1schedules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_on_call_schedule: + operation: + $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_on_call_schedule: + operation: + $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_on_call_schedule: + operation: + $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/on_call_schedule/methods/get_on_call_schedule + insert: + - $ref: >- + #/components/x-stackQL-resources/on_call_schedule/methods/create_on_call_schedule + update: [] + 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 + methods: + get_schedule_on_call_user: + operation: + $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}~1on-call/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/on_call_user_schedule/methods/get_schedule_on_call_user + 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~1on-call~1teams~1{team_id}~1on-call/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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~1on-call~1teams~1{team_id}~1routing-rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + set_on_call_team_routing_rules: + operation: + $ref: '#/paths/~1api~1v2~1on-call~1teams~1{team_id}~1routing-rules/put' + 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: + operation: + $ref: '#/paths/~1api~1v2~1services/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_incident_service: + operation: + $ref: '#/paths/~1api~1v2~1services/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_incident_service: + operation: + $ref: '#/paths/~1api~1v2~1services~1{service_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_incident_service: + operation: + $ref: '#/paths/~1api~1v2~1services~1{service_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_incident_service: + operation: + $ref: '#/paths/~1api~1v2~1services~1{service_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/incident_services/methods/get_incident_service + - $ref: >- + #/components/x-stackQL-resources/incident_services/methods/list_incident_services + insert: + - $ref: >- + #/components/x-stackQL-resources/incident_services/methods/create_incident_service + update: + - $ref: >- + #/components/x-stackQL-resources/incident_services/methods/update_incident_service + 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 + methods: + list_service_definitions: + operation: + $ref: '#/paths/~1api~1v2~1services~1definitions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + create_or_update_service_definitions: + operation: + $ref: '#/paths/~1api~1v2~1services~1definitions/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_service_definition: + operation: + $ref: '#/paths/~1api~1v2~1services~1definitions~1{service_name}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_service_definition: + operation: + $ref: '#/paths/~1api~1v2~1services~1definitions~1{service_name}/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: + operation: + $ref: '#/paths/~1api~1v2~1slo~1report/post' + 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: + operation: + $ref: '#/paths/~1api~1v2~1slo~1report~1{report_id}~1status/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $ref: >- + #/components/x-stackQL-resources/slo_report_job/methods/get_sloreport_job_status + insert: + - $ref: >- + #/components/x-stackQL-resources/slo_report_job/methods/create_sloreport_job + update: [] + delete: [] + replace: [] + incident_teams: + id: datadog.service_management.incident_teams + name: incident_teams + title: Incident Teams + methods: + list_incident_teams: + operation: + $ref: '#/paths/~1api~1v2~1teams/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: + operation: + $ref: '#/paths/~1api~1v2~1teams~1{team_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_incident_team: + operation: + $ref: '#/paths/~1api~1v2~1teams~1{team_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + replace: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com 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 new file mode 100644 index 0000000..5decfa9 --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/software_delivery.yaml @@ -0,0 +1,4554 @@ +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 + x-stackQL-resources: + 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: + operation: + $ref: '#/paths/~1api~1v2~1ci~1pipeline/post' + response: + mediaType: application/json + openAPIDocKey: '202' + aggregate_ciapp_pipeline_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1pipelines~1analytics~1aggregate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + list_ciapp_pipeline_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1pipelines~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + search_ciapp_pipeline_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1pipelines~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + 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_app_test_events: + id: datadog.software_delivery.ci_app_test_events + name: ci_app_test_events + title: Ci App Test Events + methods: + aggregate_ciapp_test_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1tests~1analytics~1aggregate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + list_ciapp_test_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1tests~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + search_ciapp_test_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1tests~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + dora_deployments: + id: datadog.software_delivery.dora_deployments + name: dora_deployments + title: Dora Deployments + methods: + create_doradeployment: + operation: + $ref: '#/paths/~1api~1v2~1dora~1deployment/post' + response: + mediaType: application/json + openAPIDocKey: '200' + list_doradeployments: + operation: + $ref: '#/paths/~1api~1v2~1dora~1deployments/post' + response: + mediaType: application/json + openAPIDocKey: '200' + get_doradeployment: + operation: + $ref: '#/paths/~1api~1v2~1dora~1deployments~1{deployment_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + sqlVerbs: + select: + - $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: [] + replace: [] + dora_failures: + id: datadog.software_delivery.dora_failures + name: dora_failures + title: Dora Failures + methods: + create_dorafailure: + operation: + $ref: '#/paths/~1api~1v2~1dora~1failure/post' + response: + mediaType: application/json + openAPIDocKey: '200' + list_dorafailures: + operation: + $ref: '#/paths/~1api~1v2~1dora~1failures/post' + response: + mediaType: application/json + openAPIDocKey: '200' + get_dorafailure: + operation: + $ref: '#/paths/~1api~1v2~1dora~1failures~1{failure_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + 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: [] + replace: [] + dora_incidents: + id: datadog.software_delivery.dora_incidents + name: dora_incidents + title: Dora Incidents + methods: + create_doraincident: + operation: + $ref: '#/paths/~1api~1v2~1dora~1incident/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: [] + insert: + - $ref: >- + #/components/x-stackQL-resources/dora_incidents/methods/create_doraincident + update: [] + delete: [] + replace: [] + workflows: + id: datadog.software_delivery.workflows + name: workflows + title: Workflows + methods: + create_workflow: + operation: + $ref: '#/paths/~1api~1v2~1workflows/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_workflow: + operation: + $ref: '#/paths/~1api~1v2~1workflows~1{workflow_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_workflow: + operation: + $ref: '#/paths/~1api~1v2~1workflows~1{workflow_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + update_workflow: + operation: + $ref: '#/paths/~1api~1v2~1workflows~1{workflow_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/workflows/methods/get_workflow' + insert: + - $ref: '#/components/x-stackQL-resources/workflows/methods/create_workflow' + update: + - $ref: '#/components/x-stackQL-resources/workflows/methods/update_workflow' + delete: + - $ref: '#/components/x-stackQL-resources/workflows/methods/delete_workflow' + replace: [] + workflow_instances: + id: datadog.software_delivery.workflow_instances + name: workflow_instances + title: Workflow Instances + methods: + list_workflow_instances: + operation: + $ref: '#/paths/~1api~1v2~1workflows~1{workflow_id}~1instances/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_workflow_instance: + operation: + $ref: '#/paths/~1api~1v2~1workflows~1{workflow_id}~1instances/post' + response: + mediaType: application/json + openAPIDocKey: '200' + get_workflow_instance: + operation: + $ref: >- + #/paths/~1api~1v2~1workflows~1{workflow_id}~1instances~1{instance_id}/get + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + cancel_workflow_instance: + operation: + $ref: >- + #/paths/~1api~1v2~1workflows~1{workflow_id}~1instances~1{instance_id}~1cancel/put + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $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 + update: [] + delete: [] + replace: [] +servers: + - url: https://api.{region} + variables: + region: + default: datadoghq.com + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - datadoghq.eu + - ddog-gov.com diff --git a/provider-dev/source/.gitkeep b/provider-dev/source/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/provider-dev/source/actions.yaml b/provider-dev/source/actions.yaml new file mode 100644 index 0000000..5e6d771 --- /dev/null +++ b/provider-dev/source/actions.yaml @@ -0,0 +1,3645 @@ +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 new file mode 100644 index 0000000..359e05d --- /dev/null +++ b/provider-dev/source/apm.yaml @@ -0,0 +1,1888 @@ +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 new file mode 100644 index 0000000..64db6d4 --- /dev/null +++ b/provider-dev/source/catalog.yaml @@ -0,0 +1,2244 @@ +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 new file mode 100644 index 0000000..f0aeac9 --- /dev/null +++ b/provider-dev/source/cloud_costs.yaml @@ -0,0 +1,2278 @@ +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 new file mode 100644 index 0000000..f7063d7 --- /dev/null +++ b/provider-dev/source/dashboards.yaml @@ -0,0 +1,1226 @@ +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 new file mode 100644 index 0000000..20df846 --- /dev/null +++ b/provider-dev/source/digital_experience.yaml @@ -0,0 +1,2071 @@ +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 new file mode 100644 index 0000000..050cb5a --- /dev/null +++ b/provider-dev/source/infrastructure.yaml @@ -0,0 +1,3889 @@ +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 new file mode 100644 index 0000000..674a7ef --- /dev/null +++ b/provider-dev/source/integrations.yaml @@ -0,0 +1,4414 @@ +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 new file mode 100644 index 0000000..614fe7e --- /dev/null +++ b/provider-dev/source/logs.yaml @@ -0,0 +1,3443 @@ +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 new file mode 100644 index 0000000..4d9da02 --- /dev/null +++ b/provider-dev/source/metrics.yaml @@ -0,0 +1,4404 @@ +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 new file mode 100644 index 0000000..8aac6df --- /dev/null +++ b/provider-dev/source/monitoring.yaml @@ -0,0 +1,1890 @@ +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 new file mode 100644 index 0000000..91545c6 --- /dev/null +++ b/provider-dev/source/organization.yaml @@ -0,0 +1,9357 @@ +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 new file mode 100644 index 0000000..dadc2a3 --- /dev/null +++ b/provider-dev/source/remote_config.yaml @@ -0,0 +1,6510 @@ +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 new file mode 100644 index 0000000..cf135e5 --- /dev/null +++ b/provider-dev/source/security.yaml @@ -0,0 +1,11685 @@ +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 new file mode 100644 index 0000000..55712ad --- /dev/null +++ b/provider-dev/source/service_management.yaml @@ -0,0 +1,14415 @@ +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 new file mode 100644 index 0000000..f4bd675 --- /dev/null +++ b/provider-dev/source/software_delivery.yaml @@ -0,0 +1,4326 @@ +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/website/yarn.lock b/website/yarn.lock new file mode 100644 index 0000000..bd2d92f --- /dev/null +++ b/website/yarn.lock @@ -0,0 +1,9087 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# 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" + +"@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== + 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/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== + 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/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== + 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/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== + dependencies: + "@algolia/client-common" "5.37.0" + +"@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== + dependencies: + "@algolia/client-common" "5.37.0" + +"@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== + dependencies: + "@algolia/client-common" "5.37.0" + +"@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== + dependencies: + "@babel/helper-validator-identifier" "^7.27.1" + 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/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" + "@jridgewell/remapping" "^2.3.5" + convert-source-map "^2.0.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + 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== + dependencies: + "@babel/parser" "^7.28.3" + "@babel/types" "^7.28.2" + "@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== + dependencies: + "@babel/types" "^7.27.3" + +"@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== + dependencies: + "@babel/compat-data" "^7.27.2" + "@babel/helper-validator-option" "^7.27.1" + 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" + 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== + dependencies: + "@babel/helper-annotate-as-pure" "^7.27.1" + regexpu-core "^6.2.0" + 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== + dependencies: + "@babel/helper-compilation-targets" "^7.27.2" + "@babel/helper-plugin-utils" "^7.27.1" + debug "^4.4.1" + 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" + +"@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== + 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== + 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== + 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/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== + 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/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": + version "7.21.0-placeholder-for-preset-env.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703" + integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w== + +"@babel/plugin-syntax-dynamic-import@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" + integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== + 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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@babel/plugin-syntax-unicode-sets-regex@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357" + integrity sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg== + dependencies: + "@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-remap-async-to-generator" "^7.27.1" + "@babel/traverse" "^7.28.0" + +"@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== + 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/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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.28.3" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + 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/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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/template" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/traverse" "^7.28.0" + +"@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== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/plugin-transform-destructuring" "^7.28.0" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-compilation-targets" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/traverse" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-module-transforms" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-module-transforms" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + 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/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== + dependencies: + "@babel/helper-module-transforms" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + 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/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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-replace-supers" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + 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/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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/plugin-transform-react-jsx" "^7.27.1" + +"@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== + 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/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== + dependencies: + "@babel/helper-annotate-as-pure" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-module-imports" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + 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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + 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/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== + dependencies: + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.27.1" + "@babel/helper-plugin-utils" "^7.27.1" + +"@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" + "@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-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/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" + semver "^6.3.1" + +"@babel/preset-modules@0.1.6-no-external-plugins": + version "0.1.6-no-external-plugins" + resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz#ccb88a2c49c817236861fee7826080573b8a923a" + integrity sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/types" "^7.4.4" + 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== + 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/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" + 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== + dependencies: + "@babel/helper-string-parser" "^7.27.1" + "@babel/helper-validator-identifier" "^7.27.1" + +"@colors/colors@1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" + integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== + +"@csstools/cascade-layer-name-parser@^2.0.5": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@csstools/cascade-layer-name-parser/-/cascade-layer-name-parser-2.0.5.tgz#43f962bebead0052a9fed1a2deeb11f85efcbc72" + integrity sha512-p1ko5eHgV+MgXFVa4STPKpvPxr6ReS8oS2jzTukjR74i5zJNyWO1ZM1m8YKBXnzDKWfBN1ztLYlHxbVemDD88A== + +"@csstools/color-helpers@^5.1.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@csstools/color-helpers/-/color-helpers-5.1.0.tgz#106c54c808cabfd1ab4c602d8505ee584c2996ef" + integrity sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA== + +"@csstools/css-calc@^2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@csstools/css-calc/-/css-calc-2.1.4.tgz#8473f63e2fcd6e459838dd412401d5948f224c65" + integrity sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ== + +"@csstools/css-color-parser@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@csstools/css-color-parser/-/css-color-parser-3.1.0.tgz#4e386af3a99dd36c46fef013cfe4c1c341eed6f0" + integrity sha512-nbtKwh3a6xNVIp/VRuXV64yTKnb1IjTAEEh3irzS+HkKjAOYLTGNb9pmVNntZ8iVBHcWDA2Dof0QtPgFI1BaTA== + dependencies: + "@csstools/color-helpers" "^5.1.0" + "@csstools/css-calc" "^2.1.4" + +"@csstools/css-parser-algorithms@^3.0.5": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz#5755370a9a29abaec5515b43c8b3f2cf9c2e3076" + integrity sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ== + +"@csstools/css-tokenizer@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz#333fedabc3fd1a8e5d0100013731cf19e6a8c5d3" + integrity sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw== + +"@csstools/media-query-list-parser@^4.0.3": + version "4.0.3" + 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== + 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/utilities" "^2.0.0" + +"@csstools/postcss-cascade-layers@^5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-5.0.2.tgz#dd2c70db3867b88975f2922da3bfbae7d7a2cae7" + integrity sha512-nWBE08nhO8uWl6kSAeCx4im7QfVko3zLrtgWZY4/bP87zrSPpSyN/3W3TDqz1jJuH+kbKOHXg5rJnK+ZVYcFFg== + dependencies: + "@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== + 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/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== + 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/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== + 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/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== + 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/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== + dependencies: + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/utilities" "^2.0.0" + +"@csstools/postcss-exponential-functions@^2.0.9": + version "2.0.9" + resolved "https://registry.yarnpkg.com/@csstools/postcss-exponential-functions/-/postcss-exponential-functions-2.0.9.tgz#fc03d1272888cb77e64cc1a7d8a33016e4f05c69" + integrity sha512-abg2W/PI3HXwS/CZshSa79kNWNZHdJPMBXeZNyPQFbbj8sKO3jXxOt/wF7juJVjyDTc6JrvaUZYFcSBZBhaxjw== + dependencies: + "@csstools/css-calc" "^2.1.4" + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + +"@csstools/postcss-font-format-keywords@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-4.0.0.tgz#6730836eb0153ff4f3840416cc2322f129c086e6" + integrity sha512-usBzw9aCRDvchpok6C+4TXC57btc4bJtmKQWOHQxOVKen1ZfVqBUuCZ/wuqdX5GHsD0NRSr9XTP+5ID1ZZQBXw== + dependencies: + "@csstools/utilities" "^2.0.0" + postcss-value-parser "^4.2.0" + +"@csstools/postcss-gamut-mapping@^2.0.11": + version "2.0.11" + resolved "https://registry.yarnpkg.com/@csstools/postcss-gamut-mapping/-/postcss-gamut-mapping-2.0.11.tgz#be0e34c9f0142852cccfc02b917511f0d677db8b" + integrity sha512-fCpCUgZNE2piVJKC76zFsgVW1apF6dpYsqGyH8SIeCcM4pTEsRTWTLCaJIMKFEundsCKwY1rwfhtrio04RJ4Dw== + dependencies: + "@csstools/css-color-parser" "^3.1.0" + "@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== + 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/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== + 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/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== + dependencies: + "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/utilities" "^2.0.0" + postcss-value-parser "^4.2.0" + +"@csstools/postcss-initial@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-initial/-/postcss-initial-2.0.1.tgz#c385bd9d8ad31ad159edd7992069e97ceea4d09a" + integrity sha512-L1wLVMSAZ4wovznquK0xmC7QSctzO4D0Is590bxpGqhqjboLXYA16dWZpfwImkdOgACdQ9PqXsuRroW6qPlEsg== + +"@csstools/postcss-is-pseudo-class@^5.0.3": + version "5.0.3" + resolved "https://registry.yarnpkg.com/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-5.0.3.tgz#d34e850bcad4013c2ed7abe948bfa0448aa8eb74" + integrity sha512-jS/TY4SpG4gszAtIg7Qnf3AS2pjcUM5SzxpApOrlndMeGhIbaTzWBzzP/IApXoNWEW7OhcjkRT48jnAUIFXhAQ== + dependencies: + "@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== + dependencies: + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/utilities" "^2.0.0" + +"@csstools/postcss-logical-float-and-clear@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-float-and-clear/-/postcss-logical-float-and-clear-3.0.0.tgz#62617564182cf86ab5d4e7485433ad91e4c58571" + integrity sha512-SEmaHMszwakI2rqKRJgE+8rpotFfne1ZS6bZqBoQIicFyV+xT1UF42eORPxJkVJVrH9C0ctUgwMSn3BLOIZldQ== + +"@csstools/postcss-logical-overflow@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-overflow/-/postcss-logical-overflow-2.0.0.tgz#c6de7c5f04e3d4233731a847f6c62819bcbcfa1d" + integrity sha512-spzR1MInxPuXKEX2csMamshR4LRaSZ3UXVaRGjeQxl70ySxOhMpP2252RAFsg8QyyBXBzuVOOdx1+bVO5bPIzA== + +"@csstools/postcss-logical-overscroll-behavior@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-overscroll-behavior/-/postcss-logical-overscroll-behavior-2.0.0.tgz#43c03eaecdf34055ef53bfab691db6dc97a53d37" + integrity sha512-e/webMjoGOSYfqLunyzByZj5KKe5oyVg/YSbie99VEaSDE2kimFm0q1f6t/6Jo+VVCQ/jbe2Xy+uX+C4xzWs4w== + +"@csstools/postcss-logical-resize@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-resize/-/postcss-logical-resize-3.0.0.tgz#4df0eeb1a61d7bd85395e56a5cce350b5dbfdca6" + integrity sha512-DFbHQOFW/+I+MY4Ycd/QN6Dg4Hcbb50elIJCfnwkRTCX05G11SwViI5BbBlg9iHRl4ytB7pmY5ieAFk3ws7yyg== + dependencies: + postcss-value-parser "^4.2.0" + +"@csstools/postcss-logical-viewport-units@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-viewport-units/-/postcss-logical-viewport-units-3.0.4.tgz#016d98a8b7b5f969e58eb8413447eb801add16fc" + integrity sha512-q+eHV1haXA4w9xBwZLKjVKAWn3W2CMqmpNpZUk5kRprvSiBEGMgrNH3/sJZ8UA3JgyHaOt3jwT9uFa4wLX4EqQ== + dependencies: + "@csstools/css-tokenizer" "^3.0.4" + "@csstools/utilities" "^2.0.0" + +"@csstools/postcss-media-minmax@^2.0.9": + version "2.0.9" + resolved "https://registry.yarnpkg.com/@csstools/postcss-media-minmax/-/postcss-media-minmax-2.0.9.tgz#184252d5b93155ae526689328af6bdf3fc113987" + integrity sha512-af9Qw3uS3JhYLnCbqtZ9crTvvkR+0Se+bBqSr7ykAnl9yKhk6895z9rf+2F4dClIDJWxgn0iZZ1PSdkhrbs2ig== + dependencies: + "@csstools/css-calc" "^2.1.4" + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + "@csstools/media-query-list-parser" "^4.0.3" + +"@csstools/postcss-media-queries-aspect-ratio-number-values@^3.0.5": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@csstools/postcss-media-queries-aspect-ratio-number-values/-/postcss-media-queries-aspect-ratio-number-values-3.0.5.tgz#f485c31ec13d6b0fb5c528a3474334a40eff5f11" + integrity sha512-zhAe31xaaXOY2Px8IYfoVTB3wglbJUVigGphFLj6exb7cjZRH9A6adyE22XfFK3P2PzwRk0VDeTJmaxpluyrDg== + dependencies: + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + "@csstools/media-query-list-parser" "^4.0.3" + +"@csstools/postcss-nested-calc@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-nested-calc/-/postcss-nested-calc-4.0.0.tgz#754e10edc6958d664c11cde917f44ba144141c62" + integrity sha512-jMYDdqrQQxE7k9+KjstC3NbsmC063n1FTPLCgCRS2/qHUbHM0mNy9pIn4QIiQGs9I/Bg98vMqw7mJXBxa0N88A== + dependencies: + "@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== + 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== + 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/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== + dependencies: + postcss-value-parser "^4.2.0" + +"@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" + integrity sha512-q+FQaNiRBhnoSNo+GzqGOIBKoHQ43lYz0ICrV+UudfWnEF6ksS6DsBIJSISKQT2Bvu3g4k6r7t0zYrk5pDlo8w== + dependencies: + "@csstools/css-calc" "^2.1.4" + "@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== + 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/utilities" "^2.0.0" + +"@csstools/postcss-scope-pseudo-class@^4.0.1": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-scope-pseudo-class/-/postcss-scope-pseudo-class-4.0.1.tgz#9fe60e9d6d91d58fb5fc6c768a40f6e47e89a235" + integrity sha512-IMi9FwtH6LMNuLea1bjVMQAsUhFxJnyLSgOp/cpv5hrzWmrUYU5fm0EguNDIIOHUqzXode8F/1qkC/tEo/qN8Q== + dependencies: + postcss-selector-parser "^7.0.0" + +"@csstools/postcss-sign-functions@^1.1.4": + version "1.1.4" + resolved "https://registry.yarnpkg.com/@csstools/postcss-sign-functions/-/postcss-sign-functions-1.1.4.tgz#a9ac56954014ae4c513475b3f1b3e3424a1e0c12" + integrity sha512-P97h1XqRPcfcJndFdG95Gv/6ZzxUBBISem0IDqPZ7WMvc/wlO+yU0c5D/OCpZ5TJoTt63Ok3knGk64N+o6L2Pg== + dependencies: + "@csstools/css-calc" "^2.1.4" + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + +"@csstools/postcss-stepped-value-functions@^4.0.9": + version "4.0.9" + resolved "https://registry.yarnpkg.com/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-4.0.9.tgz#36036f1a0e5e5ee2308e72f3c9cb433567c387b9" + integrity sha512-h9btycWrsex4dNLeQfyU3y3w40LMQooJWFMm/SK9lrKguHDcFl4VMkncKKoXi2z5rM9YGWbUQABI8BT2UydIcA== + dependencies: + "@csstools/css-calc" "^2.1.4" + "@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" + integrity sha512-KSkGgZfx0kQjRIYnpsD7X2Om9BUXX/Kii77VBifQW9Ih929hK0KNjVngHDH0bFB9GmfWcR9vJYJJRvw/NQjkrA== + dependencies: + "@csstools/color-helpers" "^5.1.0" + postcss-value-parser "^4.2.0" + +"@csstools/postcss-trigonometric-functions@^4.0.9": + version "4.0.9" + resolved "https://registry.yarnpkg.com/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-4.0.9.tgz#3f94ed2e319b57f2c59720b64e4d0a8a6fb8c3b2" + integrity sha512-Hnh5zJUdpNrJqK9v1/E3BbrQhaDTj5YiX7P61TOvUhoDHnUmsNNxcDAgkQ32RrcWx9GVUvfUNPcUkn8R3vIX6A== + dependencies: + "@csstools/css-calc" "^2.1.4" + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + +"@csstools/postcss-unset-value@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-unset-value/-/postcss-unset-value-4.0.0.tgz#7caa981a34196d06a737754864baf77d64de4bba" + integrity sha512-cBz3tOCI5Fw6NIFEwU3RiwK6mn3nKegjpJuzCndoGq3BZPkUjnsq7uQmIeMNeMbMk7YD2MfKcgCpZwX5jyXqCA== + +"@csstools/selector-resolve-nested@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@csstools/selector-resolve-nested/-/selector-resolve-nested-3.1.0.tgz#848c6f44cb65e3733e478319b9342b7aa436fac7" + integrity sha512-mf1LEW0tJLKfWyvn5KdDrhpxHyuxpbNwTIwOYLIvsTffeyOf85j5oIzfG0yosxDgx/sswlqBnESYUcQH0vgZ0g== + +"@csstools/selector-specificity@^5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz#037817b574262134cabd68fc4ec1a454f168407b" + integrity sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw== + +"@csstools/utilities@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@csstools/utilities/-/utilities-2.0.0.tgz#f7ff0fee38c9ffb5646d47b6906e0bc8868bde60" + integrity sha512-5VdOr0Z71u+Yp3ozOx8T11N703wIFGVRgOWbOZMKgglPJsWA54MRIoMNVMa7shUToIhx5J8vX4sOZgD2XiihiQ== + +"@discoveryjs/json-ext@0.5.7": + version "0.5.7" + 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/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== + dependencies: + "@algolia/autocomplete-core" "1.17.9" + "@algolia/autocomplete-preset-algolia" "1.17.9" + "@docsearch/css" "3.9.0" + algoliasearch "^5.14.2" + +"@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== + dependencies: + "@babel/core" "^7.25.9" + "@babel/generator" "^7.25.9" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-transform-runtime" "^7.25.9" + "@babel/preset-env" "^7.25.9" + "@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" + 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== + 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" + babel-loader "^9.2.1" + clean-css "^5.3.3" + copy-webpack-plugin "^11.0.0" + css-loader "^6.11.0" + css-minimizer-webpack-plugin "^5.0.1" + cssnano "^6.1.2" + file-loader "^6.2.0" + html-minifier-terser "^7.2.0" + mini-css-extract-plugin "^2.9.2" + null-loader "^4.0.1" + postcss "^8.5.4" + postcss-loader "^7.3.4" + postcss-preset-env "^10.2.1" + terser-webpack-plugin "^5.3.9" + 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" + boxen "^6.2.1" + chalk "^4.1.2" + chokidar "^3.5.3" + cli-table3 "^0.6.3" + combine-promises "^1.1.0" + commander "^5.1.0" + core-js "^3.31.1" + detect-port "^1.5.1" + escape-html "^1.0.3" + eta "^2.2.0" + eval "^0.1.8" + execa "5.1.1" + fs-extra "^11.1.1" + html-tags "^3.3.1" + html-webpack-plugin "^5.6.0" + leven "^3.1.0" + lodash "^4.17.21" + open "^8.4.0" + p-map "^4.0.0" + 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-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" + 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-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== + 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== + 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== + dependencies: + "@docusaurus/logger" "3.8.1" + "@docusaurus/utils" "3.8.1" + "@docusaurus/utils-validation" "3.8.1" + "@mdx-js/mdx" "^3.0.0" + "@slorber/remark-comment" "^1.0.0" + escape-html "^1.0.3" + estree-util-value-to-estree "^3.0.1" + file-loader "^6.2.0" + fs-extra "^11.1.1" + image-size "^2.0.2" + mdast-util-mdx "^3.0.0" + mdast-util-to-string "^4.0.0" + rehype-raw "^7.0.0" + remark-directive "^3.0.0" + remark-emoji "^4.0.0" + remark-frontmatter "^5.0.0" + remark-gfm "^4.0.0" + stringify-object "^3.3.0" + tslib "^2.6.0" + unified "^11.0.3" + unist-util-visit "^5.0.0" + url-loader "^4.1.1" + 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== + dependencies: + "@docusaurus/types" "3.8.1" + "@types/history" "^4.7.11" + "@types/react" "*" + "@types/react-router-config" "*" + "@types/react-router-dom" "*" + 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" + cheerio "1.0.0-rc.12" + feed "^4.2.2" + fs-extra "^11.1.1" + lodash "^4.17.21" + schema-dts "^1.1.2" + srcset "^4.0.0" + tslib "^2.6.0" + unist-util-visit "^5.0.0" + 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" + "@types/react-router-config" "^5.0.7" + combine-promises "^1.1.0" + fs-extra "^11.1.1" + js-yaml "^4.1.0" + lodash "^4.17.21" + schema-dts "^1.1.2" + tslib "^2.6.0" + 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== + 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" + 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== + dependencies: + "@docusaurus/core" "3.8.1" + "@docusaurus/types" "3.8.1" + "@docusaurus/utils" "3.8.1" + "@docusaurus/utils-validation" "3.8.1" + 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== + dependencies: + "@docusaurus/core" "3.8.1" + "@docusaurus/types" "3.8.1" + "@docusaurus/utils" "3.8.1" + 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== + dependencies: + "@docusaurus/core" "3.8.1" + "@docusaurus/types" "3.8.1" + "@docusaurus/utils-validation" "3.8.1" + 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== + dependencies: + "@docusaurus/core" "3.8.1" + "@docusaurus/types" "3.8.1" + "@docusaurus/utils-validation" "3.8.1" + "@types/gtag.js" "^0.0.12" + 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== + dependencies: + "@docusaurus/core" "3.8.1" + "@docusaurus/types" "3.8.1" + "@docusaurus/utils-validation" "3.8.1" + tslib "^2.6.0" + +"@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" + 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== + dependencies: + "@docusaurus/core" "3.8.1" + "@docusaurus/types" "3.8.1" + "@docusaurus/utils" "3.8.1" + "@docusaurus/utils-validation" "3.8.1" + "@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" + "@mdx-js/react" "^3.0.0" + clsx "^2.0.0" + copy-text-to-clipboard "^3.2.0" + infima "0.2.0-alpha.45" + lodash "^4.17.21" + nprogress "^0.2.0" + postcss "^8.5.4" + prism-react-renderer "^2.3.0" + prismjs "^1.29.0" + react-router-dom "^5.3.4" + rtlcss "^4.1.0" + 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== + 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" + "@types/history" "^4.7.11" + "@types/react" "*" + "@types/react-router-config" "*" + clsx "^2.0.0" + parse-numeric-range "^1.3.0" + prism-react-renderer "^2.3.0" + 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" + clsx "^2.0.0" + eta "^2.2.0" + fs-extra "^11.1.1" + lodash "^4.17.21" + 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== + 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== + dependencies: + "@mdx-js/mdx" "^3.0.0" + "@types/history" "^4.7.11" + "@types/react" "*" + commander "^5.1.0" + joi "^17.9.2" + react-helmet-async "npm:@slorber/react-helmet-async@1.3.0" + utility-types "^3.10.0" + 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== + dependencies: + "@docusaurus/types" "3.8.1" + 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== + dependencies: + "@docusaurus/logger" "3.8.1" + "@docusaurus/utils" "3.8.1" + "@docusaurus/utils-common" "3.8.1" + 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== + dependencies: + "@docusaurus/logger" "3.8.1" + "@docusaurus/types" "3.8.1" + "@docusaurus/utils-common" "3.8.1" + escape-string-regexp "^4.0.0" + 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" + micromatch "^4.0.5" + p-queue "^6.6.2" + prompts "^2.4.2" + resolve-pathname "^3.0.0" + tslib "^2.6.0" + url-loader "^4.1.1" + utility-types "^3.10.0" + webpack "^5.88.1" + +"@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" + integrity sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ== + dependencies: + "@babel/helper-module-imports" "^7.16.7" + "@babel/runtime" "^7.18.3" + "@emotion/hash" "^0.9.2" + "@emotion/memoize" "^0.9.0" + "@emotion/serialize" "^1.3.3" + babel-plugin-macros "^3.1.0" + convert-source-map "^1.5.0" + escape-string-regexp "^4.0.0" + find-root "^1.1.0" + source-map "^0.5.7" + stylis "4.2.0" + +"@emotion/cache@^11.14.0": + version "11.14.0" + resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.14.0.tgz#ee44b26986eeb93c8be82bb92f1f7a9b21b2ed76" + integrity sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA== + dependencies: + "@emotion/memoize" "^0.9.0" + "@emotion/sheet" "^1.4.0" + "@emotion/utils" "^1.4.2" + "@emotion/weak-memoize" "^0.4.0" + stylis "4.2.0" + +"@emotion/hash@^0.9.2": + version "0.9.2" + resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.2.tgz#ff9221b9f58b4dfe61e619a7788734bd63f6898b" + integrity sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g== + +"@emotion/is-prop-valid@^1.3.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.4.0.tgz#e9ad47adff0b5c94c72db3669ce46de33edf28c0" + integrity sha512-QgD4fyscGcbbKwJmqNvUMSE02OsHUa+lAWKdEUIJKgqe5IwRSKd7+KhibEWdaKwgjLj0DRSHA9biAIqGBk05lw== + dependencies: + "@emotion/memoize" "^0.9.0" + +"@emotion/memoize@^0.9.0": + version "0.9.0" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.9.0.tgz#745969d649977776b43fc7648c556aaa462b4102" + integrity sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ== + +"@emotion/react@^11.14.0": + version "11.14.0" + resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.14.0.tgz#cfaae35ebc67dd9ef4ea2e9acc6cd29e157dd05d" + integrity sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA== + dependencies: + "@babel/runtime" "^7.18.3" + "@emotion/babel-plugin" "^11.13.5" + "@emotion/cache" "^11.14.0" + "@emotion/serialize" "^1.3.3" + "@emotion/use-insertion-effect-with-fallbacks" "^1.2.0" + "@emotion/utils" "^1.4.2" + "@emotion/weak-memoize" "^0.4.0" + hoist-non-react-statics "^3.3.1" + +"@emotion/serialize@^1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.3.3.tgz#d291531005f17d704d0463a032fe679f376509e8" + integrity sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA== + dependencies: + "@emotion/hash" "^0.9.2" + "@emotion/memoize" "^0.9.0" + "@emotion/unitless" "^0.10.0" + "@emotion/utils" "^1.4.2" + csstype "^3.0.2" + +"@emotion/sheet@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.4.0.tgz#c9299c34d248bc26e82563735f78953d2efca83c" + integrity sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg== + +"@emotion/styled@^11.14.1": + version "11.14.1" + resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-11.14.1.tgz#8c34bed2948e83e1980370305614c20955aacd1c" + integrity sha512-qEEJt42DuToa3gurlH4Qqc1kVpNq8wO8cJtDzU46TjlzWjDlsVyevtYCRijVq3SrHsROS+gVQ8Fnea108GnKzw== + dependencies: + "@babel/runtime" "^7.18.3" + "@emotion/babel-plugin" "^11.13.5" + "@emotion/is-prop-valid" "^1.3.0" + "@emotion/serialize" "^1.3.3" + "@emotion/use-insertion-effect-with-fallbacks" "^1.2.0" + "@emotion/utils" "^1.4.2" + +"@emotion/unitless@^0.10.0": + version "0.10.0" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.10.0.tgz#2af2f7c7e5150f497bdabd848ce7b218a27cf745" + integrity sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg== + +"@emotion/use-insertion-effect-with-fallbacks@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz#8a8cb77b590e09affb960f4ff1e9a89e532738bf" + integrity sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg== + +"@emotion/utils@^1.4.2": + version "1.4.2" + resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.4.2.tgz#6df6c45881fcb1c412d6688a311a98b7f59c1b52" + integrity sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA== + +"@emotion/weak-memoize@^0.4.0": + version "0.4.0" + resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz#5e13fac887f08c44f76b0ccaf3370eb00fec9bb6" + integrity sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg== + +"@hapi/hoek@^9.0.0", "@hapi/hoek@^9.3.0": + version "9.3.0" + resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" + integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== + +"@hapi/topo@^5.1.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012" + integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg== + dependencies: + "@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== + dependencies: + "@iconify/types" "^2.0.0" + +"@iconify/types@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@iconify/types/-/types-2.0.0.tgz#ab0e9ea681d6c8a1214f30cd741fe3a20cc57f57" + integrity sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg== + +"@jest/schemas@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" + integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== + dependencies: + "@sinclair/typebox" "^0.27.8" + +"@jest/types@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" + integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw== + dependencies: + "@jest/schemas" "^29.6.3" + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^17.0.8" + chalk "^4.0.0" + +"@jridgewell/gen-mapping@^0.3.12", "@jridgewell/gen-mapping@^0.3.5": + version "0.3.13" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz#6342a19f44347518c93e43b1ac69deb3c4656a1f" + integrity sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA== + dependencies: + "@jridgewell/sourcemap-codec" "^1.5.0" + "@jridgewell/trace-mapping" "^0.3.24" + +"@jridgewell/remapping@^2.3.5": + version "2.3.5" + resolved "https://registry.yarnpkg.com/@jridgewell/remapping/-/remapping-2.3.5.tgz#375c476d1972947851ba1e15ae8f123047445aa1" + integrity sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ== + dependencies: + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.24" + +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + +"@jridgewell/source-map@^0.3.3": + version "0.3.11" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.11.tgz#b21835cbd36db656b857c2ad02ebd413cc13a9ba" + integrity sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA== + dependencies: + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" + +"@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0": + version "1.5.5" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz#6912b00d2c631c0d15ce1a7ab57cd657f2a8f8ba" + integrity sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og== + +"@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25", "@jridgewell/trace-mapping@^0.3.28": + version "0.3.31" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz#db15d6781c931f3a251a3dac39501c98a6082fd0" + integrity sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + +"@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" + integrity sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw== + +"@mdx-js/mdx@^3.0.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@mdx-js/mdx/-/mdx-3.1.1.tgz#c5ffd991a7536b149e17175eee57a1a2a511c6d1" + integrity sha512-f6ZO2ifpwAQIpzGWaBQT2TXxPv6z3RBzQKpVftEWN78Vl/YweF1uwussDx8ECAXVtr3Rs89fKyG9YlzUs9DyGQ== + dependencies: + "@types/estree" "^1.0.0" + "@types/estree-jsx" "^1.0.0" + "@types/hast" "^3.0.0" + "@types/mdx" "^2.0.0" + acorn "^8.0.0" + collapse-white-space "^2.0.0" + devlop "^1.0.0" + estree-util-is-identifier-name "^3.0.0" + estree-util-scope "^1.0.0" + estree-walker "^3.0.0" + hast-util-to-jsx-runtime "^2.0.0" + markdown-extensions "^2.0.0" + recma-build-jsx "^1.0.0" + recma-jsx "^1.0.0" + recma-stringify "^1.0.0" + rehype-recma "^1.0.0" + remark-mdx "^3.0.0" + remark-parse "^11.0.0" + remark-rehype "^11.0.0" + source-map "^0.7.0" + unified "^11.0.0" + unist-util-position-from-estree "^2.0.0" + unist-util-stringify-position "^4.0.0" + unist-util-visit "^5.0.0" + vfile "^6.0.0" + +"@mdx-js/react@^3.0.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@mdx-js/react/-/react-3.1.1.tgz#24bda7fffceb2fe256f954482123cda1be5f5fef" + integrity sha512-f++rKLQgUVYDAtECQ6fn/is15GkEH9+nZPM3MS0RcxVqoTfawHvDlSCH7JbMhAM6uJ32v3eXLvLmLvjGu7PTQw== + 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== + +"@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== + dependencies: + "@babel/runtime" "^7.28.3" + +"@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" + "@popperjs/core" "^2.11.8" + "@types/react-transition-group" "^4.4.12" + clsx "^2.1.1" + csstype "^3.1.3" + prop-types "^15.8.1" + react-is "^19.1.1" + 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== + dependencies: + "@babel/runtime" "^7.28.3" + "@mui/utils" "^7.3.2" + 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== + dependencies: + "@babel/runtime" "^7.28.3" + "@emotion/cache" "^11.14.0" + "@emotion/serialize" "^1.3.3" + "@emotion/sheet" "^1.4.0" + csstype "^3.1.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== + 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" + clsx "^2.1.1" + csstype "^3.1.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== + dependencies: + "@babel/runtime" "^7.28.3" + +"@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== + dependencies: + "@babel/runtime" "^7.28.3" + "@mui/types" "^7.4.6" + "@types/prop-types" "^15.7.15" + clsx "^2.1.1" + prop-types "^15.8.1" + react-is "^19.1.1" + +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== + dependencies: + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== + +"@nodelib/fs.walk@^1.2.3": + version "1.2.8" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== + dependencies: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.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" + integrity sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w== + +"@pnpm/network.ca-file@^1.0.1": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz#2ab05e09c1af0cdf2fcf5035bea1484e222f7983" + integrity sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA== + 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== + dependencies: + "@pnpm/config.env-replace" "^1.1.0" + "@pnpm/network.ca-file" "^1.0.1" + config-chain "^1.1.11" + +"@polka/url@^1.0.0-next.24": + version "1.0.0-next.29" + resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.29.tgz#5a40109a1ab5f84d6fd8fc928b19f367cbe7e7b1" + integrity sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww== + +"@popperjs/core@^2.11.8": + version "2.11.8" + resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" + integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== + +"@sideway/address@^4.1.5": + version "4.1.5" + resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.5.tgz#4bc149a0076623ced99ca8208ba780d65a99b9d5" + integrity sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q== + dependencies: + "@hapi/hoek" "^9.0.0" + +"@sideway/formula@^3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.1.tgz#80fcbcbaf7ce031e0ef2dd29b1bfc7c3f583611f" + integrity sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg== + +"@sideway/pinpoint@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df" + 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== + +"@sindresorhus/is@^4.6.0": + version "4.6.0" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f" + integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw== + +"@sindresorhus/is@^5.2.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-5.6.0.tgz#41dd6093d34652cddb5d5bdeee04eafc33826668" + integrity sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g== + +"@slorber/remark-comment@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@slorber/remark-comment/-/remark-comment-1.0.0.tgz#2a020b3f4579c89dec0361673206c28d67e08f5a" + integrity sha512-RCE24n7jsOj1M0UPvIQCHTe7fI0sFL4S2nwKVWwHyVr/wI/H8GosgsJGyhnsZoGFnD/P2hLf1mSbrrgSLN93NA== + dependencies: + micromark-factory-space "^1.0.0" + micromark-util-character "^1.1.0" + micromark-util-symbol "^1.0.1" + +"@svgr/babel-plugin-add-jsx-attribute@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz#4001f5d5dd87fa13303e36ee106e3ff3a7eb8b22" + integrity sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g== + +"@svgr/babel-plugin-remove-jsx-attribute@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-8.0.0.tgz#69177f7937233caca3a1afb051906698f2f59186" + integrity sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA== + +"@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-8.0.0.tgz#c2c48104cfd7dcd557f373b70a56e9e3bdae1d44" + integrity sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA== + +"@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-8.0.0.tgz#8fbb6b2e91fa26ac5d4aa25c6b6e4f20f9c0ae27" + integrity sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ== + +"@svgr/babel-plugin-svg-dynamic-title@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-8.0.0.tgz#1d5ba1d281363fc0f2f29a60d6d936f9bbc657b0" + integrity sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og== + +"@svgr/babel-plugin-svg-em-dimensions@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-8.0.0.tgz#35e08df300ea8b1d41cb8f62309c241b0369e501" + integrity sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g== + +"@svgr/babel-plugin-transform-react-native-svg@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-8.1.0.tgz#90a8b63998b688b284f255c6a5248abd5b28d754" + integrity sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q== + +"@svgr/babel-plugin-transform-svg-component@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-8.0.0.tgz#013b4bfca88779711f0ed2739f3f7efcefcf4f7e" + integrity sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw== + +"@svgr/babel-preset@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-preset/-/babel-preset-8.1.0.tgz#0e87119aecdf1c424840b9d4565b7137cabf9ece" + integrity sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug== + dependencies: + "@svgr/babel-plugin-add-jsx-attribute" "8.0.0" + "@svgr/babel-plugin-remove-jsx-attribute" "8.0.0" + "@svgr/babel-plugin-remove-jsx-empty-expression" "8.0.0" + "@svgr/babel-plugin-replace-jsx-attribute-value" "8.0.0" + "@svgr/babel-plugin-svg-dynamic-title" "8.0.0" + "@svgr/babel-plugin-svg-em-dimensions" "8.0.0" + "@svgr/babel-plugin-transform-react-native-svg" "8.1.0" + "@svgr/babel-plugin-transform-svg-component" "8.0.0" + +"@svgr/core@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@svgr/core/-/core-8.1.0.tgz#41146f9b40b1a10beaf5cc4f361a16a3c1885e88" + integrity sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA== + dependencies: + "@babel/core" "^7.21.3" + "@svgr/babel-preset" "8.1.0" + camelcase "^6.2.0" + cosmiconfig "^8.1.3" + snake-case "^3.0.4" + +"@svgr/hast-util-to-babel-ast@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-8.0.0.tgz#6952fd9ce0f470e1aded293b792a2705faf4ffd4" + integrity sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q== + dependencies: + "@babel/types" "^7.21.3" + entities "^4.4.0" + +"@svgr/plugin-jsx@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@svgr/plugin-jsx/-/plugin-jsx-8.1.0.tgz#96969f04a24b58b174ee4cd974c60475acbd6928" + integrity sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA== + dependencies: + "@babel/core" "^7.21.3" + "@svgr/babel-preset" "8.1.0" + "@svgr/hast-util-to-babel-ast" "8.0.0" + svg-parser "^2.0.4" + +"@svgr/plugin-svgo@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@svgr/plugin-svgo/-/plugin-svgo-8.1.0.tgz#b115b7b967b564f89ac58feae89b88c3decd0f00" + integrity sha512-Ywtl837OGO9pTLIN/onoWLmDQ4zFUycI1g76vuKGEz6evR/ZTJlJuz3G/fIkb6OVBJ2g0o6CGJzaEjfmEo3AHA== + dependencies: + cosmiconfig "^8.1.3" + deepmerge "^4.3.1" + svgo "^3.0.2" + +"@svgr/webpack@^8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-8.1.0.tgz#16f1b5346f102f89fda6ec7338b96a701d8be0c2" + integrity sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA== + dependencies: + "@babel/core" "^7.21.3" + "@babel/plugin-transform-react-constant-elements" "^7.21.3" + "@babel/preset-env" "^7.20.2" + "@babel/preset-react" "^7.18.6" + "@babel/preset-typescript" "^7.21.0" + "@svgr/core" "8.1.0" + "@svgr/plugin-jsx" "8.1.0" + "@svgr/plugin-svgo" "8.1.0" + +"@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" + integrity sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw== + 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== + +"@types/body-parser@*": + version "1.19.6" + resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.6.tgz#1859bebb8fd7dac9918a45d54c1971ab8b5af474" + integrity sha512-HLFeCYgz89uk22N5Qg3dvGvsv46B8GLvKKo1zKG4NybA8U2DiEO3w9lqGg29t/tfLRJpJ6iQxnVw4OnB7MoM9g== + dependencies: + "@types/connect" "*" + "@types/node" "*" + +"@types/bonjour@^3.5.9": + 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": + 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== + dependencies: + "@types/express-serve-static-core" "*" + "@types/node" "*" + +"@types/connect@*": + version "3.4.38" + resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.38.tgz#5ba7f3bc4fbbdeaff8dded952e5ff2cc53f8d858" + integrity sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug== + 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== + dependencies: + "@types/ms" "*" + +"@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== + dependencies: + "@types/eslint" "*" + "@types/estree" "*" + +"@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== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/estree-jsx@^1.0.0": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@types/estree-jsx/-/estree-jsx-1.0.5.tgz#858a88ea20f34fe65111f005a689fa1ebf70dc18" + integrity sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg== + dependencies: + "@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== + +"@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== + 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== + dependencies: + "@types/node" "*" + "@types/qs" "*" + "@types/range-parser" "*" + "@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== + dependencies: + "@types/body-parser" "*" + "@types/express-serve-static-core" "^5.0.0" + "@types/serve-static" "*" + +"@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== + dependencies: + "@types/body-parser" "*" + "@types/express-serve-static-core" "^4.17.33" + "@types/qs" "*" + "@types/serve-static" "*" + +"@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/hast@^3.0.0": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/hast/-/hast-3.0.4.tgz#1d6b39993b82cea6ad783945b0508c25903e15aa" + integrity sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ== + dependencies: + "@types/unist" "*" + +"@types/history@^4.7.11": + version "4.7.11" + resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.11.tgz#56588b17ae8f50c53983a524fc3cc47437969d64" + integrity sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA== + +"@types/html-minifier-terser@^6.0.0": + version "6.1.0" + resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35" + 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== + +"@types/http-errors@*": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-2.0.5.tgz#5b749ab2b16ba113423feb1a64a95dcd30398472" + 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== + dependencies: + "@types/node" "*" + +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": + version "2.0.6" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" + integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w== + +"@types/istanbul-lib-report@*": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz#53047614ae72e19fc0401d872de3ae2b4ce350bf" + integrity sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA== + dependencies: + "@types/istanbul-lib-coverage" "*" + +"@types/istanbul-reports@^3.0.0": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz#0f03e3d2f670fbdac586e34b433783070cc16f54" + integrity sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ== + 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": + version "7.0.15" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" + integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== + +"@types/mdast@^4.0.0", "@types/mdast@^4.0.2": + version "4.0.4" + resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-4.0.4.tgz#7ccf72edd2f1aa7dd3437e180c64373585804dd6" + integrity sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA== + dependencies: + "@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== + +"@types/mime@^1": + version "1.3.5" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.5.tgz#1ef302e01cf7d2b5a0fa526790c9123bf1d06690" + integrity sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w== + +"@types/ms@*": + version "2.1.0" + 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== + dependencies: + undici-types "~7.11.0" + +"@types/node@^17.0.5": + version "17.0.45" + resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.45.tgz#2c0fafd78705e7a18b7906b5201a522719dc5190" + integrity sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw== + +"@types/parse-json@^4.0.0": + version "4.0.2" + resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.2.tgz#5950e50960793055845e956c427fc2b0d70c5239" + 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== + +"@types/prop-types@^15.7.15": + version "15.7.15" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.15.tgz#e6e5a86d602beaca71ce5163fadf5f95d70931c7" + 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== + +"@types/range-parser@*": + version "1.2.7" + resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.7.tgz#50ae4353eaaddc04044279812f52c8c65857dbcb" + integrity sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ== + +"@types/react-router-config@*", "@types/react-router-config@^5.0.7": + version "5.0.11" + resolved "https://registry.yarnpkg.com/@types/react-router-config/-/react-router-config-5.0.11.tgz#2761a23acc7905a66a94419ee40294a65aaa483a" + integrity sha512-WmSAg7WgqW7m4x8Mt4N6ZyKz0BubSj/2tVUMsAHp+Yd2AMwcSbeFq9WympT19p5heCFmF97R9eD5uUR/t4HEqw== + dependencies: + "@types/history" "^4.7.11" + "@types/react" "*" + "@types/react-router" "^5.1.0" + +"@types/react-router-dom@*": + version "5.3.3" + resolved "https://registry.yarnpkg.com/@types/react-router-dom/-/react-router-dom-5.3.3.tgz#e9d6b4a66fcdbd651a5f106c2656a30088cc1e83" + integrity sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw== + dependencies: + "@types/history" "^4.7.11" + "@types/react" "*" + "@types/react-router" "*" + +"@types/react-router@*", "@types/react-router@^5.1.0": + version "5.1.20" + resolved "https://registry.yarnpkg.com/@types/react-router/-/react-router-5.1.20.tgz#88eccaa122a82405ef3efbcaaa5dcdd9f021387c" + integrity sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q== + dependencies: + "@types/history" "^4.7.11" + "@types/react" "*" + +"@types/react-transition-group@^4.4.12": + version "4.4.12" + resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.12.tgz#b5d76568485b02a307238270bfe96cb51ee2a044" + 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== + dependencies: + csstype "^3.0.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/sax@^1.2.1": + version "1.2.7" + resolved "https://registry.yarnpkg.com/@types/sax/-/sax-1.2.7.tgz#ba5fe7df9aa9c89b6dff7688a19023dd2963091d" + integrity sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A== + dependencies: + "@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== + dependencies: + "@types/mime" "^1" + "@types/node" "*" + +"@types/serve-index@^1.9.1": + 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== + dependencies: + "@types/http-errors" "*" + "@types/node" "*" + "@types/send" "*" + +"@types/sockjs@^0.3.33": + 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/unist@*", "@types/unist@^3.0.0": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.3.tgz#acaab0f919ce69cce629c2d4ed2eb4adc1b6c20c" + integrity sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q== + +"@types/unist@^2.0.0": + version "2.0.11" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.11.tgz#11af57b127e32487774841f7a4e54eab166d03c4" + integrity sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA== + +"@types/ws@^8.5.5": + version "8.18.1" + resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.18.1.tgz#48464e4bf2ddfd17db13d845467f6070ffea4aa9" + integrity sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg== + dependencies: + "@types/node" "*" + +"@types/yargs-parser@*": + version "21.0.3" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" + 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== + 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== + +"@webassemblyjs/ast@1.14.1", "@webassemblyjs/ast@^1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.14.1.tgz#a9f6a07f2b03c95c8d38c4536a1fdfb521ff55b6" + integrity sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ== + dependencies: + "@webassemblyjs/helper-numbers" "1.13.2" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + +"@webassemblyjs/floating-point-hex-parser@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz#fcca1eeddb1cc4e7b6eed4fc7956d6813b21b9fb" + integrity sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA== + +"@webassemblyjs/helper-api-error@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz#e0a16152248bc38daee76dd7e21f15c5ef3ab1e7" + integrity sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ== + +"@webassemblyjs/helper-buffer@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz#822a9bc603166531f7d5df84e67b5bf99b72b96b" + integrity sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA== + +"@webassemblyjs/helper-numbers@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz#dbd932548e7119f4b8a7877fd5a8d20e63490b2d" + integrity sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA== + dependencies: + "@webassemblyjs/floating-point-hex-parser" "1.13.2" + "@webassemblyjs/helper-api-error" "1.13.2" + "@xtuc/long" "4.2.2" + +"@webassemblyjs/helper-wasm-bytecode@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz#e556108758f448aae84c850e593ce18a0eb31e0b" + integrity sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA== + +"@webassemblyjs/helper-wasm-section@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz#9629dda9c4430eab54b591053d6dc6f3ba050348" + integrity sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw== + dependencies: + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-buffer" "1.14.1" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + "@webassemblyjs/wasm-gen" "1.14.1" + +"@webassemblyjs/ieee754@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz#1c5eaace1d606ada2c7fd7045ea9356c59ee0dba" + integrity sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw== + dependencies: + "@xtuc/ieee754" "^1.2.0" + +"@webassemblyjs/leb128@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.13.2.tgz#57c5c3deb0105d02ce25fa3fd74f4ebc9fd0bbb0" + integrity sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw== + dependencies: + "@xtuc/long" "4.2.2" + +"@webassemblyjs/utf8@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.13.2.tgz#917a20e93f71ad5602966c2d685ae0c6c21f60f1" + integrity sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ== + +"@webassemblyjs/wasm-edit@^1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz#ac6689f502219b59198ddec42dcd496b1004d597" + integrity sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ== + dependencies: + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-buffer" "1.14.1" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + "@webassemblyjs/helper-wasm-section" "1.14.1" + "@webassemblyjs/wasm-gen" "1.14.1" + "@webassemblyjs/wasm-opt" "1.14.1" + "@webassemblyjs/wasm-parser" "1.14.1" + "@webassemblyjs/wast-printer" "1.14.1" + +"@webassemblyjs/wasm-gen@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz#991e7f0c090cb0bb62bbac882076e3d219da9570" + integrity sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg== + dependencies: + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + "@webassemblyjs/ieee754" "1.13.2" + "@webassemblyjs/leb128" "1.13.2" + "@webassemblyjs/utf8" "1.13.2" + +"@webassemblyjs/wasm-opt@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz#e6f71ed7ccae46781c206017d3c14c50efa8106b" + integrity sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw== + dependencies: + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-buffer" "1.14.1" + "@webassemblyjs/wasm-gen" "1.14.1" + "@webassemblyjs/wasm-parser" "1.14.1" + +"@webassemblyjs/wasm-parser@1.14.1", "@webassemblyjs/wasm-parser@^1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz#b3e13f1893605ca78b52c68e54cf6a865f90b9fb" + integrity sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ== + dependencies: + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-api-error" "1.13.2" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + "@webassemblyjs/ieee754" "1.13.2" + "@webassemblyjs/leb128" "1.13.2" + "@webassemblyjs/utf8" "1.13.2" + +"@webassemblyjs/wast-printer@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz#3bb3e9638a8ae5fdaf9610e7a06b4d9f9aa6fe07" + integrity sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw== + dependencies: + "@webassemblyjs/ast" "1.14.1" + "@xtuc/long" "4.2.2" + +"@xtuc/ieee754@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" + integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== + +"@xtuc/long@4.2.2": + version "4.2.2" + 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: + 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== + dependencies: + mime-types "~2.1.34" + negotiator "0.6.3" + +acorn-import-phases@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/acorn-import-phases/-/acorn-import-phases-1.0.4.tgz#16eb850ba99a056cb7cbfe872ffb8972e18c8bd7" + integrity sha512-wKmbr/DDiIXzEOiWrTTUcDm24kQ2vGfZQvM2fwg2vXqR5uW6aapr7ObPtj1th32b9u90/Pf4AItvdTh42fBmVQ== + +acorn-jsx@^5.0.0: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + 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== + 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== + +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== + +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + +ajv-formats@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" + integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA== + dependencies: + ajv "^8.0.0" + +ajv-keywords@^3.5.2: + version "3.5.2" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" + integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== + +ajv-keywords@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16" + integrity sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw== + dependencies: + 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== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + 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== + 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== + 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" + +ansi-align@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59" + integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w== + 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" + integrity sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw== + +ansi-regex@^5.0.1: + version "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: + 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: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +ansi-styles@^6.1.0: + version "6.2.3" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.3.tgz#c044d5dcc521a076413472597a1acb1f103c4041" + integrity sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg== + +anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +arg@^5.0.0: + version "5.0.2" + 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" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== + +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + +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== + dependencies: + browserslist "^4.24.4" + caniuse-lite "^1.0.30001702" + fraction.js "^4.3.7" + normalize-range "^0.1.2" + picocolors "^1.1.1" + postcss-value-parser "^4.2.0" + +babel-loader@^9.2.1: + version "9.2.1" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-9.2.1.tgz#04c7835db16c246dd19ba0914418f3937797587b" + integrity sha512-fqe8naHt46e0yIdkjUZYqddSXfej3AHajX+CSO5X7oy0EmPc6o5Xh+RClNoHjnieWz9AW4kZxW9yyFMhVB1QLA== + dependencies: + find-cache-dir "^4.0.0" + schema-utils "^4.0.0" + +babel-plugin-dynamic-import-node@^2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" + integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ== + dependencies: + object.assign "^4.1.0" + +babel-plugin-macros@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1" + integrity sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg== + dependencies: + "@babel/runtime" "^7.12.5" + 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== + dependencies: + "@babel/compat-data" "^7.27.7" + "@babel/helper-define-polyfill-provider" "^0.6.5" + semver "^6.3.1" + +babel-plugin-polyfill-corejs3@^0.13.0: + version "0.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.13.0.tgz#bb7f6aeef7addff17f7602a08a6d19a128c30164" + integrity sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A== + dependencies: + "@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== + dependencies: + "@babel/helper-define-polyfill-provider" "^0.6.5" + +bail@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/bail/-/bail-2.0.2.tgz#d26f5cd8fe5d6f832a31517b9f7c356040ba6d5d" + integrity sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw== + +balanced-match@^1.0.0: + version "1.0.2" + 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== + +batch@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" + integrity sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw== + +big.js@^5.2.2: + version "5.2.2" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" + integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== + +binary-extensions@^2.0.0: + version "2.3.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== + 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" + type-is "~1.6.18" + 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== + dependencies: + fast-deep-equal "^3.1.3" + multicast-dns "^7.2.5" + +boolbase@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== + +boxen@^6.2.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-6.2.1.tgz#b098a2278b2cd2845deef2dff2efc38d329b434d" + integrity sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw== + dependencies: + ansi-align "^3.0.1" + camelcase "^6.2.0" + chalk "^4.1.2" + cli-boxes "^3.0.0" + string-width "^5.0.1" + type-fest "^2.5.0" + widest-line "^4.0.1" + wrap-ansi "^8.0.1" + +boxen@^7.0.0: + version "7.1.1" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-7.1.1.tgz#f9ba525413c2fec9cdb88987d835c4f7cad9c8f4" + integrity sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog== + dependencies: + ansi-align "^3.0.1" + camelcase "^7.0.1" + chalk "^5.2.0" + cli-boxes "^3.0.0" + string-width "^5.1.2" + type-fest "^2.13.0" + widest-line "^4.0.1" + 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== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^3.0.3, braces@~3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== + 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== + 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" + +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== + +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: + version "3.1.2" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" + integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== + +cacheable-lookup@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz#3476a8215d046e5a3202a9209dd13fec1f933a27" + integrity sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w== + +cacheable-request@^10.2.8: + version "10.2.14" + resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-10.2.14.tgz#eb915b665fda41b79652782df3f553449c406b9d" + integrity sha512-zkDT5WAF4hSSoUgyfg5tFIxz8XQK+25W/TLVojJTMKBaxevLBBtLxgqguAuVQB8PVW79FVjHcU+GJ9tVbDZ9mQ== + dependencies: + "@types/http-cache-semantics" "^4.0.2" + get-stream "^6.0.1" + http-cache-semantics "^4.1.1" + keyv "^4.5.3" + mimic-response "^4.0.0" + 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: + 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== + dependencies: + es-errors "^1.3.0" + 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== + dependencies: + call-bind-apply-helpers "^1.0.0" + es-define-property "^1.0.0" + get-intrinsic "^1.2.4" + set-function-length "^1.2.2" + +call-bound@^1.0.2, call-bound@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a" + integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== + dependencies: + call-bind-apply-helpers "^1.0.2" + get-intrinsic "^1.3.0" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camel-case@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" + integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== + dependencies: + pascal-case "^3.1.2" + tslib "^2.0.3" + +camelcase@^6.2.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== + +camelcase@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-7.0.1.tgz#f02e50af9fd7782bc8b88a3558c32fd3a388f048" + integrity sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw== + +caniuse-api@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" + integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== + dependencies: + browserslist "^4.0.0" + caniuse-lite "^1.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== + +ccount@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5" + integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg== + +chalk@^4.0.0, chalk@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chalk@^5.0.1, chalk@^5.2.0: + version "5.6.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.6.2.tgz#b1238b6e23ea337af71c7f8a295db5af0c158aea" + integrity sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA== + +char-regex@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== + +character-entities-html4@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-2.1.0.tgz#1f1adb940c971a4b22ba39ddca6b618dc6e56b2b" + integrity sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA== + +character-entities-legacy@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz#76bc83a90738901d7bc223a9e93759fdd560125b" + integrity sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ== + +character-entities@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-2.0.2.tgz#2d09c2e72cd9523076ccb21157dff66ad43fcc22" + integrity sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ== + +character-reference-invalid@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz#85c66b041e43b47210faf401278abf808ac45cb9" + integrity sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw== + +cheerio-select@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-2.1.0.tgz#4d8673286b8126ca2a8e42740d5e3c4884ae21b4" + integrity sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g== + dependencies: + boolbase "^1.0.0" + css-select "^5.1.0" + css-what "^6.1.0" + domelementtype "^2.3.0" + domhandler "^5.0.3" + domutils "^3.0.1" + +cheerio@1.0.0-rc.12: + version "1.0.0-rc.12" + resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.12.tgz#788bf7466506b1c6bf5fae51d24a2c4d62e47683" + integrity sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q== + dependencies: + cheerio-select "^2.1.0" + dom-serializer "^2.0.0" + domhandler "^5.0.3" + domutils "^3.0.1" + htmlparser2 "^8.0.1" + parse5 "^7.0.0" + parse5-htmlparser2-tree-adapter "^7.0.0" + +chokidar@^3.5.3: + version "3.6.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" + +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" + integrity sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ== + +ci-info@^3.2.0: + version "3.9.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" + integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== + +clean-css@^5.2.2, clean-css@^5.3.3, clean-css@~5.3.2: + version "5.3.3" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.3.3.tgz#b330653cd3bd6b75009cc25c714cae7b93351ccd" + integrity sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg== + dependencies: + source-map "~0.6.0" + +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + +cli-boxes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-3.0.0.tgz#71a10c716feeba005e4504f36329ef0b17cf3145" + integrity sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g== + +cli-table3@^0.6.3: + version "0.6.5" + resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.6.5.tgz#013b91351762739c16a9567c21a04632e449bf2f" + integrity sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ== + dependencies: + string-width "^4.2.0" + optionalDependencies: + "@colors/colors" "1.5.0" + +clipboard@^2.0.11: + version "2.0.11" + resolved "https://registry.yarnpkg.com/clipboard/-/clipboard-2.0.11.tgz#62180360b97dd668b6b3a84ec226975762a70be5" + integrity sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw== + dependencies: + good-listener "^1.2.2" + select "^1.1.2" + tiny-emitter "^2.0.0" + +clone-deep@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" + integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== + dependencies: + is-plain-object "^2.0.4" + kind-of "^6.0.2" + shallow-clone "^3.0.0" + +clsx@^2.0.0, clsx@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999" + integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== + +collapse-white-space@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-2.1.0.tgz#640257174f9f42c740b40f3b55ee752924feefca" + integrity sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw== + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +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== + +colord@^2.9.3: + version "2.9.3" + resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" + integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw== + +colorette@^2.0.10: + version "2.0.20" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" + integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== + +combine-promises@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/combine-promises/-/combine-promises-1.2.0.tgz#5f2e68451862acf85761ded4d9e2af7769c2ca6a" + integrity sha512-VcQB1ziGD0NXrhKxiwyNbCDmRzs/OShMs2GqW2DlU2A/Sd0nQxE1oWDAE5O0ygSx5mgQOn9eIFh7yKPgFRVkPQ== + +comma-separated-tokens@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz#4e89c9458acb61bc8fef19f4529973b2392839ee" + integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg== + +commander@^10.0.0: + version "10.0.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06" + integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug== + +commander@^2.20.0: + version "2.20.3" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== + +commander@^5.1.0: + version "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" + integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== + +common-path-prefix@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/common-path-prefix/-/common-path-prefix-3.0.0.tgz#7d007a7e07c58c4b4d5f433131a19141b29f11e0" + integrity sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w== + +compressible@~2.0.18: + version "2.0.18" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" + integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== + dependencies: + mime-db ">= 1.43.0 < 2" + +compression@^1.7.4: + version "1.8.1" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.8.1.tgz#4a45d909ac16509195a9a28bd91094889c180d79" + integrity sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w== + dependencies: + bytes "3.1.2" + compressible "~2.0.18" + debug "2.6.9" + negotiator "~0.6.4" + on-headers "~1.1.0" + safe-buffer "5.2.1" + vary "~1.1.2" + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +config-chain@^1.1.11: + version "1.1.13" + resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" + integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== + dependencies: + ini "^1.3.4" + proto-list "~1.2.1" + +configstore@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/configstore/-/configstore-6.0.0.tgz#49eca2ebc80983f77e09394a1a56e0aca8235566" + integrity sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA== + dependencies: + dot-prop "^6.0.1" + graceful-fs "^4.2.6" + unique-string "^3.0.0" + write-file-atomic "^3.0.3" + xdg-basedir "^5.0.1" + +connect-history-api-fallback@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz#647264845251a0daf25b97ce87834cace0f5f1c8" + integrity sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA== + +consola@^3.2.3: + version "3.4.2" + resolved "https://registry.yarnpkg.com/consola/-/consola-3.4.2.tgz#5af110145397bb67afdab77013fdc34cae590ea7" + integrity sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA== + +content-disposition@0.5.2: + version "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: + version "0.5.4" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" + integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== + dependencies: + safe-buffer "5.2.1" + +content-type@~1.0.4, content-type@~1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" + integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== + +convert-source-map@^1.5.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== + +convert-source-map@^2.0.0: + version "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@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== + +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== + +copy-webpack-plugin@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz#96d4dbdb5f73d02dd72d0528d1958721ab72e04a" + integrity sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ== + dependencies: + fast-glob "^3.2.11" + glob-parent "^6.0.1" + globby "^13.1.1" + normalize-path "^3.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== + 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== + +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== + +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== + +cosmiconfig@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" + integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.2.1" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.10.0" + +cosmiconfig@^8.1.3, cosmiconfig@^8.3.5: + version "8.3.6" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.3.6.tgz#060a2b871d66dba6c8538ea1118ba1ac16f5fae3" + integrity sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA== + dependencies: + import-fresh "^3.3.0" + js-yaml "^4.1.0" + parse-json "^5.2.0" + path-type "^4.0.0" + +cross-spawn@^7.0.3: + version "7.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +crypto-random-string@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-4.0.0.tgz#5a3cc53d7dd86183df5da0312816ceeeb5bb1fc2" + integrity sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA== + dependencies: + type-fest "^1.0.1" + +css-blank-pseudo@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-7.0.1.tgz#32020bff20a209a53ad71b8675852b49e8d57e46" + integrity sha512-jf+twWGDf6LDoXDUode+nc7ZlrqfaNphrBIBrcmeP3D8yw1uPaix1gCC8LUQUGQ6CycuK2opkbFFWFuq/a94ag== + dependencies: + 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== + +css-has-pseudo@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-7.0.3.tgz#a5ee2daf5f70a2032f3cefdf1e36e7f52a243873" + integrity sha512-oG+vKuGyqe/xvEMoxAQrhi7uY16deJR3i7wwhBerVrGQKSqUC5GiOVxTpM9F9B9hw0J+eKeOWLH7E9gZ1Dr5rA== + dependencies: + "@csstools/selector-specificity" "^5.0.0" + postcss-selector-parser "^7.0.0" + postcss-value-parser "^4.2.0" + +css-loader@^6.11.0: + version "6.11.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.11.0.tgz#33bae3bf6363d0a7c2cf9031c96c744ff54d85ba" + integrity sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g== + dependencies: + icss-utils "^5.1.0" + postcss "^8.4.33" + postcss-modules-extract-imports "^3.1.0" + postcss-modules-local-by-default "^4.0.5" + postcss-modules-scope "^3.2.0" + postcss-modules-values "^4.0.0" + postcss-value-parser "^4.2.0" + semver "^7.5.4" + +css-minimizer-webpack-plugin@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-5.0.1.tgz#33effe662edb1a0bf08ad633c32fa75d0f7ec565" + integrity sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg== + dependencies: + "@jridgewell/trace-mapping" "^0.3.18" + cssnano "^6.0.1" + jest-worker "^29.4.3" + postcss "^8.4.24" + schema-utils "^4.0.1" + serialize-javascript "^6.0.1" + +css-prefers-color-scheme@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-10.0.0.tgz#ba001b99b8105b8896ca26fc38309ddb2278bd3c" + integrity sha512-VCtXZAWivRglTZditUfB4StnsWr6YVZ2PRtuxQLKTNRdtAf8tpzaVPE9zXIF3VaSc7O70iK/j1+NXxyQCqdPjQ== + +css-select@^4.1.3: + version "4.3.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" + integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ== + dependencies: + boolbase "^1.0.0" + css-what "^6.0.1" + domhandler "^4.3.1" + domutils "^2.8.0" + nth-check "^2.0.1" + +css-select@^5.1.0: + version "5.2.2" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-5.2.2.tgz#01b6e8d163637bb2dd6c982ca4ed65863682786e" + integrity sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw== + dependencies: + boolbase "^1.0.0" + css-what "^6.1.0" + domhandler "^5.0.2" + domutils "^3.0.1" + nth-check "^2.0.1" + +css-tree@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-2.3.1.tgz#10264ce1e5442e8572fc82fbe490644ff54b5c20" + integrity sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw== + dependencies: + mdn-data "2.0.30" + source-map-js "^1.0.1" + +css-tree@~2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-2.2.1.tgz#36115d382d60afd271e377f9c5f67d02bd48c032" + integrity sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA== + dependencies: + mdn-data "2.0.28" + source-map-js "^1.0.1" + +css-what@^6.0.1, css-what@^6.1.0: + version "6.2.2" + 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== + +cssesc@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + +cssnano-preset-advanced@^6.1.2: + version "6.1.2" + resolved "https://registry.yarnpkg.com/cssnano-preset-advanced/-/cssnano-preset-advanced-6.1.2.tgz#82b090872b8f98c471f681d541c735acf8b94d3f" + integrity sha512-Nhao7eD8ph2DoHolEzQs5CfRpiEP0xa1HBdnFZ82kvqdmbwVBUr2r1QuQ4t1pi+D1ZpqpcO4T+wy/7RxzJ/WPQ== + dependencies: + autoprefixer "^10.4.19" + browserslist "^4.23.0" + cssnano-preset-default "^6.1.2" + postcss-discard-unused "^6.0.5" + postcss-merge-idents "^6.0.3" + postcss-reduce-idents "^6.0.3" + postcss-zindex "^6.0.2" + +cssnano-preset-default@^6.1.2: + version "6.1.2" + resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz#adf4b89b975aa775f2750c89dbaf199bbd9da35e" + integrity sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg== + dependencies: + browserslist "^4.23.0" + css-declaration-sorter "^7.2.0" + cssnano-utils "^4.0.2" + postcss-calc "^9.0.1" + postcss-colormin "^6.1.0" + postcss-convert-values "^6.1.0" + postcss-discard-comments "^6.0.2" + postcss-discard-duplicates "^6.0.3" + postcss-discard-empty "^6.0.3" + postcss-discard-overridden "^6.0.2" + postcss-merge-longhand "^6.0.5" + postcss-merge-rules "^6.1.1" + postcss-minify-font-values "^6.1.0" + postcss-minify-gradients "^6.0.3" + postcss-minify-params "^6.1.0" + postcss-minify-selectors "^6.0.4" + postcss-normalize-charset "^6.0.2" + postcss-normalize-display-values "^6.0.2" + postcss-normalize-positions "^6.0.2" + postcss-normalize-repeat-style "^6.0.2" + postcss-normalize-string "^6.0.2" + postcss-normalize-timing-functions "^6.0.2" + postcss-normalize-unicode "^6.1.0" + postcss-normalize-url "^6.0.2" + postcss-normalize-whitespace "^6.0.2" + postcss-ordered-values "^6.0.2" + postcss-reduce-initial "^6.1.0" + postcss-reduce-transforms "^6.0.2" + postcss-svgo "^6.0.3" + postcss-unique-selectors "^6.0.4" + +cssnano-utils@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-4.0.2.tgz#56f61c126cd0f11f2eef1596239d730d9fceff3c" + integrity sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ== + +cssnano@^6.0.1, cssnano@^6.1.2: + version "6.1.2" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-6.1.2.tgz#4bd19e505bd37ee7cf0dc902d3d869f6d79c66b8" + integrity sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA== + dependencies: + cssnano-preset-default "^6.1.2" + lilconfig "^3.1.1" + +csso@^5.0.5: + version "5.0.5" + resolved "https://registry.yarnpkg.com/csso/-/csso-5.0.5.tgz#f9b7fe6cc6ac0b7d90781bb16d5e9874303e2ca6" + integrity sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ== + 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== + +debounce@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5" + integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug== + +debug@2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.3.1, debug@^4.4.1: + version "4.4.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" + integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== + dependencies: + 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== + dependencies: + character-entities "^2.0.0" + +decompress-response@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" + integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ== + dependencies: + mimic-response "^3.1.0" + +deep-extend@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== + +deepmerge@^4.3.1: + version "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== + dependencies: + execa "^5.0.0" + +defer-to-connect@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587" + integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg== + +define-data-property@^1.0.1, define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" + +define-lazy-prop@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" + integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== + +define-properties@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== + dependencies: + define-data-property "^1.0.1" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" + +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: + version "2.0.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== + +depd@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== + +dequal@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" + integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== + +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-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== + dependencies: + address "^1.0.1" + debug "4" + +devlop@^1.0.0, devlop@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/devlop/-/devlop-1.1.0.tgz#4db7c2ca4dc6e0e834c30be70c94bbc976dc7018" + integrity sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA== + dependencies: + dequal "^2.0.0" + +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +dns-packet@^5.2.2: + version "5.6.1" + resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-5.6.1.tgz#ae888ad425a9d1478a0674256ab866de1012cf2f" + integrity sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw== + dependencies: + "@leichtgewicht/ip-codec" "^2.0.1" + +dom-converter@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" + integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== + dependencies: + utila "~0.4" + +dom-helpers@^5.0.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902" + integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA== + dependencies: + "@babel/runtime" "^7.8.7" + csstype "^3.0.2" + +dom-serializer@^1.0.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30" + integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag== + dependencies: + domelementtype "^2.0.1" + domhandler "^4.2.0" + entities "^2.0.0" + +dom-serializer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53" + integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg== + dependencies: + domelementtype "^2.3.0" + domhandler "^5.0.2" + entities "^4.2.0" + +domelementtype@^2.0.1, domelementtype@^2.2.0, domelementtype@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" + integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== + +domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" + integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== + dependencies: + domelementtype "^2.2.0" + +domhandler@^5.0.2, domhandler@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31" + integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w== + dependencies: + domelementtype "^2.3.0" + +domutils@^2.5.2, domutils@^2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" + integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== + dependencies: + dom-serializer "^1.0.1" + domelementtype "^2.2.0" + domhandler "^4.2.0" + +domutils@^3.0.1: + version "3.2.2" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.2.2.tgz#edbfe2b668b0c1d97c24baf0f1062b132221bc78" + integrity sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw== + dependencies: + dom-serializer "^2.0.0" + domelementtype "^2.3.0" + domhandler "^5.0.3" + +dot-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" + integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + +dot-prop@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083" + integrity sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA== + dependencies: + is-obj "^2.0.0" + +dunder-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" + integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== + dependencies: + call-bind-apply-helpers "^1.0.1" + es-errors "^1.3.0" + gopd "^1.2.0" + +duplexer@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" + integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== + +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + +ee-first@1.1.1: + version "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== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== + +emojilib@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/emojilib/-/emojilib-2.4.0.tgz#ac518a8bb0d5f76dda57289ccb2fdf9d39ae721e" + integrity sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw== + +emojis-list@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" + integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== + +emoticon@^4.0.1: + version "4.1.0" + 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== + dependencies: + graceful-fs "^4.2.4" + tapable "^2.2.0" + +entities@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" + integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== + +entities@^4.2.0, entities@^4.4.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" + integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== + +entities@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/entities/-/entities-6.0.1.tgz#c28c34a43379ca7f61d074130b2f5f7020a30694" + 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== + dependencies: + is-arrayish "^0.2.1" + +es-define-property@^1.0.0, es-define-property@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" + integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== + +es-errors@^1.3.0: + version "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-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== + dependencies: + es-errors "^1.3.0" + +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" + integrity sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ== + dependencies: + "@types/estree-jsx" "^1.0.0" + devlop "^1.0.0" + estree-util-visit "^2.0.0" + unist-util-position-from-estree "^2.0.0" + +esast-util-from-js@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/esast-util-from-js/-/esast-util-from-js-2.0.1.tgz#5147bec34cc9da44accf52f87f239a40ac3e8225" + integrity sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw== + dependencies: + "@types/estree-jsx" "^1.0.0" + acorn "^8.0.0" + esast-util-from-estree "^2.0.0" + vfile-message "^4.0.0" + +escalade@^3.1.1, escalade@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" + integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== + +escape-goat@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-4.0.0.tgz#9424820331b510b0666b98f7873fe11ac4aa8081" + integrity sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg== + +escape-html@^1.0.3, escape-html@~1.0.3: + version "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" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +escape-string-regexp@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8" + integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw== + +eslint-scope@5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + 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" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^5.2.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== + +estree-util-attach-comments@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/estree-util-attach-comments/-/estree-util-attach-comments-3.0.0.tgz#344bde6a64c8a31d15231e5ee9e297566a691c2d" + integrity sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw== + dependencies: + "@types/estree" "^1.0.0" + +estree-util-build-jsx@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/estree-util-build-jsx/-/estree-util-build-jsx-3.0.1.tgz#b6d0bced1dcc4f06f25cf0ceda2b2dcaf98168f1" + integrity sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ== + dependencies: + "@types/estree-jsx" "^1.0.0" + devlop "^1.0.0" + estree-util-is-identifier-name "^3.0.0" + estree-walker "^3.0.0" + +estree-util-is-identifier-name@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz#0b5ef4c4ff13508b34dcd01ecfa945f61fce5dbd" + integrity sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg== + +estree-util-scope@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/estree-util-scope/-/estree-util-scope-1.0.0.tgz#9cbdfc77f5cb51e3d9ed4ad9c4adbff22d43e585" + integrity sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ== + dependencies: + "@types/estree" "^1.0.0" + devlop "^1.0.0" + +estree-util-to-js@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/estree-util-to-js/-/estree-util-to-js-2.0.0.tgz#10a6fb924814e6abb62becf0d2bc4dea51d04f17" + integrity sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg== + dependencies: + "@types/estree-jsx" "^1.0.0" + astring "^1.8.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== + dependencies: + "@types/estree" "^1.0.0" + +estree-util-visit@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/estree-util-visit/-/estree-util-visit-2.0.0.tgz#13a9a9f40ff50ed0c022f831ddf4b58d05446feb" + integrity sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww== + dependencies: + "@types/estree-jsx" "^1.0.0" + "@types/unist" "^3.0.0" + +estree-walker@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-3.0.3.tgz#67c3e549ec402a487b4fc193d1953a524752340d" + integrity sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g== + dependencies: + "@types/estree" "^1.0.0" + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +eta@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/eta/-/eta-2.2.0.tgz#eb8b5f8c4e8b6306561a455e62cd7492fe3a9b8a" + integrity sha512-UVQ72Rqjy/ZKQalzV5dCCJP80GrmPrMxh6NlNf+erV6ObL0ZFkhCstWRawS85z3smdr3d2wXPsZEY7rDPfGd2g== + +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== + +eval@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/eval/-/eval-0.1.8.tgz#2b903473b8cc1d1989b83a1e7923f883eb357f85" + integrity sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw== + dependencies: + "@types/node" "*" + require-like ">= 0.1.1" + +eventemitter3@^4.0.0, eventemitter3@^4.0.4: + version "4.0.7" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== + +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: + version "5.1.1" + resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.0" + human-signals "^2.1.0" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.1" + onetime "^5.1.2" + 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== + dependencies: + accepts "~1.3.8" + array-flatten "1.1.1" + body-parser "1.20.3" + content-disposition "0.5.4" + content-type "~1.0.4" + 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" + merge-descriptors "1.0.3" + methods "~1.1.2" + on-finished "2.4.1" + parseurl "~1.3.3" + path-to-regexp "0.1.12" + proxy-addr "~2.0.7" + qs "6.13.0" + range-parser "~1.2.1" + safe-buffer "5.2.1" + send "0.19.0" + serve-static "1.16.2" + setprototypeof "1.2.0" + statuses "2.0.1" + type-is "~1.6.18" + utils-merge "1.0.1" + vary "~1.1.2" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== + dependencies: + is-extendable "^0.1.0" + +extend@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + version "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-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" + integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.8" + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + 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== + +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== + dependencies: + reusify "^1.0.4" + +fault@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/fault/-/fault-2.0.1.tgz#d47ca9f37ca26e4bd38374a7c500b5a384755b6c" + integrity sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ== + dependencies: + format "^0.2.0" + +faye-websocket@^0.11.3: + version "0.11.4" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.4.tgz#7f0d9275cfdd86a1c963dc8b65fcc451edcbb1da" + integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g== + dependencies: + websocket-driver ">=0.5.1" + +feed@^4.2.2: + version "4.2.2" + resolved "https://registry.yarnpkg.com/feed/-/feed-4.2.2.tgz#865783ef6ed12579e2c44bbef3c9113bc4956a7e" + integrity sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ== + 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" + integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== + 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== + dependencies: + debug "2.6.9" + encodeurl "~2.0.0" + escape-html "~1.0.3" + on-finished "2.4.1" + parseurl "~1.3.3" + statuses "2.0.1" + unpipe "~1.0.0" + +find-cache-dir@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-4.0.0.tgz#a30ee0448f81a3990708f6453633c733e2f6eec2" + integrity sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg== + dependencies: + common-path-prefix "^3.0.0" + pkg-dir "^7.0.0" + +find-root@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" + integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== + +find-up@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-6.3.0.tgz#2abab3d3280b2dc7ac10199ef324c4e002c8c790" + integrity sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw== + dependencies: + locate-path "^7.1.0" + path-exists "^5.0.0" + +flat@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + 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== + +form-data-encoder@^2.1.2: + version "2.1.4" + resolved "https://registry.yarnpkg.com/form-data-encoder/-/form-data-encoder-2.1.4.tgz#261ea35d2a70d48d30ec7a9603130fa5515e9cd5" + integrity sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw== + +format@^0.2.0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/format/-/format-0.2.2.tgz#d6170107e9efdc4ed30c9dc39016df942b5cb58b" + integrity sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww== + +forwarded@0.2.0: + version "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== + +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-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== + 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" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +gensync@^1.0.0-beta.2: + version "1.0.0-beta.2" + resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== + +get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" + integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== + dependencies: + call-bind-apply-helpers "^1.0.2" + es-define-property "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + function-bind "^1.1.2" + get-proto "^1.0.1" + gopd "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + math-intrinsics "^1.1.0" + +get-own-enumerable-property-symbols@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" + integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== + +get-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" + integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== + dependencies: + dunder-proto "^1.0.1" + es-object-atoms "^1.0.0" + +get-stream@^6.0.0, get-stream@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== + +github-slugger@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.5.0.tgz#17891bbc73232051474d68bd867a34625c955f7d" + integrity sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw== + +glob-parent@^5.1.2, glob-parent@~5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob-parent@^6.0.1: + version "6.0.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== + 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@^7.1.3: + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== + 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" + +global-dirs@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-3.0.1.tgz#0c488971f066baceda21447aecb1a8b911d22485" + integrity sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA== + dependencies: + ini "2.0.0" + +globby@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.2.9" + ignore "^5.2.0" + merge2 "^1.4.1" + slash "^3.0.0" + +globby@^13.1.1: + version "13.2.2" + resolved "https://registry.yarnpkg.com/globby/-/globby-13.2.2.tgz#63b90b1bf68619c2135475cbd4e71e66aa090592" + integrity sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w== + dependencies: + dir-glob "^3.0.1" + fast-glob "^3.3.0" + ignore "^5.2.4" + merge2 "^1.4.1" + slash "^4.0.0" + +good-listener@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" + integrity sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw== + dependencies: + delegate "^3.1.2" + +gopd@^1.0.1, gopd@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" + integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== + +got@^12.1.0: + version "12.6.1" + resolved "https://registry.yarnpkg.com/got/-/got-12.6.1.tgz#8869560d1383353204b5a9435f782df9c091f549" + integrity sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ== + dependencies: + "@sindresorhus/is" "^5.2.0" + "@szmarczak/http-timer" "^5.0.1" + cacheable-lookup "^7.0.0" + cacheable-request "^10.2.8" + decompress-response "^6.0.0" + form-data-encoder "^2.1.2" + get-stream "^6.0.1" + http2-wrapper "^2.1.10" + lowercase-keys "^3.0.0" + p-cancelable "^3.0.0" + responselike "^3.0.0" + +graceful-fs@4.2.10: + version "4.2.10" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" + integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== + +graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: + version "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" + integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q== + dependencies: + duplexer "^0.1.2" + +handle-thing@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" + integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== + dependencies: + es-define-property "^1.0.0" + +has-symbols@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" + integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== + +has-yarn@^3.0.0: + version "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== + dependencies: + function-bind "^1.1.2" + +hast-util-from-parse5@^8.0.0: + version "8.0.3" + resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-8.0.3.tgz#830a35022fff28c3fea3697a98c2f4cc6b835a2e" + integrity sha512-3kxEVkEKt0zvcZ3hCRYI8rqrgwtlIOFMWkbclACvjlDw8Li9S2hk/d51OI0nr/gIpdMHNepwgOKqZ/sy0Clpyg== + dependencies: + "@types/hast" "^3.0.0" + "@types/unist" "^3.0.0" + devlop "^1.0.0" + hastscript "^9.0.0" + property-information "^7.0.0" + vfile "^6.0.0" + vfile-location "^5.0.0" + web-namespaces "^2.0.0" + +hast-util-parse-selector@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz#352879fa86e25616036037dd8931fb5f34cb4a27" + integrity sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A== + dependencies: + "@types/hast" "^3.0.0" + +hast-util-raw@^9.0.0: + version "9.1.0" + resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-9.1.0.tgz#79b66b26f6f68fb50dfb4716b2cdca90d92adf2e" + integrity sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw== + dependencies: + "@types/hast" "^3.0.0" + "@types/unist" "^3.0.0" + "@ungap/structured-clone" "^1.0.0" + hast-util-from-parse5 "^8.0.0" + hast-util-to-parse5 "^8.0.0" + html-void-elements "^3.0.0" + mdast-util-to-hast "^13.0.0" + parse5 "^7.0.0" + unist-util-position "^5.0.0" + unist-util-visit "^5.0.0" + vfile "^6.0.0" + web-namespaces "^2.0.0" + zwitch "^2.0.0" + +hast-util-to-estree@^3.0.0: + version "3.1.3" + resolved "https://registry.yarnpkg.com/hast-util-to-estree/-/hast-util-to-estree-3.1.3.tgz#e654c1c9374645135695cc0ab9f70b8fcaf733d7" + integrity sha512-48+B/rJWAp0jamNbAAf9M7Uf//UVqAoMmgXhBdxTDJLGKY+LRnZ99qcG+Qjl5HfMpYNzS5v4EAwVEF34LeAj7w== + dependencies: + "@types/estree" "^1.0.0" + "@types/estree-jsx" "^1.0.0" + "@types/hast" "^3.0.0" + comma-separated-tokens "^2.0.0" + devlop "^1.0.0" + estree-util-attach-comments "^3.0.0" + estree-util-is-identifier-name "^3.0.0" + hast-util-whitespace "^3.0.0" + mdast-util-mdx-expression "^2.0.0" + mdast-util-mdx-jsx "^3.0.0" + mdast-util-mdxjs-esm "^2.0.0" + property-information "^7.0.0" + space-separated-tokens "^2.0.0" + style-to-js "^1.0.0" + unist-util-position "^5.0.0" + zwitch "^2.0.0" + +hast-util-to-jsx-runtime@^2.0.0: + version "2.3.6" + resolved "https://registry.yarnpkg.com/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.6.tgz#ff31897aae59f62232e21594eac7ef6b63333e98" + integrity sha512-zl6s8LwNyo1P9uw+XJGvZtdFF1GdAkOg8ujOw+4Pyb76874fLps4ueHXDhXWdk6YHQ6OgUtinliG7RsYvCbbBg== + dependencies: + "@types/estree" "^1.0.0" + "@types/hast" "^3.0.0" + "@types/unist" "^3.0.0" + comma-separated-tokens "^2.0.0" + devlop "^1.0.0" + estree-util-is-identifier-name "^3.0.0" + hast-util-whitespace "^3.0.0" + mdast-util-mdx-expression "^2.0.0" + mdast-util-mdx-jsx "^3.0.0" + mdast-util-mdxjs-esm "^2.0.0" + property-information "^7.0.0" + space-separated-tokens "^2.0.0" + style-to-js "^1.0.0" + unist-util-position "^5.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== + dependencies: + "@types/hast" "^3.0.0" + comma-separated-tokens "^2.0.0" + devlop "^1.0.0" + property-information "^6.0.0" + space-separated-tokens "^2.0.0" + web-namespaces "^2.0.0" + zwitch "^2.0.0" + +hast-util-whitespace@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz#7778ed9d3c92dd9e8c5c8f648a49c21fc51cb621" + integrity sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw== + dependencies: + "@types/hast" "^3.0.0" + +hastscript@^9.0.0: + version "9.0.1" + resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-9.0.1.tgz#dbc84bef6051d40084342c229c451cd9dc567dff" + integrity sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w== + dependencies: + "@types/hast" "^3.0.0" + comma-separated-tokens "^2.0.0" + hast-util-parse-selector "^4.0.0" + property-information "^7.0.0" + space-separated-tokens "^2.0.0" + +he@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + +history@^4.9.0: + version "4.10.1" + resolved "https://registry.yarnpkg.com/history/-/history-4.10.1.tgz#33371a65e3a83b267434e2b3f3b1b4c58aad4cf3" + integrity sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew== + dependencies: + "@babel/runtime" "^7.1.2" + loose-envify "^1.2.0" + resolve-pathname "^3.0.0" + tiny-invariant "^1.0.2" + tiny-warning "^1.0.0" + value-equal "^1.0.1" + +hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.1: + version "3.3.2" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" + integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== + dependencies: + react-is "^16.7.0" + +hpack.js@^2.1.6: + version "2.1.6" + resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" + integrity sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ== + dependencies: + inherits "^2.0.1" + obuf "^1.0.0" + 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" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== + +html-minifier-terser@^6.0.2: + version "6.1.0" + resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#bfc818934cc07918f6b3669f5774ecdfd48f32ab" + integrity sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw== + dependencies: + camel-case "^4.1.2" + clean-css "^5.2.2" + commander "^8.3.0" + he "^1.2.0" + param-case "^3.0.4" + relateurl "^0.2.7" + terser "^5.10.0" + +html-minifier-terser@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-7.2.0.tgz#18752e23a2f0ed4b0f550f217bb41693e975b942" + integrity sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA== + dependencies: + camel-case "^4.1.2" + clean-css "~5.3.2" + commander "^10.0.0" + entities "^4.4.0" + param-case "^3.0.4" + relateurl "^0.2.7" + terser "^5.15.1" + +html-tags@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.3.1.tgz#a04026a18c882e4bba8a01a3d39cfe465d40b5ce" + integrity sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ== + +html-void-elements@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-3.0.0.tgz#fc9dbd84af9e747249034d4d62602def6517f1d7" + 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== + dependencies: + "@types/html-minifier-terser" "^6.0.0" + html-minifier-terser "^6.0.2" + lodash "^4.17.21" + pretty-error "^4.0.0" + tapable "^2.0.0" + +htmlparser2@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" + integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A== + dependencies: + domelementtype "^2.0.1" + domhandler "^4.0.0" + domutils "^2.5.2" + entities "^2.0.0" + +htmlparser2@^8.0.1: + version "8.0.2" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-8.0.2.tgz#f002151705b383e62433b5cf466f5b716edaec21" + integrity sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA== + dependencies: + domelementtype "^2.3.0" + domhandler "^5.0.3" + domutils "^3.0.1" + entities "^4.4.0" + +http-cache-semantics@^4.1.1: + version "4.2.0" + resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz#205f4db64f8562b76a4ff9235aa5279839a09dd5" + integrity sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ== + +http-deceiver@^1.2.7: + version "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== + dependencies: + depd "2.0.0" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses "2.0.1" + 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== + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + +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== + dependencies: + "@types/http-proxy" "^1.17.8" + http-proxy "^1.18.1" + is-glob "^4.0.1" + is-plain-obj "^3.0.0" + micromatch "^4.0.2" + +http-proxy@^1.18.1: + version "1.18.1" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" + integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== + dependencies: + eventemitter3 "^4.0.0" + follow-redirects "^1.0.0" + requires-port "^1.0.0" + +http2-wrapper@^2.1.10: + version "2.2.1" + resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-2.2.1.tgz#310968153dcdedb160d8b72114363ef5fce1f64a" + integrity sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ== + dependencies: + quick-lru "^5.1.1" + resolve-alpn "^1.2.0" + +human-signals@^2.1.0: + version "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: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +icss-utils@^5.0.0, icss-utils@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" + integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== + +ignore@^5.2.0, ignore@^5.2.4: + version "5.3.2" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" + integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== + +image-size@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/image-size/-/image-size-2.0.2.tgz#84a7b43704db5736f364bf0d1b029821299b4bdc" + integrity sha512-IRqXKlaXwgSMAMtpNzZa1ZAe8m+Sa1770Dhk8VkSsP9LS+iHD62Zd8FQKs8fbPiagBE7BzoFX23cxFnwshpV6w== + +import-fresh@^3.2.1, import-fresh@^3.3.0: + version "3.3.1" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf" + integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +import-lazy@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz#e8eb627483a0a43da3c03f3e35548be5cb0cc153" + integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw== + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== + +indent-string@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + +infima@0.2.0-alpha.45: + version "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: + 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" + integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA== + +ini@^1.3.4, ini@~1.3.0: + version "1.3.8" + 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== + +invariant@^2.2.4: + version "2.2.4" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" + integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== + dependencies: + loose-envify "^1.0.0" + +ipaddr.js@1.9.1: + version "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== + +is-alphabetical@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-2.0.1.tgz#01072053ea7c1036df3c7d19a6daaec7f19e789b" + integrity sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ== + +is-alphanumerical@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz#7c03fbe96e3e931113e57f964b0a368cc2dfd875" + integrity sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw== + dependencies: + is-alphabetical "^2.0.0" + is-decimal "^2.0.0" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== + +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" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-ci@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.1.tgz#db6ecbed1bd659c43dac0f45661e7674103d1867" + integrity sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ== + 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== + dependencies: + hasown "^2.0.2" + +is-decimal@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-2.0.1.tgz#9469d2dc190d0214fd87d78b78caecc0cc14eef7" + integrity sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A== + +is-docker@^2.0.0, is-docker@^2.1.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" + integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== + +is-extendable@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-hexadecimal@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz#86b5bf668fca307498d319dfc03289d781a90027" + integrity sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg== + +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" + integrity sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ== + dependencies: + global-dirs "^3.0.0" + is-path-inside "^3.0.2" + +is-npm@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-6.1.0.tgz#f70e0b6c132dfc817ac97d3badc0134945b098d3" + integrity sha512-O2z4/kNgyjhQwVR1Wpkbfc19JIhggF97NZNCpWTnjH7kVcZMUrnut9XSN7txI7VdyIYk5ZatOq3zvSuWpU8hoA== + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" + integrity sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg== + +is-obj@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" + integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== + +is-path-inside@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== + +is-plain-obj@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7" + integrity sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA== + +is-plain-obj@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.1.0.tgz#d65025edec3657ce032fd7db63c97883eaed71f0" + integrity sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg== + +is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== + dependencies: + isobject "^3.0.1" + +is-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" + integrity sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA== + +is-stream@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== + +is-typedarray@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== + +is-wsl@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== + dependencies: + is-docker "^2.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" + integrity sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ== + +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== + +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== + +jest-util@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc" + integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA== + dependencies: + "@jest/types" "^29.6.3" + "@types/node" "*" + chalk "^4.0.0" + ci-info "^3.2.0" + graceful-fs "^4.2.9" + picomatch "^2.2.3" + +jest-worker@^27.4.5: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" + integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^8.0.0" + +jest-worker@^29.4.3: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.7.0.tgz#acad073acbbaeb7262bd5389e1bcf43e10058d4a" + integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw== + dependencies: + "@types/node" "*" + jest-util "^29.7.0" + merge-stream "^2.0.0" + supports-color "^8.0.0" + +jiti@^1.20.0: + version "1.21.7" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.7.tgz#9dd81043424a3d28458b193d965f0d18a2300ba9" + 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== + dependencies: + "@hapi/hoek" "^9.3.0" + "@hapi/topo" "^5.1.0" + "@sideway/address" "^4.1.5" + "@sideway/formula" "^3.0.1" + "@sideway/pinpoint" "^2.0.0" + +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: + version "4.0.0" + 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== + dependencies: + argparse "^2.0.1" + +jsesc@^3.0.2: + 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: + 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== + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json5@^2.1.2, json5@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + 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== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + +keyv@^4.5.3: + version "4.5.4" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" + integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== + dependencies: + json-buffer "3.0.1" + +kind-of@^6.0.0, kind-of@^6.0.2: + 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== + +kleur@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== + +latest-version@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-7.0.0.tgz#843201591ea81a4d404932eeb61240fe04e9e5da" + integrity sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg== + 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== + dependencies: + picocolors "^1.1.1" + shell-quote "^1.8.3" + +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== + +lilconfig@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.3.tgz#a1bcfd6257f9585bf5ae14ceeebb7b559025e4c4" + integrity sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw== + +lines-and-columns@^1.1.6: + version "1.2.4" + 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-utils@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c" + integrity sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw== + dependencies: + big.js "^5.2.2" + emojis-list "^3.0.0" + json5 "^2.1.2" + +locate-path@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-7.2.0.tgz#69cb1779bd90b35ab1e771e1f2f89a202c2a8a8a" + integrity sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA== + dependencies: + p-locate "^6.0.0" + +lodash.debounce@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== + +lodash.memoize@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== + +lodash.uniq@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + 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== + +longest-streak@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-3.1.0.tgz#62fa67cd958742a1574af9f39866364102d90cd4" + integrity sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g== + +loose-envify@^1.0.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + +lower-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" + integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== + dependencies: + tslib "^2.0.3" + +lowercase-keys@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-3.0.0.tgz#c5e7d442e37ead247ae9db117a9d0a467c89d4f2" + integrity sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ== + +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + +markdown-extensions@^2.0.0: + version "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== + +math-intrinsics@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" + integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== + +mdast-util-directive@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/mdast-util-directive/-/mdast-util-directive-3.1.0.tgz#f3656f4aab6ae3767d3c72cfab5e8055572ccba1" + integrity sha512-I3fNFt+DHmpWCYAT7quoM6lHf9wuqtI+oCOfvILnoicNIqjh5E3dEJWiXuYME2gNe8vl1iMQwyUHa7bgFmak6Q== + dependencies: + "@types/mdast" "^4.0.0" + "@types/unist" "^3.0.0" + ccount "^2.0.0" + devlop "^1.0.0" + mdast-util-from-markdown "^2.0.0" + mdast-util-to-markdown "^2.0.0" + parse-entities "^4.0.0" + stringify-entities "^4.0.0" + unist-util-visit-parents "^6.0.0" + +mdast-util-find-and-replace@^3.0.0, mdast-util-find-and-replace@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz#70a3174c894e14df722abf43bc250cbae44b11df" + integrity sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg== + dependencies: + "@types/mdast" "^4.0.0" + escape-string-regexp "^5.0.0" + unist-util-is "^6.0.0" + 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== + dependencies: + "@types/mdast" "^4.0.0" + "@types/unist" "^3.0.0" + decode-named-character-reference "^1.0.0" + devlop "^1.0.0" + mdast-util-to-string "^4.0.0" + micromark "^4.0.0" + micromark-util-decode-numeric-character-reference "^2.0.0" + micromark-util-decode-string "^2.0.0" + micromark-util-normalize-identifier "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + unist-util-stringify-position "^4.0.0" + +mdast-util-frontmatter@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mdast-util-frontmatter/-/mdast-util-frontmatter-2.0.1.tgz#f5f929eb1eb36c8a7737475c7eb438261f964ee8" + integrity sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA== + dependencies: + "@types/mdast" "^4.0.0" + devlop "^1.0.0" + escape-string-regexp "^5.0.0" + mdast-util-from-markdown "^2.0.0" + mdast-util-to-markdown "^2.0.0" + micromark-extension-frontmatter "^2.0.0" + +mdast-util-gfm-autolink-literal@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz#abd557630337bd30a6d5a4bd8252e1c2dc0875d5" + integrity sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ== + dependencies: + "@types/mdast" "^4.0.0" + ccount "^2.0.0" + devlop "^1.0.0" + mdast-util-find-and-replace "^3.0.0" + micromark-util-character "^2.0.0" + +mdast-util-gfm-footnote@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz#7778e9d9ca3df7238cc2bd3fa2b1bf6a65b19403" + integrity sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ== + dependencies: + "@types/mdast" "^4.0.0" + devlop "^1.1.0" + mdast-util-from-markdown "^2.0.0" + mdast-util-to-markdown "^2.0.0" + micromark-util-normalize-identifier "^2.0.0" + +mdast-util-gfm-strikethrough@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz#d44ef9e8ed283ac8c1165ab0d0dfd058c2764c16" + integrity sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg== + dependencies: + "@types/mdast" "^4.0.0" + mdast-util-from-markdown "^2.0.0" + mdast-util-to-markdown "^2.0.0" + +mdast-util-gfm-table@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz#7a435fb6223a72b0862b33afbd712b6dae878d38" + integrity sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg== + dependencies: + "@types/mdast" "^4.0.0" + devlop "^1.0.0" + markdown-table "^3.0.0" + mdast-util-from-markdown "^2.0.0" + mdast-util-to-markdown "^2.0.0" + +mdast-util-gfm-task-list-item@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz#e68095d2f8a4303ef24094ab642e1047b991a936" + integrity sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ== + dependencies: + "@types/mdast" "^4.0.0" + devlop "^1.0.0" + mdast-util-from-markdown "^2.0.0" + mdast-util-to-markdown "^2.0.0" + +mdast-util-gfm@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz#2cdf63b92c2a331406b0fb0db4c077c1b0331751" + integrity sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ== + dependencies: + mdast-util-from-markdown "^2.0.0" + mdast-util-gfm-autolink-literal "^2.0.0" + mdast-util-gfm-footnote "^2.0.0" + mdast-util-gfm-strikethrough "^2.0.0" + mdast-util-gfm-table "^2.0.0" + mdast-util-gfm-task-list-item "^2.0.0" + mdast-util-to-markdown "^2.0.0" + +mdast-util-mdx-expression@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.1.tgz#43f0abac9adc756e2086f63822a38c8d3c3a5096" + integrity sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ== + dependencies: + "@types/estree-jsx" "^1.0.0" + "@types/hast" "^3.0.0" + "@types/mdast" "^4.0.0" + devlop "^1.0.0" + mdast-util-from-markdown "^2.0.0" + mdast-util-to-markdown "^2.0.0" + +mdast-util-mdx-jsx@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.2.0.tgz#fd04c67a2a7499efb905a8a5c578dddc9fdada0d" + integrity sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q== + dependencies: + "@types/estree-jsx" "^1.0.0" + "@types/hast" "^3.0.0" + "@types/mdast" "^4.0.0" + "@types/unist" "^3.0.0" + ccount "^2.0.0" + devlop "^1.1.0" + mdast-util-from-markdown "^2.0.0" + mdast-util-to-markdown "^2.0.0" + parse-entities "^4.0.0" + stringify-entities "^4.0.0" + unist-util-stringify-position "^4.0.0" + vfile-message "^4.0.0" + +mdast-util-mdx@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/mdast-util-mdx/-/mdast-util-mdx-3.0.0.tgz#792f9cf0361b46bee1fdf1ef36beac424a099c41" + integrity sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w== + dependencies: + mdast-util-from-markdown "^2.0.0" + mdast-util-mdx-expression "^2.0.0" + mdast-util-mdx-jsx "^3.0.0" + mdast-util-mdxjs-esm "^2.0.0" + mdast-util-to-markdown "^2.0.0" + +mdast-util-mdxjs-esm@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-2.0.1.tgz#019cfbe757ad62dd557db35a695e7314bcc9fa97" + integrity sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg== + dependencies: + "@types/estree-jsx" "^1.0.0" + "@types/hast" "^3.0.0" + "@types/mdast" "^4.0.0" + devlop "^1.0.0" + mdast-util-from-markdown "^2.0.0" + mdast-util-to-markdown "^2.0.0" + +mdast-util-phrasing@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz#7cc0a8dec30eaf04b7b1a9661a92adb3382aa6e3" + integrity sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w== + dependencies: + "@types/mdast" "^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== + dependencies: + "@types/hast" "^3.0.0" + "@types/mdast" "^4.0.0" + "@ungap/structured-clone" "^1.0.0" + devlop "^1.0.0" + micromark-util-sanitize-uri "^2.0.0" + trim-lines "^3.0.0" + unist-util-position "^5.0.0" + unist-util-visit "^5.0.0" + vfile "^6.0.0" + +mdast-util-to-markdown@^2.0.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz#f910ffe60897f04bb4b7e7ee434486f76288361b" + integrity sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA== + dependencies: + "@types/mdast" "^4.0.0" + "@types/unist" "^3.0.0" + longest-streak "^3.0.0" + mdast-util-phrasing "^4.0.0" + mdast-util-to-string "^4.0.0" + micromark-util-classify-character "^2.0.0" + micromark-util-decode-string "^2.0.0" + unist-util-visit "^5.0.0" + zwitch "^2.0.0" + +mdast-util-to-string@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz#7a5121475556a04e7eddeb67b264aae79d312814" + integrity sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg== + dependencies: + "@types/mdast" "^4.0.0" + +mdn-data@2.0.28: + version "2.0.28" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.28.tgz#5ec48e7bef120654539069e1ae4ddc81ca490eba" + integrity sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g== + +mdn-data@2.0.30: + version "2.0.30" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.30.tgz#ce4df6f80af6cfbe218ecd5c552ba13c4dfa08cc" + integrity sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA== + +media-typer@0.3.0: + version "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" + +merge-descriptors@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.3.tgz#d80319a65f3c7935351e5cfdac8f9318504dbed5" + integrity sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ== + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +merge2@^1.3.0, merge2@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== + +micromark-core-commonmark@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz#c691630e485021a68cf28dbc2b2ca27ebf678cd4" + integrity sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg== + dependencies: + decode-named-character-reference "^1.0.0" + devlop "^1.0.0" + micromark-factory-destination "^2.0.0" + micromark-factory-label "^2.0.0" + micromark-factory-space "^2.0.0" + micromark-factory-title "^2.0.0" + micromark-factory-whitespace "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-chunked "^2.0.0" + micromark-util-classify-character "^2.0.0" + micromark-util-html-tag-name "^2.0.0" + micromark-util-normalize-identifier "^2.0.0" + micromark-util-resolve-all "^2.0.0" + micromark-util-subtokenize "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-extension-directive@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/micromark-extension-directive/-/micromark-extension-directive-3.0.2.tgz#2eb61985d1995a7c1ff7621676a4f32af29409e8" + integrity sha512-wjcXHgk+PPdmvR58Le9d7zQYWy+vKEU9Se44p2CrCDPiLr2FMyiT4Fyb5UFKFC66wGB3kPlgD7q3TnoqPS7SZA== + dependencies: + devlop "^1.0.0" + micromark-factory-space "^2.0.0" + micromark-factory-whitespace "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + parse-entities "^4.0.0" + +micromark-extension-frontmatter@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/micromark-extension-frontmatter/-/micromark-extension-frontmatter-2.0.0.tgz#651c52ffa5d7a8eeed687c513cd869885882d67a" + integrity sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg== + dependencies: + fault "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-extension-gfm-autolink-literal@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz#6286aee9686c4462c1e3552a9d505feddceeb935" + integrity sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw== + dependencies: + micromark-util-character "^2.0.0" + micromark-util-sanitize-uri "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-extension-gfm-footnote@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz#4dab56d4e398b9853f6fe4efac4fc9361f3e0750" + integrity sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw== + dependencies: + devlop "^1.0.0" + micromark-core-commonmark "^2.0.0" + micromark-factory-space "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-normalize-identifier "^2.0.0" + micromark-util-sanitize-uri "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-extension-gfm-strikethrough@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz#86106df8b3a692b5f6a92280d3879be6be46d923" + integrity sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw== + dependencies: + devlop "^1.0.0" + micromark-util-chunked "^2.0.0" + micromark-util-classify-character "^2.0.0" + micromark-util-resolve-all "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-extension-gfm-table@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.1.tgz#fac70bcbf51fe65f5f44033118d39be8a9b5940b" + integrity sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg== + dependencies: + devlop "^1.0.0" + micromark-factory-space "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-extension-gfm-tagfilter@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz#f26d8a7807b5985fba13cf61465b58ca5ff7dc57" + integrity sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg== + dependencies: + micromark-util-types "^2.0.0" + +micromark-extension-gfm-task-list-item@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz#bcc34d805639829990ec175c3eea12bb5b781f2c" + integrity sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw== + dependencies: + devlop "^1.0.0" + micromark-factory-space "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-extension-gfm@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz#3e13376ab95dd7a5cfd0e29560dfe999657b3c5b" + integrity sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w== + dependencies: + micromark-extension-gfm-autolink-literal "^2.0.0" + micromark-extension-gfm-footnote "^2.0.0" + micromark-extension-gfm-strikethrough "^2.0.0" + micromark-extension-gfm-table "^2.0.0" + micromark-extension-gfm-tagfilter "^2.0.0" + micromark-extension-gfm-task-list-item "^2.0.0" + micromark-util-combine-extensions "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-extension-mdx-expression@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-3.0.1.tgz#43d058d999532fb3041195a3c3c05c46fa84543b" + integrity sha512-dD/ADLJ1AeMvSAKBwO22zG22N4ybhe7kFIZ3LsDI0GlsNr2A3KYxb0LdC1u5rj4Nw+CHKY0RVdnHX8vj8ejm4Q== + dependencies: + "@types/estree" "^1.0.0" + devlop "^1.0.0" + micromark-factory-mdx-expression "^2.0.0" + micromark-factory-space "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-events-to-acorn "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-extension-mdx-jsx@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-3.0.2.tgz#ffc98bdb649798902fa9fc5689f67f9c1c902044" + integrity sha512-e5+q1DjMh62LZAJOnDraSSbDMvGJ8x3cbjygy2qFEi7HCeUT4BDKCvMozPozcD6WmOt6sVvYDNBKhFSz3kjOVQ== + dependencies: + "@types/estree" "^1.0.0" + devlop "^1.0.0" + estree-util-is-identifier-name "^3.0.0" + micromark-factory-mdx-expression "^2.0.0" + micromark-factory-space "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-events-to-acorn "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + vfile-message "^4.0.0" + +micromark-extension-mdx-md@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/micromark-extension-mdx-md/-/micromark-extension-mdx-md-2.0.0.tgz#1d252881ea35d74698423ab44917e1f5b197b92d" + integrity sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ== + dependencies: + micromark-util-types "^2.0.0" + +micromark-extension-mdxjs-esm@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-3.0.0.tgz#de21b2b045fd2059bd00d36746081de38390d54a" + integrity sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A== + dependencies: + "@types/estree" "^1.0.0" + devlop "^1.0.0" + micromark-core-commonmark "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-events-to-acorn "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + unist-util-position-from-estree "^2.0.0" + vfile-message "^4.0.0" + +micromark-extension-mdxjs@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/micromark-extension-mdxjs/-/micromark-extension-mdxjs-3.0.0.tgz#b5a2e0ed449288f3f6f6c544358159557549de18" + integrity sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ== + dependencies: + acorn "^8.0.0" + acorn-jsx "^5.0.0" + micromark-extension-mdx-expression "^3.0.0" + micromark-extension-mdx-jsx "^3.0.0" + micromark-extension-mdx-md "^2.0.0" + micromark-extension-mdxjs-esm "^3.0.0" + micromark-util-combine-extensions "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-factory-destination@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz#8fef8e0f7081f0474fbdd92deb50c990a0264639" + integrity sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA== + dependencies: + micromark-util-character "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-factory-label@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz#5267efa97f1e5254efc7f20b459a38cb21058ba1" + integrity sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg== + dependencies: + devlop "^1.0.0" + micromark-util-character "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-factory-mdx-expression@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-2.0.3.tgz#bb09988610589c07d1c1e4425285895041b3dfa9" + integrity sha512-kQnEtA3vzucU2BkrIa8/VaSAsP+EJ3CKOvhMuJgOEGg9KDC6OAY6nSnNDVRiVNRqj7Y4SlSzcStaH/5jge8JdQ== + dependencies: + "@types/estree" "^1.0.0" + devlop "^1.0.0" + micromark-factory-space "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-events-to-acorn "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + unist-util-position-from-estree "^2.0.0" + vfile-message "^4.0.0" + +micromark-factory-space@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz#c8f40b0640a0150751d3345ed885a080b0d15faf" + integrity sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ== + dependencies: + micromark-util-character "^1.0.0" + micromark-util-types "^1.0.0" + +micromark-factory-space@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz#36d0212e962b2b3121f8525fc7a3c7c029f334fc" + integrity sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg== + dependencies: + micromark-util-character "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-factory-title@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz#237e4aa5d58a95863f01032d9ee9b090f1de6e94" + integrity sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw== + dependencies: + micromark-factory-space "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-factory-whitespace@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz#06b26b2983c4d27bfcc657b33e25134d4868b0b1" + integrity sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ== + dependencies: + micromark-factory-space "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-util-character@^1.0.0, micromark-util-character@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-1.2.0.tgz#4fedaa3646db249bc58caeb000eb3549a8ca5dcc" + integrity sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg== + dependencies: + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" + +micromark-util-character@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-2.1.1.tgz#2f987831a40d4c510ac261e89852c4e9703ccda6" + integrity sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q== + dependencies: + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-util-chunked@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz#47fbcd93471a3fccab86cff03847fc3552db1051" + integrity sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA== + dependencies: + micromark-util-symbol "^2.0.0" + +micromark-util-classify-character@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz#d399faf9c45ca14c8b4be98b1ea481bced87b629" + integrity sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q== + dependencies: + micromark-util-character "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-util-combine-extensions@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz#2a0f490ab08bff5cc2fd5eec6dd0ca04f89b30a9" + integrity sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg== + dependencies: + micromark-util-chunked "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-util-decode-numeric-character-reference@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz#fcf15b660979388e6f118cdb6bf7d79d73d26fe5" + integrity sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw== + dependencies: + micromark-util-symbol "^2.0.0" + +micromark-util-decode-string@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz#6cb99582e5d271e84efca8e61a807994d7161eb2" + integrity sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ== + dependencies: + decode-named-character-reference "^1.0.0" + micromark-util-character "^2.0.0" + micromark-util-decode-numeric-character-reference "^2.0.0" + micromark-util-symbol "^2.0.0" + +micromark-util-encode@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz#0d51d1c095551cfaac368326963cf55f15f540b8" + integrity sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw== + +micromark-util-events-to-acorn@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-2.0.3.tgz#e7a8a6b55a47e5a06c720d5a1c4abae8c37c98f3" + integrity sha512-jmsiEIiZ1n7X1Rr5k8wVExBQCg5jy4UXVADItHmNk1zkwEVhBuIUKRu3fqv+hs4nxLISi2DQGlqIOGiFxgbfHg== + dependencies: + "@types/estree" "^1.0.0" + "@types/unist" "^3.0.0" + devlop "^1.0.0" + estree-util-visit "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + vfile-message "^4.0.0" + +micromark-util-html-tag-name@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz#e40403096481986b41c106627f98f72d4d10b825" + integrity sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA== + +micromark-util-normalize-identifier@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz#c30d77b2e832acf6526f8bf1aa47bc9c9438c16d" + integrity sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q== + dependencies: + micromark-util-symbol "^2.0.0" + +micromark-util-resolve-all@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz#e1a2d62cdd237230a2ae11839027b19381e31e8b" + integrity sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg== + dependencies: + micromark-util-types "^2.0.0" + +micromark-util-sanitize-uri@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz#ab89789b818a58752b73d6b55238621b7faa8fd7" + integrity sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ== + dependencies: + micromark-util-character "^2.0.0" + micromark-util-encode "^2.0.0" + micromark-util-symbol "^2.0.0" + +micromark-util-subtokenize@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz#d8ade5ba0f3197a1cf6a2999fbbfe6357a1a19ee" + integrity sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA== + dependencies: + devlop "^1.0.0" + micromark-util-chunked "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromark-util-symbol@^1.0.0, micromark-util-symbol@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz#813cd17837bdb912d069a12ebe3a44b6f7063142" + integrity sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag== + +micromark-util-symbol@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz#e5da494e8eb2b071a0d08fb34f6cefec6c0a19b8" + integrity sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q== + +micromark-util-types@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-1.1.0.tgz#e6676a8cae0bb86a2171c498167971886cb7e283" + integrity sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg== + +micromark-util-types@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-2.0.2.tgz#f00225f5f5a0ebc3254f96c36b6605c4b393908e" + integrity sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA== + +micromark@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/micromark/-/micromark-4.0.2.tgz#91395a3e1884a198e62116e33c9c568e39936fdb" + integrity sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA== + dependencies: + "@types/debug" "^4.0.0" + debug "^4.0.0" + decode-named-character-reference "^1.0.0" + devlop "^1.0.0" + micromark-core-commonmark "^2.0.0" + micromark-factory-space "^2.0.0" + micromark-util-character "^2.0.0" + micromark-util-chunked "^2.0.0" + micromark-util-combine-extensions "^2.0.0" + micromark-util-decode-numeric-character-reference "^2.0.0" + micromark-util-encode "^2.0.0" + micromark-util-normalize-identifier "^2.0.0" + micromark-util-resolve-all "^2.0.0" + micromark-util-sanitize-uri "^2.0.0" + micromark-util-subtokenize "^2.0.0" + micromark-util-symbol "^2.0.0" + micromark-util-types "^2.0.0" + +micromatch@^4.0.2, micromatch@^4.0.5, micromatch@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" + integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== + dependencies: + braces "^3.0.3" + picomatch "^2.3.1" + +mime-db@1.52.0: + version "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": + version "1.54.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.54.0.tgz#cddb3ee4f9c64530dff640236661d42cb6a314f5" + integrity sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ== + +mime-db@~1.33.0: + version "1.33.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" + integrity sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ== + +mime-types@2.1.18: + version "2.1.18" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" + integrity sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ== + 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: + 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@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +mimic-response@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" + integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ== + +mimic-response@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-4.0.0.tgz#35468b19e7c75d10f5165ea25e75a5ceea7cf70f" + 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== + dependencies: + schema-utils "^4.0.0" + tapable "^2.2.1" + +minimalistic-assert@^1.0.0: + version "1.0.1" + 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== + dependencies: + brace-expansion "^1.1.7" + +minimist@^1.2.0: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +mrmime@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-2.0.1.tgz#bc3e87f7987853a54c9850eeb1f1078cd44adddc" + integrity sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ== + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== + +ms@2.1.3, ms@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +multicast-dns@^7.2.5: + version "7.2.5" + resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-7.2.5.tgz#77eb46057f4d7adbd16d9290fa7299f6fa64cced" + integrity sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg== + dependencies: + 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== + +negotiator@0.6.3: + version "0.6.3" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== + +negotiator@~0.6.4: + version "0.6.4" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.4.tgz#777948e2452651c570b712dd01c23e262713fff7" + integrity sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w== + +neo-async@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== + +no-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" + integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== + dependencies: + lower-case "^2.0.2" + tslib "^2.0.3" + +node-emoji@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-2.2.0.tgz#1d000e3c76e462577895be1b436f4aa2d6760eb0" + integrity sha512-Z3lTE9pLaJF47NyMhd4ww1yFTAP8YhYI8SleJiHzM46Fgpm5cnNzSl9XfzFNqbaz+VlJrIj3fXQ4DeN1Rjm6cw== + dependencies: + "@sindresorhus/is" "^4.6.0" + char-regex "^1.0.2" + 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== + +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== + +npm-run-path@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" + +nprogress@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/nprogress/-/nprogress-0.2.0.tgz#cb8f34c53213d895723fcbab907e9422adbcafb1" + integrity sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA== + +nth-check@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" + integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== + dependencies: + boolbase "^1.0.0" + +null-loader@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/null-loader/-/null-loader-4.0.1.tgz#8e63bd3a2dd3c64236a4679428632edd0a6dbc6a" + integrity sha512-pxqVbi4U6N26lq+LmgIbB5XATP0VdZKOG25DhHi8btMmJJefGArFyDg1yc4U3hWCJbMqSrw0qyrz1UQX+qYXqg== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + +object-assign@^4.1.1: + version "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: + version "1.13.4" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" + integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== + +object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object.assign@^4.1.0: + version "4.1.7" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.7.tgz#8c14ca1a424c6a561b0bb2a22f66f5049a945d3d" + integrity sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + has-symbols "^1.1.0" + object-keys "^1.1.1" + +obuf@^1.0.0, obuf@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" + integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== + +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== + dependencies: + ee-first "1.1.1" + +on-headers@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.1.0.tgz#59da4f91c45f5f989c6e4bcedc5a3b0aed70ff65" + integrity sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A== + +once@^1.3.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== + dependencies: + wrappy "1" + +onetime@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + +open@^8.0.9, 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== + dependencies: + define-lazy-prop "^2.0.0" + is-docker "^2.1.1" + is-wsl "^2.2.0" + +opener@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" + integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== + +p-cancelable@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-3.0.0.tgz#63826694b54d61ca1c20ebcb6d3ecf5e14cd8050" + integrity sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw== + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== + +p-limit@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644" + integrity sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ== + dependencies: + yocto-queue "^1.0.0" + +p-locate@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-6.0.0.tgz#3da9a49d4934b901089dca3302fa65dc5a05c04f" + integrity sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw== + dependencies: + p-limit "^4.0.0" + +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + +p-queue@^6.6.2: + version "6.6.2" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" + integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ== + dependencies: + 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== + dependencies: + "@types/retry" "0.12.0" + retry "^0.13.1" + +p-timeout@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" + integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== + dependencies: + p-finally "^1.0.0" + +package-json@^8.1.0: + version "8.1.1" + resolved "https://registry.yarnpkg.com/package-json/-/package-json-8.1.1.tgz#3e9948e43df40d1e8e78a85485f1070bf8f03dc8" + integrity sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA== + dependencies: + got "^12.1.0" + registry-auth-token "^5.0.1" + registry-url "^6.0.0" + semver "^7.3.7" + +param-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" + integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parse-entities@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-4.0.2.tgz#61d46f5ed28e4ee62e9ddc43d6b010188443f159" + integrity sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw== + dependencies: + "@types/unist" "^2.0.0" + character-entities-legacy "^3.0.0" + character-reference-invalid "^2.0.0" + decode-named-character-reference "^1.0.0" + is-alphanumerical "^2.0.0" + is-decimal "^2.0.0" + is-hexadecimal "^2.0.0" + +parse-json@^5.0.0, parse-json@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-even-better-errors "^2.3.0" + lines-and-columns "^1.1.6" + +parse-numeric-range@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz#7c63b61190d61e4d53a1197f0c83c47bb670ffa3" + integrity sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ== + +parse5-htmlparser2-tree-adapter@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz#b5a806548ed893a43e24ccb42fbb78069311e81b" + integrity sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g== + dependencies: + domhandler "^5.0.3" + parse5 "^7.0.0" + +parse5@^7.0.0: + version "7.3.0" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.3.0.tgz#d7e224fa72399c7a175099f45fc2ad024b05ec05" + integrity sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw== + dependencies: + entities "^6.0.0" + +parseurl@~1.3.2, 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== + +pascal-case@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" + integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + +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" + integrity sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w== + +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.7: + version "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-to-regexp@3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-3.3.0.tgz#f7f31d32e8518c2660862b644414b6d5c63a611b" + integrity sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw== + +path-to-regexp@^1.7.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.9.0.tgz#5dc0753acbf8521ca2e0f137b4578b917b10cf24" + integrity sha512-xIp7/apCFJuUHdDLWe8O1HIkb0kQrOMb/0u6FXQjemHn/ii5LrIzU6bdECnsiTF/GjZkMEKg1xdiZwNqDYlZ6g== + dependencies: + isarray "0.0.1" + +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + +picocolors@^1.0.0, picocolors@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + 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== + +pkg-dir@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-7.0.0.tgz#8f0c08d6df4476756c5ff29b3282d0bab7517d11" + integrity sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA== + dependencies: + find-up "^6.3.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" + integrity sha512-Uai+SupNSqzlschRyNx3kbCTWgY/2hcwtHEI/ej2LJWc9JJ77qKgGptd8DHwY1mXtZ7Aoh4z4yxfwMBue9eNgw== + dependencies: + postcss-selector-parser "^7.0.0" + +postcss-calc@^9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-9.0.1.tgz#a744fd592438a93d6de0f1434c572670361eb6c6" + integrity sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ== + dependencies: + postcss-selector-parser "^6.0.11" + postcss-value-parser "^4.2.0" + +postcss-clamp@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/postcss-clamp/-/postcss-clamp-4.1.0.tgz#7263e95abadd8c2ba1bd911b0b5a5c9c93e02363" + integrity sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow== + 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== + 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/utilities" "^2.0.0" + +postcss-color-hex-alpha@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-10.0.0.tgz#5dd3eba1f8facb4ea306cba6e3f7712e876b0c76" + integrity sha512-1kervM2cnlgPs2a8Vt/Qbe5cQ++N7rkYo/2rz2BkqJZIHQwaVuJgQH38REHrAi4uM0b1fqxMkWYmese94iMp3w== + dependencies: + "@csstools/utilities" "^2.0.0" + postcss-value-parser "^4.2.0" + +postcss-color-rebeccapurple@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-10.0.0.tgz#5ada28406ac47e0796dff4056b0a9d5a6ecead98" + integrity sha512-JFta737jSP+hdAIEhk1Vs0q0YF5P8fFcj+09pweS8ktuGuZ8pPlykHsk6mPxZ8awDl4TrcxUqJo9l1IhVr/OjQ== + dependencies: + "@csstools/utilities" "^2.0.0" + postcss-value-parser "^4.2.0" + +postcss-colormin@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-6.1.0.tgz#076e8d3fb291fbff7b10e6b063be9da42ff6488d" + integrity sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw== + dependencies: + browserslist "^4.23.0" + caniuse-api "^3.0.0" + colord "^2.9.3" + postcss-value-parser "^4.2.0" + +postcss-convert-values@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz#3498387f8efedb817cbc63901d45bd1ceaa40f48" + integrity sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w== + dependencies: + browserslist "^4.23.0" + postcss-value-parser "^4.2.0" + +postcss-custom-media@^11.0.6: + version "11.0.6" + resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-11.0.6.tgz#6b450e5bfa209efb736830066682e6567bd04967" + integrity sha512-C4lD4b7mUIw+RZhtY7qUbf4eADmb7Ey8BFA2px9jUbwg7pjTZDl4KY4bvlUV+/vXQvzQRfiGEVJyAbtOsCMInw== + dependencies: + "@csstools/cascade-layer-name-parser" "^2.0.5" + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + "@csstools/media-query-list-parser" "^4.0.3" + +postcss-custom-properties@^14.0.6: + version "14.0.6" + resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-14.0.6.tgz#1af73a650bf115ba052cf915287c9982825fc90e" + integrity sha512-fTYSp3xuk4BUeVhxCSJdIPhDLpJfNakZKoiTDx7yRGCdlZrSJR7mWKVOBS4sBF+5poPQFMj2YdXx1VHItBGihQ== + dependencies: + "@csstools/cascade-layer-name-parser" "^2.0.5" + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + "@csstools/utilities" "^2.0.0" + postcss-value-parser "^4.2.0" + +postcss-custom-selectors@^8.0.5: + version "8.0.5" + resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-8.0.5.tgz#9448ed37a12271d7ab6cb364b6f76a46a4a323e8" + integrity sha512-9PGmckHQswiB2usSO6XMSswO2yFWVoCAuih1yl9FVcwkscLjRKjwsjM3t+NIWpSU2Jx3eOiK2+t4vVTQaoCHHg== + dependencies: + "@csstools/cascade-layer-name-parser" "^2.0.5" + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + postcss-selector-parser "^7.0.0" + +postcss-dir-pseudo-class@^9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-9.0.1.tgz#80d9e842c9ae9d29f6bf5fd3cf9972891d6cc0ca" + integrity sha512-tRBEK0MHYvcMUrAuYMEOa0zg9APqirBcgzi6P21OhxtJyJADo/SWBwY1CAwEohQ/6HDaa9jCjLRG7K3PVQYHEA== + dependencies: + postcss-selector-parser "^7.0.0" + +postcss-discard-comments@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz#e768dcfdc33e0216380623652b0a4f69f4678b6c" + integrity sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw== + +postcss-discard-duplicates@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz#d121e893c38dc58a67277f75bb58ba43fce4c3eb" + integrity sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw== + +postcss-discard-empty@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz#ee39c327219bb70473a066f772621f81435a79d9" + integrity sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ== + +postcss-discard-overridden@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz#4e9f9c62ecd2df46e8fdb44dc17e189776572e2d" + integrity sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ== + +postcss-discard-unused@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-6.0.5.tgz#c1b0e8c032c6054c3fbd22aaddba5b248136f338" + integrity sha512-wHalBlRHkaNnNwfC8z+ppX57VhvS+HWgjW508esjdaEYr3Mx7Gnn2xA4R/CKf5+Z9S5qsqC+Uzh4ueENWwCVUA== + 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== + dependencies: + "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/utilities" "^2.0.0" + postcss-value-parser "^4.2.0" + +postcss-focus-visible@^10.0.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-10.0.1.tgz#1f7904904368a2d1180b220595d77b6f8a957868" + integrity sha512-U58wyjS/I1GZgjRok33aE8juW9qQgQUNwTSdxQGuShHzwuYdcklnvK/+qOWX1Q9kr7ysbraQ6ht6r+udansalA== + dependencies: + postcss-selector-parser "^7.0.0" + +postcss-focus-within@^9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-9.0.1.tgz#ac01ce80d3f2e8b2b3eac4ff84f8e15cd0057bc7" + integrity sha512-fzNUyS1yOYa7mOjpci/bR+u+ESvdar6hk8XNK/TRR0fiGTp2QT5N+ducP0n3rfH/m9I7H/EQU6lsa2BrgxkEjw== + dependencies: + postcss-selector-parser "^7.0.0" + +postcss-font-variant@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz#efd59b4b7ea8bb06127f2d031bfbb7f24d32fa66" + integrity sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA== + +postcss-gap-properties@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-6.0.0.tgz#d5ff0bdf923c06686499ed2b12e125fe64054fed" + integrity sha512-Om0WPjEwiM9Ru+VhfEDPZJAKWUd0mV1HmNXqp2C29z80aQ2uP9UVhLc7e3aYMIor/S5cVhoPgYQ7RtfeZpYTRw== + +postcss-image-set-function@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-7.0.0.tgz#538e94e16716be47f9df0573b56bbaca86e1da53" + integrity sha512-QL7W7QNlZuzOwBTeXEmbVckNt1FSmhQtbMRvGGqqU4Nf4xk6KUEQhAoWuMzwbSv5jxiRiSZ5Tv7eiDB9U87znA== + dependencies: + "@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== + 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/utilities" "^2.0.0" + +postcss-loader@^7.3.4: + version "7.3.4" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-7.3.4.tgz#aed9b79ce4ed7e9e89e56199d25ad1ec8f606209" + integrity sha512-iW5WTTBSC5BfsBJ9daFMPVrLT36MrNiC6fqOZTTaHjBNX6Pfd5p+hSBqe/fEeNd7pc13QiAyGt7VdGMw4eRC4A== + dependencies: + cosmiconfig "^8.3.5" + jiti "^1.20.0" + semver "^7.5.4" + +postcss-logical@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-8.1.0.tgz#4092b16b49e3ecda70c4d8945257da403d167228" + integrity sha512-pL1hXFQ2fEXNKiNiAgtfA005T9FBxky5zkX6s4GZM2D8RkVgRqz3f4g1JUoq925zXv495qk8UNldDwh8uGEDoA== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-merge-idents@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-6.0.3.tgz#7b9c31c7bc823c94bec50f297f04e3c2b838ea65" + integrity sha512-1oIoAsODUs6IHQZkLQGO15uGEbK3EAl5wi9SS8hs45VgsxQfMnxvt+L+zIr7ifZFIH14cfAeVe2uCTa+SPRa3g== + dependencies: + cssnano-utils "^4.0.2" + postcss-value-parser "^4.2.0" + +postcss-merge-longhand@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz#ba8a8d473617c34a36abbea8dda2b215750a065a" + integrity sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w== + dependencies: + postcss-value-parser "^4.2.0" + stylehacks "^6.1.1" + +postcss-merge-rules@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-6.1.1.tgz#7aa539dceddab56019469c0edd7d22b64c3dea9d" + integrity sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ== + dependencies: + browserslist "^4.23.0" + caniuse-api "^3.0.0" + cssnano-utils "^4.0.2" + postcss-selector-parser "^6.0.16" + +postcss-minify-font-values@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-6.1.0.tgz#a0e574c02ee3f299be2846369211f3b957ea4c59" + integrity sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-minify-gradients@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz#ca3eb55a7bdb48a1e187a55c6377be918743dbd6" + integrity sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q== + dependencies: + colord "^2.9.3" + cssnano-utils "^4.0.2" + postcss-value-parser "^4.2.0" + +postcss-minify-params@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz#54551dec77b9a45a29c3cb5953bf7325a399ba08" + integrity sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA== + dependencies: + browserslist "^4.23.0" + cssnano-utils "^4.0.2" + postcss-value-parser "^4.2.0" + +postcss-minify-selectors@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-6.0.4.tgz#197f7d72e6dd19eed47916d575d69dc38b396aff" + integrity sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ== + dependencies: + postcss-selector-parser "^6.0.16" + +postcss-modules-extract-imports@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz#b4497cb85a9c0c4b5aabeb759bb25e8d89f15002" + integrity sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q== + +postcss-modules-local-by-default@^4.0.5: + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz#d150f43837831dae25e4085596e84f6f5d6ec368" + integrity sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw== + dependencies: + icss-utils "^5.0.0" + postcss-selector-parser "^7.0.0" + postcss-value-parser "^4.1.0" + +postcss-modules-scope@^3.2.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz#1bbccddcb398f1d7a511e0a2d1d047718af4078c" + integrity sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA== + dependencies: + postcss-selector-parser "^7.0.0" + +postcss-modules-values@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" + integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== + dependencies: + icss-utils "^5.0.0" + +postcss-nesting@^13.0.2: + version "13.0.2" + resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-13.0.2.tgz#fde0d4df772b76d03b52eccc84372e8d1ca1402e" + integrity sha512-1YCI290TX+VP0U/K/aFxzHzQWHWURL+CtHMSbex1lCdpXD1SoR2sYuxDu5aNI9lPoXpKTCggFZiDJbwylU0LEQ== + dependencies: + "@csstools/selector-resolve-nested" "^3.1.0" + "@csstools/selector-specificity" "^5.0.0" + postcss-selector-parser "^7.0.0" + +postcss-normalize-charset@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz#1ec25c435057a8001dac942942a95ffe66f721e1" + integrity sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ== + +postcss-normalize-display-values@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz#54f02764fed0b288d5363cbb140d6950dbbdd535" + integrity sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-positions@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz#e982d284ec878b9b819796266f640852dbbb723a" + integrity sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-repeat-style@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz#f8006942fd0617c73f049dd8b6201c3a3040ecf3" + integrity sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-string@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz#e3cc6ad5c95581acd1fc8774b309dd7c06e5e363" + integrity sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-timing-functions@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz#40cb8726cef999de984527cbd9d1db1f3e9062c0" + integrity sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-unicode@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz#aaf8bbd34c306e230777e80f7f12a4b7d27ce06e" + integrity sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg== + dependencies: + browserslist "^4.23.0" + postcss-value-parser "^4.2.0" + +postcss-normalize-url@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz#292792386be51a8de9a454cb7b5c58ae22db0f79" + integrity sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-whitespace@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz#fbb009e6ebd312f8b2efb225c2fcc7cf32b400cd" + integrity sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-opacity-percentage@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-opacity-percentage/-/postcss-opacity-percentage-3.0.0.tgz#0b0db5ed5db5670e067044b8030b89c216e1eb0a" + integrity sha512-K6HGVzyxUxd/VgZdX04DCtdwWJ4NGLG212US4/LA1TLAbHgmAsTWVR86o+gGIbFtnTkfOpb9sCRBx8K7HO66qQ== + +postcss-ordered-values@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz#366bb663919707093451ab70c3f99c05672aaae5" + integrity sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q== + dependencies: + cssnano-utils "^4.0.2" + postcss-value-parser "^4.2.0" + +postcss-overflow-shorthand@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-6.0.0.tgz#f5252b4a2ee16c68cd8a9029edb5370c4a9808af" + integrity sha512-BdDl/AbVkDjoTofzDQnwDdm/Ym6oS9KgmO7Gr+LHYjNWJ6ExORe4+3pcLQsLA9gIROMkiGVjjwZNoL/mpXHd5Q== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-page-break@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-3.0.4.tgz#7fbf741c233621622b68d435babfb70dd8c1ee5f" + integrity sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ== + +postcss-place@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-10.0.0.tgz#ba36ee4786ca401377ced17a39d9050ed772e5a9" + integrity sha512-5EBrMzat2pPAxQNWYavwAfoKfYcTADJ8AXGVPcUZ2UkNloUTWzJQExgrzrDkh3EKzmAx1evfTAzF9I8NGcc+qw== + dependencies: + 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== + dependencies: + "@csstools/postcss-alpha-function" "^1.0.0" + "@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-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-initial" "^2.0.1" + "@csstools/postcss-is-pseudo-class" "^5.0.3" + "@csstools/postcss-light-dark-function" "^2.0.10" + "@csstools/postcss-logical-float-and-clear" "^3.0.0" + "@csstools/postcss-logical-overflow" "^2.0.0" + "@csstools/postcss-logical-overscroll-behavior" "^2.0.0" + "@csstools/postcss-logical-resize" "^3.0.0" + "@csstools/postcss-logical-viewport-units" "^3.0.4" + "@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-random-function" "^2.0.1" + "@csstools/postcss-relative-color-syntax" "^3.0.11" + "@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-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" + css-blank-pseudo "^7.0.1" + css-has-pseudo "^7.0.3" + css-prefers-color-scheme "^10.0.0" + cssdb "^8.4.0" + postcss-attribute-case-insensitive "^7.0.1" + postcss-clamp "^4.1.0" + postcss-color-functional-notation "^7.0.11" + 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-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-logical "^8.1.0" + postcss-nesting "^13.0.2" + postcss-opacity-percentage "^3.0.0" + postcss-overflow-shorthand "^6.0.0" + postcss-page-break "^3.0.4" + postcss-place "^10.0.0" + postcss-pseudo-class-any-link "^10.0.1" + postcss-replace-overflow-wrap "^4.0.0" + postcss-selector-not "^8.0.1" + +postcss-pseudo-class-any-link@^10.0.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-10.0.1.tgz#06455431171bf44b84d79ebaeee9fd1c05946544" + integrity sha512-3el9rXlBOqTFaMFkWDOkHUTQekFIYnaQY55Rsp8As8QQkpiSgIYEcF/6Ond93oHiDsGb4kad8zjt+NPlOC1H0Q== + dependencies: + postcss-selector-parser "^7.0.0" + +postcss-reduce-idents@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-reduce-idents/-/postcss-reduce-idents-6.0.3.tgz#b0d9c84316d2a547714ebab523ec7d13704cd486" + integrity sha512-G3yCqZDpsNPoQgbDUy3T0E6hqOQ5xigUtBQyrmq3tn2GxlyiL0yyl7H+T8ulQR6kOcHJ9t7/9H4/R2tv8tJbMA== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-reduce-initial@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz#4401297d8e35cb6e92c8e9586963e267105586ba" + integrity sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw== + dependencies: + browserslist "^4.23.0" + caniuse-api "^3.0.0" + +postcss-reduce-transforms@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz#6fa2c586bdc091a7373caeee4be75a0f3e12965d" + integrity sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-replace-overflow-wrap@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz#d2df6bed10b477bf9c52fab28c568b4b29ca4319" + integrity sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw== + +postcss-selector-not@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-8.0.1.tgz#f2df9c6ac9f95e9fe4416ca41a957eda16130172" + integrity sha512-kmVy/5PYVb2UOhy0+LqUYAhKj7DUGDpSWa5LZqlkWJaaAV+dxxsOG3+St0yNLu6vsKD7Dmqx+nWQt0iil89+WA== + dependencies: + 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== + 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== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + +postcss-sort-media-queries@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/postcss-sort-media-queries/-/postcss-sort-media-queries-5.2.0.tgz#4556b3f982ef27d3bac526b99b6c0d3359a6cf97" + integrity sha512-AZ5fDMLD8SldlAYlvi8NIqo0+Z8xnXU2ia0jxmuhxAU+Lqt9K+AlmLNJ/zWEnE9x+Zx3qL3+1K20ATgNOr3fAA== + dependencies: + sort-css-media-queries "2.2.0" + +postcss-svgo@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-6.0.3.tgz#1d6e180d6df1fa8a3b30b729aaa9161e94f04eaa" + integrity sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g== + dependencies: + postcss-value-parser "^4.2.0" + svgo "^3.2.0" + +postcss-unique-selectors@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz#983ab308896b4bf3f2baaf2336e14e52c11a2088" + integrity sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg== + dependencies: + postcss-selector-parser "^6.0.16" + +postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== + +postcss-zindex@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-6.0.2.tgz#e498304b83a8b165755f53db40e2ea65a99b56e1" + 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== + dependencies: + nanoid "^3.3.11" + picocolors "^1.1.1" + source-map-js "^1.2.1" + +pretty-error@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-4.0.0.tgz#90a703f46dd7234adb46d0f84823e9d1cb8f10d6" + integrity sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw== + dependencies: + lodash "^4.17.20" + renderkid "^3.0.0" + +pretty-time@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/pretty-time/-/pretty-time-1.1.0.tgz#ffb7429afabb8535c346a34e41873adf3d74dd0e" + integrity sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA== + +prism-react-renderer@^2.3.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/prism-react-renderer/-/prism-react-renderer-2.4.1.tgz#ac63b7f78e56c8f2b5e76e823a976d5ede77e35f" + integrity sha512-ey8Ls/+Di31eqzUxC46h8MksNuGx/n0AAC8uKpwFau4RPDYLuE3EXTp8N8G2vX2N7UC/+IXeNUnlWBGGcAG+Ig== + dependencies: + "@types/prismjs" "^1.26.0" + clsx "^2.0.0" + +prismjs@^1.29.0: + version "1.30.0" + resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.30.0.tgz#d9709969d9d4e16403f6f348c63553b19f0975a9" + integrity sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw== + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +prompts@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== + dependencies: + kleur "^3.0.3" + sisteransi "^1.0.5" + +prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: + version "15.8.1" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" + integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== + dependencies: + loose-envify "^1.4.0" + 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== + +proto-list@~1.2.1: + version "1.2.4" + resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" + integrity sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA== + +proxy-addr@~2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" + integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== + dependencies: + forwarded "0.2.0" + ipaddr.js "1.9.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== + 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== + dependencies: + side-channel "^1.0.6" + +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + +quick-lru@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" + integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== + +randombytes@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== + dependencies: + safe-buffer "^5.1.0" + +range-parser@1.2.0: + version "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: + 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== + dependencies: + bytes "3.1.2" + http-errors "2.0.0" + iconv-lite "0.4.24" + unpipe "1.0.0" + +rc@1.2.8: + version "1.2.8" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== + dependencies: + deep-extend "^0.6.0" + ini "~1.3.0" + minimist "^1.2.0" + 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== + dependencies: + scheduler "^0.26.0" + +react-fast-compare@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.2.tgz#929a97a532304ce9fee4bcae44234f1ce2c21d49" + integrity sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ== + +"react-helmet-async@npm:@slorber/react-helmet-async@1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@slorber/react-helmet-async/-/react-helmet-async-1.3.0.tgz#11fbc6094605cf60aa04a28c17e0aab894b4ecff" + integrity sha512-e9/OK8VhwUSc67diWI8Rb3I0YgI9/SBQtnhe9aEuK6MhZm7ntZZimXgwXnd8W96YTmSOb9M4d8LwhRZyhWr/1A== + dependencies: + "@babel/runtime" "^7.12.5" + invariant "^2.2.4" + prop-types "^15.7.2" + react-fast-compare "^3.2.0" + shallowequal "^1.1.0" + +react-is@^16.13.1, react-is@^16.6.0, react-is@^16.7.0: + version "16.13.1" + 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-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== + dependencies: + "@babel/runtime" "^7.10.3" + +"react-loadable@npm:@docusaurus/react-loadable@6.0.0": + version "6.0.0" + resolved "https://registry.yarnpkg.com/@docusaurus/react-loadable/-/react-loadable-6.0.0.tgz#de6c7f73c96542bd70786b8e522d535d69069dc4" + integrity sha512-YMMxTUQV/QFSnbgrP3tjDzLHRg7vsbMn8e9HAa8o/1iXoiomo48b7sk/kkmWEuWNDPJVlKSJRB6Y2fHqdJk+SQ== + dependencies: + "@types/react" "*" + +react-router-config@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/react-router-config/-/react-router-config-5.1.1.tgz#0f4263d1a80c6b2dc7b9c1902c9526478194a988" + integrity sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg== + dependencies: + "@babel/runtime" "^7.1.2" + +react-router-dom@^5.3.4: + version "5.3.4" + resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.3.4.tgz#2ed62ffd88cae6db134445f4a0c0ae8b91d2e5e6" + integrity sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ== + dependencies: + "@babel/runtime" "^7.12.13" + history "^4.9.0" + loose-envify "^1.3.1" + prop-types "^15.6.2" + react-router "5.3.4" + tiny-invariant "^1.0.2" + tiny-warning "^1.0.0" + +react-router@5.3.4, react-router@^5.3.4: + version "5.3.4" + resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.3.4.tgz#8ca252d70fcc37841e31473c7a151cf777887bb5" + integrity sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA== + dependencies: + "@babel/runtime" "^7.12.13" + history "^4.9.0" + hoist-non-react-statics "^3.1.0" + loose-envify "^1.3.1" + path-to-regexp "^1.7.0" + prop-types "^15.6.2" + react-is "^16.6.0" + tiny-invariant "^1.0.2" + tiny-warning "^1.0.0" + +react-transition-group@^4.4.5: + version "4.4.5" + resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.5.tgz#e53d4e3f3344da8521489fbef8f2581d42becdd1" + integrity sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g== + dependencies: + "@babel/runtime" "^7.5.5" + dom-helpers "^5.0.1" + loose-envify "^1.4.0" + 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== + +readable-stream@^2.0.1: + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~2.0.0" + safe-buffer "~5.1.1" + string_decoder "~1.1.1" + util-deprecate "~1.0.1" + +readable-stream@^3.0.6: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== + dependencies: + picomatch "^2.2.1" + +recma-build-jsx@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/recma-build-jsx/-/recma-build-jsx-1.0.0.tgz#c02f29e047e103d2fab2054954e1761b8ea253c4" + integrity sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew== + dependencies: + "@types/estree" "^1.0.0" + estree-util-build-jsx "^3.0.0" + vfile "^6.0.0" + +recma-jsx@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/recma-jsx/-/recma-jsx-1.0.1.tgz#58e718f45e2102ed0bf2fa994f05b70d76801a1a" + integrity sha512-huSIy7VU2Z5OLv6oFLosQGGDqPqdO1iq6bWNAdhzMxSJP7RAso4fCZ1cKu8j9YHCZf3TPrq4dw3okhrylgcd7w== + dependencies: + acorn-jsx "^5.0.0" + estree-util-to-js "^2.0.0" + recma-parse "^1.0.0" + recma-stringify "^1.0.0" + unified "^11.0.0" + +recma-parse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/recma-parse/-/recma-parse-1.0.0.tgz#c351e161bb0ab47d86b92a98a9d891f9b6814b52" + integrity sha512-OYLsIGBB5Y5wjnSnQW6t3Xg7q3fQ7FWbw/vcXtORTnyaSFscOtABg+7Pnz6YZ6c27fG1/aN8CjfwoUEUIdwqWQ== + dependencies: + "@types/estree" "^1.0.0" + esast-util-from-js "^2.0.0" + unified "^11.0.0" + vfile "^6.0.0" + +recma-stringify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/recma-stringify/-/recma-stringify-1.0.0.tgz#54632030631e0c7546136ff9ef8fde8e7b44f130" + integrity sha512-cjwII1MdIIVloKvC9ErQ+OgAtwHBmcZ0Bg4ciz78FtbT8In39aAYbaA7zvxQ61xVMSPE8WxhLwLbhif4Js2C+g== + dependencies: + "@types/estree" "^1.0.0" + estree-util-to-js "^2.0.0" + unified "^11.0.0" + vfile "^6.0.0" + +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" + integrity sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g== + dependencies: + regenerate "^1.4.2" + +regenerate@^1.4.2: + version "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== + dependencies: + regenerate "^1.4.2" + regenerate-unicode-properties "^10.2.2" + regjsgen "^0.8.0" + regjsparser "^0.12.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== + dependencies: + "@pnpm/npm-conf" "^2.1.0" + +registry-url@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-6.0.1.tgz#056d9343680f2f64400032b1e199faa692286c58" + integrity sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q== + dependencies: + rc "1.2.8" + +regjsgen@^0.8.0: + version "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== + dependencies: + jsesc "~3.0.2" + +rehype-raw@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/rehype-raw/-/rehype-raw-7.0.0.tgz#59d7348fd5dbef3807bbaa1d443efd2dd85ecee4" + integrity sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww== + dependencies: + "@types/hast" "^3.0.0" + hast-util-raw "^9.0.0" + vfile "^6.0.0" + +rehype-recma@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/rehype-recma/-/rehype-recma-1.0.0.tgz#d68ef6344d05916bd96e25400c6261775411aa76" + integrity sha512-lqA4rGUf1JmacCNWWZx0Wv1dHqMwxzsDWYMTowuplHF3xH0N/MmrZ/G3BDZnzAkRmxDadujCjaKM2hqYdCBOGw== + dependencies: + "@types/estree" "^1.0.0" + "@types/hast" "^3.0.0" + hast-util-to-estree "^3.0.0" + +relateurl@^0.2.7: + version "0.2.7" + resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" + integrity sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog== + +remark-directive@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/remark-directive/-/remark-directive-3.0.1.tgz#689ba332f156cfe1118e849164cc81f157a3ef0a" + integrity sha512-gwglrEQEZcZYgVyG1tQuA+h58EZfq5CSULw7J90AFuCTyib1thgHPoqQ+h9iFvU6R+vnZ5oNFQR5QKgGpk741A== + dependencies: + "@types/mdast" "^4.0.0" + mdast-util-directive "^3.0.0" + micromark-extension-directive "^3.0.0" + unified "^11.0.0" + +remark-emoji@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/remark-emoji/-/remark-emoji-4.0.1.tgz#671bfda668047689e26b2078c7356540da299f04" + integrity sha512-fHdvsTR1dHkWKev9eNyhTo4EFwbUvJ8ka9SgeWkMPYFX4WoI7ViVBms3PjlQYgw5TLvNQso3GUB/b/8t3yo+dg== + dependencies: + "@types/mdast" "^4.0.2" + emoticon "^4.0.1" + mdast-util-find-and-replace "^3.0.1" + node-emoji "^2.1.0" + unified "^11.0.4" + +remark-frontmatter@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/remark-frontmatter/-/remark-frontmatter-5.0.0.tgz#b68d61552a421ec412c76f4f66c344627dc187a2" + integrity sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ== + dependencies: + "@types/mdast" "^4.0.0" + mdast-util-frontmatter "^2.0.0" + micromark-extension-frontmatter "^2.0.0" + unified "^11.0.0" + +remark-gfm@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/remark-gfm/-/remark-gfm-4.0.1.tgz#33227b2a74397670d357bf05c098eaf8513f0d6b" + integrity sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg== + dependencies: + "@types/mdast" "^4.0.0" + mdast-util-gfm "^3.0.0" + micromark-extension-gfm "^3.0.0" + remark-parse "^11.0.0" + remark-stringify "^11.0.0" + unified "^11.0.0" + +remark-mdx@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/remark-mdx/-/remark-mdx-3.1.1.tgz#047f97038bc7ec387aebb4b0a4fe23779999d845" + integrity sha512-Pjj2IYlUY3+D8x00UJsIOg5BEvfMyeI+2uLPn9VO9Wg4MEtN/VTIq2NEJQfde9PnX15KgtHyl9S0BcTnWrIuWg== + dependencies: + mdast-util-mdx "^3.0.0" + micromark-extension-mdxjs "^3.0.0" + +remark-parse@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-11.0.0.tgz#aa60743fcb37ebf6b069204eb4da304e40db45a1" + integrity sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA== + dependencies: + "@types/mdast" "^4.0.0" + mdast-util-from-markdown "^2.0.0" + micromark-util-types "^2.0.0" + unified "^11.0.0" + +remark-rehype@^11.0.0: + version "11.1.2" + resolved "https://registry.yarnpkg.com/remark-rehype/-/remark-rehype-11.1.2.tgz#2addaadda80ca9bd9aa0da763e74d16327683b37" + integrity sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw== + dependencies: + "@types/hast" "^3.0.0" + "@types/mdast" "^4.0.0" + mdast-util-to-hast "^13.0.0" + unified "^11.0.0" + vfile "^6.0.0" + +remark-stringify@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-11.0.0.tgz#4c5b01dd711c269df1aaae11743eb7e2e7636fd3" + integrity sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw== + dependencies: + "@types/mdast" "^4.0.0" + mdast-util-to-markdown "^2.0.0" + unified "^11.0.0" + +renderkid@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-3.0.0.tgz#5fd823e4d6951d37358ecc9a58b1f06836b6268a" + integrity sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg== + dependencies: + css-select "^4.1.3" + dom-converter "^0.2.0" + htmlparser2 "^6.1.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" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +"require-like@>= 0.1.1": + version "0.1.2" + resolved "https://registry.yarnpkg.com/require-like/-/require-like-0.1.2.tgz#ad6f30c13becd797010c468afa775c0c0a6b47fa" + integrity sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A== + +requires-port@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== + +resolve-alpn@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9" + integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g== + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve-pathname@^3.0.0: + version "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== + dependencies: + is-core-module "^2.16.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +responselike@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/responselike/-/responselike-3.0.0.tgz#20decb6c298aff0dbee1c355ca95461d42823626" + integrity sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg== + dependencies: + lowercase-keys "^3.0.0" + +retry@^0.13.1: + version "0.13.1" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" + integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== + +reusify@^1.0.4: + version "1.1.0" + 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== + dependencies: + glob "^7.1.3" + +rtlcss@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/rtlcss/-/rtlcss-4.3.0.tgz#f8efd4d5b64f640ec4af8fa25b65bacd9e07cc97" + integrity sha512-FI+pHEn7Wc4NqKXMXFM+VAYKEj/mRIcW4h24YVwVtyjI+EqGrLc2Hx/Ny0lrZ21cBWU2goLy36eqMcNj3AQJig== + dependencies: + escalade "^3.1.1" + picocolors "^1.0.0" + postcss "^8.4.21" + strip-json-comments "^3.1.1" + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + 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: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + 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": + 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== + +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== + +schema-dts@^1.1.2: + version "1.1.5" + resolved "https://registry.yarnpkg.com/schema-dts/-/schema-dts-1.1.5.tgz#9237725d305bac3469f02b292a035107595dc324" + integrity sha512-RJr9EaCmsLzBX2NDiO5Z3ux2BVosNZN5jo0gWgsyKvxKIUL5R3swNvoorulAeL9kLB0iTSX7V6aokhla2m7xbg== + +schema-utils@^3.0.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" + integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== + dependencies: + "@types/json-schema" "^7.0.8" + 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== + dependencies: + "@types/json-schema" "^7.0.9" + ajv "^8.9.0" + ajv-formats "^2.1.1" + ajv-keywords "^5.1.0" + +section-matter@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/section-matter/-/section-matter-1.0.0.tgz#e9041953506780ec01d59f292a19c7b850b84167" + integrity sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA== + dependencies: + extend-shallow "^2.0.1" + kind-of "^6.0.0" + +select-hose@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" + integrity sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg== + +select@^1.1.2: + version "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== + dependencies: + "@types/node-forge" "^1.3.0" + node-forge "^1" + +semver-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-4.0.0.tgz#3afcf5ed6d62259f5c72d0d5d50dffbdc9680df5" + integrity sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA== + dependencies: + semver "^7.3.5" + +semver@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + 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== + +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== + dependencies: + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "2.0.0" + mime "1.6.0" + ms "2.1.3" + on-finished "2.4.1" + range-parser "~1.2.1" + statuses "2.0.1" + +serialize-javascript@^6.0.0, serialize-javascript@^6.0.1, serialize-javascript@^6.0.2: + 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== + dependencies: + bytes "3.0.0" + content-disposition "0.5.2" + mime-types "2.1.18" + minimatch "3.1.2" + 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== + dependencies: + accepts "~1.3.4" + 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" + +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== + dependencies: + encodeurl "~2.0.0" + escape-html "~1.0.3" + parseurl "~1.3.3" + send "0.19.0" + +set-function-length@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + 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: + version "1.2.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== + +shallow-clone@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" + integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== + dependencies: + kind-of "^6.0.2" + +shallowequal@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" + integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "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== + +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== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.3" + +side-channel-map@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42" + integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + +side-channel-weakmap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea" + integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + 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== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.3" + side-channel-list "^1.0.0" + side-channel-map "^1.0.1" + side-channel-weakmap "^1.0.2" + +signal-exit@^3.0.2, signal-exit@^3.0.3: + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== + +sirv@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/sirv/-/sirv-2.0.4.tgz#5dd9a725c578e34e449f332703eb2a74e46a29b0" + integrity sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ== + dependencies: + "@polka/url" "^1.0.0-next.24" + mrmime "^2.0.0" + totalist "^3.0.0" + +sisteransi@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + 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== + dependencies: + "@types/node" "^17.0.5" + "@types/sax" "^1.2.1" + arg "^5.0.0" + sax "^1.2.4" + +skin-tone@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/skin-tone/-/skin-tone-2.0.0.tgz#4e3933ab45c0d4f4f781745d64b9f4c208e41237" + integrity sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA== + dependencies: + unicode-emoji-modifier-base "^1.0.0" + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +slash@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-4.0.0.tgz#2422372176c4c6c5addb5e2ada885af984b396a7" + integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew== + +snake-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-3.0.4.tgz#4f2bbd568e9935abdfd593f34c691dadb49c452c" + integrity sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + +sockjs@^0.3.24: + version "0.3.24" + resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" + integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ== + dependencies: + faye-websocket "^0.11.3" + uuid "^8.3.2" + websocket-driver "^0.7.4" + +sort-css-media-queries@2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/sort-css-media-queries/-/sort-css-media-queries-2.2.0.tgz#aa33cf4a08e0225059448b6c40eddbf9f1c8334c" + integrity sha512-0xtkGhWCC9MGt/EzgnvbbbKhqWjl1+/rncmhTh5qCpbYguXh6S/qwePfv/JQ8jePXXmqingylxoC49pCkSPIbA== + +source-map-js@^1.0.1, source-map-js@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" + integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== + +source-map-support@~0.5.20: + version "0.5.21" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map@^0.5.7: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== + +source-map@^0.6.0, source-map@~0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +source-map@^0.7.0: + version "0.7.6" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.6.tgz#a3658ab87e5b6429c8a1f3ba0083d4c61ca3ef02" + integrity sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ== + +space-separated-tokens@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz#1ecd9d2350a3844572c3f4a312bceb018348859f" + integrity sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q== + +spdy-transport@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" + integrity sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw== + dependencies: + debug "^4.1.0" + detect-node "^2.0.4" + hpack.js "^2.1.6" + obuf "^1.1.2" + readable-stream "^3.0.6" + wbuf "^1.7.3" + +spdy@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.2.tgz#b74f466203a3eda452c02492b91fb9e84a27677b" + integrity sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA== + dependencies: + debug "^4.1.0" + handle-thing "^2.0.0" + http-deceiver "^1.2.7" + 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": + version "1.5.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== + +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== + +string-width@^4.1.0, string-width@^4.2.0: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== + dependencies: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +stringify-entities@^4.0.0: + version "4.0.4" + resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-4.0.4.tgz#b3b79ef5f277cc4ac73caeb0236c5ba939b3a4f3" + integrity sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg== + dependencies: + character-entities-html4 "^2.0.0" + character-entities-legacy "^3.0.0" + +stringify-object@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" + integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== + dependencies: + get-own-enumerable-property-symbols "^3.0.0" + is-obj "^1.0.1" + is-regexp "^1.0.0" + +strip-ansi@^6.0.0, 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== + dependencies: + 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== + dependencies: + ansi-regex "^6.0.1" + +strip-bom-string@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92" + integrity sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g== + +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + 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== + dependencies: + style-to-object "1.0.9" + +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== + dependencies: + inline-style-parser "0.2.4" + +stylehacks@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-6.1.1.tgz#543f91c10d17d00a440430362d419f79c25545a6" + integrity sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg== + dependencies: + browserslist "^4.23.0" + postcss-selector-parser "^6.0.16" + +stylis@4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51" + integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw== + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-color@^8.0.0: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +svg-parser@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.4.tgz#fdc2e29e13951736140b76cb122c8ee6630eb6b5" + 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== + 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" + +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== + +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== + 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== + dependencies: + "@jridgewell/source-map" "^0.3.3" + acorn "^8.15.0" + commander "^2.20.0" + source-map-support "~0.5.20" + +thunky@^1.0.2: + version "1.1.0" + resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" + integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== + +tiny-emitter@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" + integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== + +tiny-invariant@^1.0.2: + version "1.3.3" + resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.3.tgz#46680b7a873a0d5d10005995eb90a70d74d60127" + integrity sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg== + +tiny-warning@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754" + integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA== + +tinypool@^1.0.2: + version "1.1.1" + resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-1.1.1.tgz#059f2d042bd37567fbc017d3d426bdd2a2612591" + integrity sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg== + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +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== + +totalist@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/totalist/-/totalist-3.0.1.tgz#ba3a3d600c915b1a97872348f79c127475f6acf8" + integrity sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ== + +trim-lines@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-3.0.1.tgz#d802e332a07df861c48802c04321017b1bd87338" + integrity sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg== + +trough@^2.0.0: + version "2.2.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: + 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== + +type-fest@^1.0.1: + version "1.4.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" + integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== + +type-fest@^2.13.0, type-fest@^2.5.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.19.0.tgz#88068015bb33036a598b952e55e9311a60fd3a9b" + integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA== + +type-is@~1.6.18: + version "1.6.18" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + +typedarray-to-buffer@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== + 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== + +unicode-canonical-property-names-ecmascript@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz#cb3173fe47ca743e228216e4a3ddc4c84d628cc2" + integrity sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg== + +unicode-emoji-modifier-base@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unicode-emoji-modifier-base/-/unicode-emoji-modifier-base-1.0.0.tgz#dbbd5b54ba30f287e2a8d5a249da6c0cef369459" + integrity sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g== + +unicode-match-property-ecmascript@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" + integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q== + dependencies: + unicode-canonical-property-names-ecmascript "^2.0.0" + unicode-property-aliases-ecmascript "^2.0.0" + +unicode-match-property-value-ecmascript@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.1.tgz#65a7adfad8574c219890e219285ce4c64ed67eaa" + 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== + +unified@^11.0.0, unified@^11.0.3, unified@^11.0.4: + version "11.0.5" + resolved "https://registry.yarnpkg.com/unified/-/unified-11.0.5.tgz#f66677610a5c0a9ee90cab2b8d4d66037026d9e1" + integrity sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA== + dependencies: + "@types/unist" "^3.0.0" + bail "^2.0.0" + devlop "^1.0.0" + extend "^3.0.0" + is-plain-obj "^4.0.0" + trough "^2.0.0" + vfile "^6.0.0" + +unique-string@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-3.0.0.tgz#84a1c377aff5fd7a8bc6b55d8244b2bd90d75b9a" + integrity sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ== + dependencies: + 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== + dependencies: + "@types/unist" "^3.0.0" + +unist-util-position-from-estree@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/unist-util-position-from-estree/-/unist-util-position-from-estree-2.0.0.tgz#d94da4df596529d1faa3de506202f0c9a23f2200" + integrity sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ== + dependencies: + "@types/unist" "^3.0.0" + +unist-util-position@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-5.0.0.tgz#678f20ab5ca1207a97d7ea8a388373c9cf896be4" + integrity sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA== + dependencies: + "@types/unist" "^3.0.0" + +unist-util-stringify-position@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz#449c6e21a880e0855bf5aabadeb3a740314abac2" + integrity sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ== + dependencies: + "@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== + 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== + dependencies: + "@types/unist" "^3.0.0" + unist-util-is "^6.0.0" + unist-util-visit-parents "^6.0.0" + +universalify@^2.0.0: + version "2.0.1" + 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: + 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== + dependencies: + escalade "^3.2.0" + picocolors "^1.1.1" + +update-notifier@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-6.0.2.tgz#a6990253dfe6d5a02bd04fbb6a61543f55026b60" + integrity sha512-EDxhTEVPZZRLWYcJ4ZXjGFN0oP7qYvbXWzEgRm/Yql4dHX5wDbvh89YHP6PK1lzZJYrMtXUuZZz8XGK+U6U1og== + dependencies: + boxen "^7.0.0" + chalk "^5.0.1" + configstore "^6.0.0" + has-yarn "^3.0.0" + import-lazy "^4.0.0" + is-ci "^3.0.1" + is-installed-globally "^0.4.0" + is-npm "^6.0.0" + is-yarn-global "^0.4.0" + latest-version "^7.0.0" + pupa "^3.1.0" + semver "^7.3.7" + semver-diff "^4.0.0" + xdg-basedir "^5.1.0" + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +url-loader@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" + integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== + dependencies: + loader-utils "^2.0.0" + mime-types "^2.1.27" + schema-utils "^3.0.0" + +util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +utila@~0.4: + version "0.4.0" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" + integrity sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA== + +utility-types@^3.10.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/utility-types/-/utility-types-3.11.0.tgz#607c40edb4f258915e901ea7995607fdf319424c" + integrity sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw== + +utils-merge@1.0.1: + version "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== + +value-equal@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-1.0.1.tgz#1e0b794c734c5c0cade179c437d356d931a34d6c" + integrity sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw== + +vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== + +vfile-location@^5.0.0: + version "5.0.3" + resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-5.0.3.tgz#cb9eacd20f2b6426d19451e0eafa3d0a846225c3" + integrity sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg== + dependencies: + "@types/unist" "^3.0.0" + vfile "^6.0.0" + +vfile-message@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-4.0.3.tgz#87b44dddd7b70f0641c2e3ed0864ba73e2ea8df4" + integrity sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw== + dependencies: + "@types/unist" "^3.0.0" + unist-util-stringify-position "^4.0.0" + +vfile@^6.0.0, vfile@^6.0.1: + version "6.0.3" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-6.0.3.tgz#3652ab1c496531852bf55a6bac57af981ebc38ab" + integrity sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q== + dependencies: + "@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== + dependencies: + glob-to-regexp "^0.4.1" + graceful-fs "^4.1.2" + +wbuf@^1.1.0, wbuf@^1.7.3: + version "1.7.3" + resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" + integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== + dependencies: + minimalistic-assert "^1.0.0" + +web-namespaces@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-2.0.1.tgz#1010ff7c650eccb2592cebeeaf9a1b253fd40692" + integrity sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ== + +webpack-bundle-analyzer@^4.10.2: + version "4.10.2" + resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz#633af2862c213730be3dbdf40456db171b60d5bd" + integrity sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw== + dependencies: + "@discoveryjs/json-ext" "0.5.7" + acorn "^8.0.4" + acorn-walk "^8.0.0" + commander "^7.2.0" + debounce "^1.2.1" + escape-string-regexp "^4.0.0" + gzip-size "^6.0.0" + html-escaper "^2.0.2" + opener "^1.5.2" + picocolors "^1.0.0" + 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== + dependencies: + colorette "^2.0.10" + memfs "^3.4.3" + mime-types "^2.1.31" + 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" + ansi-html-community "^0.0.8" + bonjour-service "^1.0.11" + chokidar "^3.5.3" + colorette "^2.0.10" + compression "^1.7.4" + connect-history-api-fallback "^2.0.0" + default-gateway "^6.0.3" + express "^4.17.3" + 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" + serve-index "^1.9.1" + sockjs "^0.3.24" + spdy "^4.0.2" + webpack-dev-middleware "^5.3.4" + ws "^8.13.0" + +webpack-merge@^5.9.0: + version "5.10.0" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.10.0.tgz#a3ad5d773241e9c682803abf628d4cd62b8a4177" + integrity sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA== + dependencies: + clone-deep "^4.0.1" + flat "^5.0.2" + wildcard "^2.0.0" + +webpack-merge@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-6.0.1.tgz#50c776868e080574725abc5869bd6e4ef0a16c6a" + integrity sha512-hXXvrjtx2PLYx4qruKl+kyRSLc52V+cCvMxRjmKwoA+CBbbF5GfIBtR6kCvl0fYGqTUPKB+1ktVmTHqMOzgCBg== + dependencies: + clone-deep "^4.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@^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== + 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-import-phases "^1.0.3" + browserslist "^4.24.0" + chrome-trace-event "^1.0.2" + enhanced-resolve "^5.17.3" + es-module-lexer "^1.2.1" + 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" + 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" + +webpackbar@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/webpackbar/-/webpackbar-6.0.1.tgz#5ef57d3bf7ced8b19025477bc7496ea9d502076b" + integrity sha512-TnErZpmuKdwWBdMoexjio3KKX6ZtoKHRVvLIU0A47R0VVBDtx3ZyOJDktgYixhoJokZTYTt1Z37OkO9pnGJa9Q== + dependencies: + ansi-escapes "^4.3.2" + chalk "^4.1.2" + 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== + dependencies: + http-parser-js ">=0.5.1" + safe-buffer ">=5.1.0" + websocket-extensions ">=0.1.1" + +websocket-extensions@>=0.1.1: + version "0.1.4" + resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" + integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +widest-line@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-4.0.1.tgz#a0fc673aaba1ea6f0a0d35b3c2795c9a9cc2ebf2" + integrity sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig== + dependencies: + string-width "^5.0.1" + +wildcard@^2.0.0, wildcard@^2.0.1: + version "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" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +write-file-atomic@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== + dependencies: + imurmurhash "^0.1.4" + is-typedarray "^1.0.0" + signal-exit "^3.0.2" + 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== + +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== + +xdg-basedir@^5.0.1, xdg-basedir@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-5.1.0.tgz#1efba19425e73be1bc6f2a6ceb52a3d2c884c0c9" + integrity sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ== + +xml-js@^1.6.11: + version "1.6.11" + resolved "https://registry.yarnpkg.com/xml-js/-/xml-js-1.6.11.tgz#927d2f6947f7f1c19a316dd8eea3614e8b18f8e9" + integrity sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g== + dependencies: + sax "^1.2.4" + +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + 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== + +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== + +zwitch@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-2.0.4.tgz#c827d4b0acb76fc3e685a4c6ec2902d51070e9d7" + integrity sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A== From 585406da7988c3888c38d35f838069fc0d2cbfaa Mon Sep 17 00:00:00 2001 From: Jeffrey Aven Date: Tue, 16 Sep 2025 04:53:12 +1000 Subject: [PATCH 2/2] working --- ...eploy.yml.disabled => prod-web-deploy.yml} | 0 ...eploy.yml.disabled => test-web-deploy.yml} | 0 README.md | 6 +- provider-dev/config/all_services.csv | 922 +++++++++--------- .../docgen/provider-data/headerContent1.txt | 10 +- .../docgen/provider-data/headerContent2.txt | 11 +- .../v00.00.00000/services/actions.yaml | 13 +- .../datadog/v00.00.00000/services/apm.yaml | 13 +- .../v00.00.00000/services/catalog.yaml | 15 +- .../v00.00.00000/services/cloud_costs.yaml | 15 +- .../v00.00.00000/services/dashboards.yaml | 14 +- .../services/digital_experience.yaml | 12 +- .../v00.00.00000/services/infrastructure.yaml | 17 +- .../v00.00.00000/services/integrations.yaml | 11 +- .../datadog/v00.00.00000/services/logs.yaml | 13 +- .../v00.00.00000/services/metrics.yaml | 15 +- .../v00.00.00000/services/monitoring.yaml | 14 +- .../v00.00.00000/services/organization.yaml | 42 +- .../v00.00.00000/services/remote_config.yaml | 12 +- .../v00.00.00000/services/security.yaml | 37 +- .../services/service_management.yaml | 36 +- .../services/software_delivery.yaml | 14 +- provider-dev/scripts/.gitkeep | 0 provider-dev/scripts/fix_broken_links.sh | 4 + website/docs/.gitkeep | 0 website/docs/index.md | 94 ++ .../actions/app_key_registrations/index.md | 245 +++++ .../services/actions/connections/index.md | 261 +++++ .../services/actions/datastore_items/index.md | 293 ++++++ .../docs/services/actions/datastores/index.md | 310 ++++++ website/docs/services/actions/index.md | 35 + website/docs/services/apm/index.md | 35 + .../services/apm/retention_filters/index.md | 343 +++++++ .../services/apm/scorecard_outcomes/index.md | 289 ++++++ .../services/apm/scorecard_rules/index.md | 323 ++++++ .../docs/services/apm/spans_metrics/index.md | 311 ++++++ website/docs/services/catalog/apis/index.md | 298 ++++++ .../catalog/catalog_entities/index.md | 292 ++++++ .../services/catalog/catalog_kinds/index.md | 267 +++++ .../catalog/catalog_relations/index.md | 193 ++++ website/docs/services/catalog/index.md | 35 + .../active_billing_dimensions/index.md | 139 +++ .../services/cloud_costs/aws_configs/index.md | 258 +++++ .../cloud_costs/azure_configs/index.md | 258 +++++ .../services/cloud_costs/budgets/index.md | 258 +++++ .../services/cloud_costs/costs_files/index.md | 278 ++++++ .../services/cloud_costs/gcp_configs/index.md | 258 +++++ website/docs/services/cloud_costs/index.md | 38 + .../monthly_cost_attribution/index.md | 187 ++++ .../dashboards/dashboard_list_items/index.md | 329 +++++++ website/docs/services/dashboards/index.md | 33 + .../services/dashboards/powerpacks/index.md | 336 +++++++ .../docs/services/digital_experience/index.md | 35 + .../rum_applications/index.md | 311 ++++++ .../digital_experience/rum_events/index.md | 236 +++++ .../digital_experience/rum_metrics/index.md | 311 ++++++ .../rum_retention_filters/index.md | 358 +++++++ .../aggregated_connections/index.md | 169 ++++ .../infrastructure/aggregated_dns/index.md | 169 ++++ .../services/infrastructure/apps/index.md | 463 +++++++++ .../infrastructure/container_images/index.md | 152 +++ .../infrastructure/containers/index.md | 152 +++ .../infrastructure/device_interfaces/index.md | 151 +++ .../infrastructure/device_user_tags/index.md | 178 ++++ .../services/infrastructure/devices/index.md | 221 +++++ website/docs/services/infrastructure/index.md | 41 + .../infrastructure/processes/index.md | 175 ++++ .../spa_recommendations/index.md | 151 +++ .../integrations/aws_accounts/index.md | 349 +++++++ .../integrations/aws_iam_permissions/index.md | 141 +++ .../integrations/aws_logs_services/index.md | 141 +++ .../integrations/aws_namespaces/index.md | 141 +++ .../integrations/cloudflare_accounts/index.md | 311 ++++++ .../integrations/confluent_accounts/index.md | 311 ++++++ .../integrations/confluent_resources/index.md | 325 ++++++ .../integrations/fastly_accounts/index.md | 311 ++++++ .../integrations/fastly_services/index.md | 325 ++++++ .../integrations/gcp_accounts/index.md | 263 +++++ .../integrations/gcp_sts_delegate/index.md | 167 ++++ website/docs/services/integrations/index.md | 47 + .../integrations/ms_teams_channels/index.md | 157 +++ .../ms_teams_tenant_based_handles/index.md | 323 ++++++ .../index.md | 317 ++++++ .../integrations/okta_accounts/index.md | 311 ++++++ .../integrations/opsgenie_services/index.md | 311 ++++++ .../docs/services/logs/archive_order/index.md | 165 ++++ .../services/logs/archive_read_roles/index.md | 234 +++++ website/docs/services/logs/archives/index.md | 310 ++++++ .../logs/custom_destinations/index.md | 310 ++++++ website/docs/services/logs/index.md | 37 + website/docs/services/logs/logs/index.md | 337 +++++++ website/docs/services/logs/metrics/index.md | 311 ++++++ .../active_tag_configurations/index.md | 151 +++ .../docs/services/metrics/datasets/index.md | 319 ++++++ website/docs/services/metrics/index.md | 41 + .../docs/services/metrics/metrics/index.md | 188 ++++ .../metrics/metrics_output_series/index.md | 175 ++++ .../services/metrics/related_assets/index.md | 145 +++ website/docs/services/metrics/spans/index.md | 260 +++++ .../metrics/tag_cardinality_details/index.md | 145 +++ .../metrics/tag_configurations/index.md | 402 ++++++++ website/docs/services/metrics/tags/index.md | 145 +++ .../docs/services/metrics/volumes/index.md | 128 +++ .../monitoring/config_policies/index.md | 311 ++++++ .../services/monitoring/downtimes/index.md | 157 +++ website/docs/services/monitoring/index.md | 36 + .../monitoring/notification_rules/index.md | 356 +++++++ .../on_demand_concurrency_cap/index.md | 184 ++++ .../monitoring/user_templates/index.md | 372 +++++++ .../services/organization/api_keys/index.md | 392 ++++++++ .../organization/application_keys/index.md | 316 ++++++ .../services/organization/audit_logs/index.md | 210 ++++ .../organization/authn_mappings/index.md | 355 +++++++ .../billing_dimension_mapping/index.md | 151 +++ .../services/organization/configs/index.md | 231 +++++ .../organization/connections/index.md | 264 +++++ .../organization/cost_by_org/index.md | 151 +++ .../current_user_application_keys/index.md | 367 +++++++ .../data_deletion_requests/index.md | 265 +++++ .../organization/domain_allowlist/index.md | 172 ++++ .../estimated_cost_by_org/index.md | 175 ++++ .../historical_cost_by_org/index.md | 163 ++++ .../organization/hourly_usage/index.md | 193 ++++ .../organization/idp_metadata/index.md | 105 ++ website/docs/services/organization/index.md | 68 ++ .../organization/invitations/index.md | 183 ++++ .../organization/ip_allowlist/index.md | 172 ++++ .../lambda_traced_invocations_usage/index.md | 151 +++ .../observability_pipelines_usage/index.md | 151 +++ .../organization/permissions/index.md | 139 +++ .../organization/projected_cost/index.md | 151 +++ .../restriction_policies/index.md | 214 ++++ .../organization/role_permissions/index.md | 249 +++++ .../services/organization/role_users/index.md | 233 +++++ .../docs/services/organization/roles/index.md | 386 ++++++++ .../service_account_keys/index.md | 375 +++++++ .../organization/service_accounts/index.md | 125 +++ .../services/organization/team_links/index.md | 325 ++++++ .../organization/team_members/index.md | 258 +++++ .../organization/team_memberships/index.md | 305 ++++++ .../team_permission_settings/index.md | 185 ++++ .../docs/services/organization/teams/index.md | 397 ++++++++ .../index.md | 151 +++ .../organization/user_organizations/index.md | 151 +++ .../organization/user_permissions/index.md | 145 +++ .../user_team_memberships/index.md | 153 +++ .../docs/services/organization/users/index.md | 361 +++++++ .../csm_threats_agent_policies/index.md | 339 +++++++ .../csm_threats_agent_rules/index.md | 320 ++++++ website/docs/services/remote_config/index.md | 36 + .../observability_pipelines/index.md | 355 +++++++ .../remote_config/waf_custom_rules/index.md | 311 ++++++ .../waf_exclusion_filters/index.md | 311 ++++++ .../security/aws_on_demand_tasks/index.md | 250 +++++ .../security/aws_scan_options/index.md | 309 ++++++ .../index.md | 339 +++++++ .../services/security/csm_agents/index.md | 163 ++++ .../index.md | 139 +++ .../index.md | 139 +++ .../security/csm_serverless_agents/index.md | 163 ++++ .../csm_serverless_coverage_analysis/index.md | 139 +++ .../security/custom_frameworks/index.md | 267 +++++ .../docs/services/security/filters/index.md | 313 ++++++ .../docs/services/security/findings/index.md | 320 ++++++ .../security/historical_jobs/index.md | 332 +++++++ website/docs/services/security/index.md | 59 ++ .../security/monitoring_hist_signals/index.md | 353 +++++++ .../security/monitoring_rules/index.md | 538 ++++++++++ .../security/monitoring_signals/index.md | 336 +++++++ .../security/monitoring_suppressions/index.md | 343 +++++++ .../resource_evaluation_filters/index.md | 190 ++++ .../security/rule_version_history/index.md | 157 +++ website/docs/services/security/sboms/index.md | 257 +++++ .../security/scanning_groups/index.md | 306 ++++++ .../services/security/scanning_rules/index.md | 201 ++++ .../signal_notification_rules/index.md | 314 ++++++ .../security/standard_patterns/index.md | 139 +++ .../index.md | 209 ++++ .../suppressions_affecting_rule/index.md | 145 +++ .../security/vulnerabilities/index.md | 397 ++++++++ .../vulnerability_notification_rules/index.md | 314 ++++++ .../security/vulnerable_assets/index.md | 241 +++++ .../service_management/cases/index.md | 421 ++++++++ .../service_management/downtimes/index.md | 350 +++++++ .../service_management/events/index.md | 336 +++++++ .../incident_attachments/index.md | 199 ++++ .../incident_integrations/index.md | 339 +++++++ .../incident_notification_rules/index.md | 334 +++++++ .../incident_notification_templates/index.md | 340 +++++++ .../incident_services/index.md | 350 +++++++ .../incident_teams/index.md | 350 +++++++ .../incident_todos/index.md | 339 +++++++ .../incident_types/index.md | 329 +++++++ .../service_management/incidents/index.md | 406 ++++++++ .../docs/services/service_management/index.md | 53 + .../service_management/issues/index.md | 270 +++++ .../on_call_escalation_policies/index.md | 279 ++++++ .../service_management/on_call_page/index.md | 196 ++++ .../on_call_schedule/index.md | 279 ++++++ .../on_call_team_routing_rules/index.md | 186 ++++ .../on_call_user_schedule/index.md | 163 ++++ .../service_management/projects/index.md | 289 ++++++ .../service_definitions/index.md | 382 ++++++++ .../slo_report_job/index.md | 225 +++++ .../team_on_call_users/index.md | 151 +++ .../ci_app_pipeline_events/index.md | 284 ++++++ .../ci_app_test_events/index.md | 283 ++++++ .../dora_deployments/index.md | 236 +++++ .../software_delivery/dora_failures/index.md | 236 +++++ .../software_delivery/dora_incidents/index.md | 124 +++ .../docs/services/software_delivery/index.md | 38 + .../workflow_instances/index.md | 278 ++++++ .../software_delivery/workflows/index.md | 267 +++++ website/docusaurus.config.js | 4 +- ...tackql-datadog-provider-featured-image.png | Bin 0 -> 33408 bytes ...l-digitalocean-provider-featured-image.png | Bin 23974 -> 0 bytes 216 files changed, 45258 insertions(+), 625 deletions(-) rename .github/workflows/{prod-web-deploy.yml.disabled => prod-web-deploy.yml} (100%) rename .github/workflows/{test-web-deploy.yml.disabled => test-web-deploy.yml} (100%) delete mode 100644 provider-dev/scripts/.gitkeep create mode 100644 provider-dev/scripts/fix_broken_links.sh delete mode 100644 website/docs/.gitkeep create mode 100644 website/docs/index.md create mode 100644 website/docs/services/actions/app_key_registrations/index.md create mode 100644 website/docs/services/actions/connections/index.md create mode 100644 website/docs/services/actions/datastore_items/index.md create mode 100644 website/docs/services/actions/datastores/index.md create mode 100644 website/docs/services/actions/index.md create mode 100644 website/docs/services/apm/index.md create mode 100644 website/docs/services/apm/retention_filters/index.md create mode 100644 website/docs/services/apm/scorecard_outcomes/index.md create mode 100644 website/docs/services/apm/scorecard_rules/index.md create mode 100644 website/docs/services/apm/spans_metrics/index.md create mode 100644 website/docs/services/catalog/apis/index.md create mode 100644 website/docs/services/catalog/catalog_entities/index.md create mode 100644 website/docs/services/catalog/catalog_kinds/index.md create mode 100644 website/docs/services/catalog/catalog_relations/index.md create mode 100644 website/docs/services/catalog/index.md create mode 100644 website/docs/services/cloud_costs/active_billing_dimensions/index.md create mode 100644 website/docs/services/cloud_costs/aws_configs/index.md create mode 100644 website/docs/services/cloud_costs/azure_configs/index.md create mode 100644 website/docs/services/cloud_costs/budgets/index.md create mode 100644 website/docs/services/cloud_costs/costs_files/index.md create mode 100644 website/docs/services/cloud_costs/gcp_configs/index.md create mode 100644 website/docs/services/cloud_costs/index.md create mode 100644 website/docs/services/cloud_costs/monthly_cost_attribution/index.md create mode 100644 website/docs/services/dashboards/dashboard_list_items/index.md create mode 100644 website/docs/services/dashboards/index.md create mode 100644 website/docs/services/dashboards/powerpacks/index.md create mode 100644 website/docs/services/digital_experience/index.md create mode 100644 website/docs/services/digital_experience/rum_applications/index.md create mode 100644 website/docs/services/digital_experience/rum_events/index.md create mode 100644 website/docs/services/digital_experience/rum_metrics/index.md create mode 100644 website/docs/services/digital_experience/rum_retention_filters/index.md create mode 100644 website/docs/services/infrastructure/aggregated_connections/index.md create mode 100644 website/docs/services/infrastructure/aggregated_dns/index.md create mode 100644 website/docs/services/infrastructure/apps/index.md create mode 100644 website/docs/services/infrastructure/container_images/index.md create mode 100644 website/docs/services/infrastructure/containers/index.md create mode 100644 website/docs/services/infrastructure/device_interfaces/index.md create mode 100644 website/docs/services/infrastructure/device_user_tags/index.md create mode 100644 website/docs/services/infrastructure/devices/index.md create mode 100644 website/docs/services/infrastructure/index.md create mode 100644 website/docs/services/infrastructure/processes/index.md create mode 100644 website/docs/services/infrastructure/spa_recommendations/index.md create mode 100644 website/docs/services/integrations/aws_accounts/index.md create mode 100644 website/docs/services/integrations/aws_iam_permissions/index.md create mode 100644 website/docs/services/integrations/aws_logs_services/index.md create mode 100644 website/docs/services/integrations/aws_namespaces/index.md create mode 100644 website/docs/services/integrations/cloudflare_accounts/index.md create mode 100644 website/docs/services/integrations/confluent_accounts/index.md create mode 100644 website/docs/services/integrations/confluent_resources/index.md create mode 100644 website/docs/services/integrations/fastly_accounts/index.md create mode 100644 website/docs/services/integrations/fastly_services/index.md create mode 100644 website/docs/services/integrations/gcp_accounts/index.md create mode 100644 website/docs/services/integrations/gcp_sts_delegate/index.md create mode 100644 website/docs/services/integrations/index.md create mode 100644 website/docs/services/integrations/ms_teams_channels/index.md create mode 100644 website/docs/services/integrations/ms_teams_tenant_based_handles/index.md create mode 100644 website/docs/services/integrations/ms_teams_workflows_webhook_handles/index.md create mode 100644 website/docs/services/integrations/okta_accounts/index.md create mode 100644 website/docs/services/integrations/opsgenie_services/index.md create mode 100644 website/docs/services/logs/archive_order/index.md create mode 100644 website/docs/services/logs/archive_read_roles/index.md create mode 100644 website/docs/services/logs/archives/index.md create mode 100644 website/docs/services/logs/custom_destinations/index.md create mode 100644 website/docs/services/logs/index.md create mode 100644 website/docs/services/logs/logs/index.md create mode 100644 website/docs/services/logs/metrics/index.md create mode 100644 website/docs/services/metrics/active_tag_configurations/index.md create mode 100644 website/docs/services/metrics/datasets/index.md create mode 100644 website/docs/services/metrics/index.md create mode 100644 website/docs/services/metrics/metrics/index.md create mode 100644 website/docs/services/metrics/metrics_output_series/index.md create mode 100644 website/docs/services/metrics/related_assets/index.md create mode 100644 website/docs/services/metrics/spans/index.md create mode 100644 website/docs/services/metrics/tag_cardinality_details/index.md create mode 100644 website/docs/services/metrics/tag_configurations/index.md create mode 100644 website/docs/services/metrics/tags/index.md create mode 100644 website/docs/services/metrics/volumes/index.md create mode 100644 website/docs/services/monitoring/config_policies/index.md create mode 100644 website/docs/services/monitoring/downtimes/index.md create mode 100644 website/docs/services/monitoring/index.md create mode 100644 website/docs/services/monitoring/notification_rules/index.md create mode 100644 website/docs/services/monitoring/on_demand_concurrency_cap/index.md create mode 100644 website/docs/services/monitoring/user_templates/index.md create mode 100644 website/docs/services/organization/api_keys/index.md create mode 100644 website/docs/services/organization/application_keys/index.md create mode 100644 website/docs/services/organization/audit_logs/index.md create mode 100644 website/docs/services/organization/authn_mappings/index.md create mode 100644 website/docs/services/organization/billing_dimension_mapping/index.md create mode 100644 website/docs/services/organization/configs/index.md create mode 100644 website/docs/services/organization/connections/index.md create mode 100644 website/docs/services/organization/cost_by_org/index.md create mode 100644 website/docs/services/organization/current_user_application_keys/index.md create mode 100644 website/docs/services/organization/data_deletion_requests/index.md create mode 100644 website/docs/services/organization/domain_allowlist/index.md create mode 100644 website/docs/services/organization/estimated_cost_by_org/index.md create mode 100644 website/docs/services/organization/historical_cost_by_org/index.md create mode 100644 website/docs/services/organization/hourly_usage/index.md create mode 100644 website/docs/services/organization/idp_metadata/index.md create mode 100644 website/docs/services/organization/index.md create mode 100644 website/docs/services/organization/invitations/index.md create mode 100644 website/docs/services/organization/ip_allowlist/index.md create mode 100644 website/docs/services/organization/lambda_traced_invocations_usage/index.md create mode 100644 website/docs/services/organization/observability_pipelines_usage/index.md create mode 100644 website/docs/services/organization/permissions/index.md create mode 100644 website/docs/services/organization/projected_cost/index.md create mode 100644 website/docs/services/organization/restriction_policies/index.md create mode 100644 website/docs/services/organization/role_permissions/index.md create mode 100644 website/docs/services/organization/role_users/index.md create mode 100644 website/docs/services/organization/roles/index.md create mode 100644 website/docs/services/organization/service_account_keys/index.md create mode 100644 website/docs/services/organization/service_accounts/index.md create mode 100644 website/docs/services/organization/team_links/index.md create mode 100644 website/docs/services/organization/team_members/index.md create mode 100644 website/docs/services/organization/team_memberships/index.md create mode 100644 website/docs/services/organization/team_permission_settings/index.md create mode 100644 website/docs/services/organization/teams/index.md create mode 100644 website/docs/services/organization/usage_application_security_monitoring/index.md create mode 100644 website/docs/services/organization/user_organizations/index.md create mode 100644 website/docs/services/organization/user_permissions/index.md create mode 100644 website/docs/services/organization/user_team_memberships/index.md create mode 100644 website/docs/services/organization/users/index.md create mode 100644 website/docs/services/remote_config/csm_threats_agent_policies/index.md create mode 100644 website/docs/services/remote_config/csm_threats_agent_rules/index.md create mode 100644 website/docs/services/remote_config/index.md create mode 100644 website/docs/services/remote_config/observability_pipelines/index.md create mode 100644 website/docs/services/remote_config/waf_custom_rules/index.md create mode 100644 website/docs/services/remote_config/waf_exclusion_filters/index.md create mode 100644 website/docs/services/security/aws_on_demand_tasks/index.md create mode 100644 website/docs/services/security/aws_scan_options/index.md create mode 100644 website/docs/services/security/cloud_workload_security_agent_rules/index.md create mode 100644 website/docs/services/security/csm_agents/index.md create mode 100644 website/docs/services/security/csm_cloud_accounts_coverage_analysis/index.md create mode 100644 website/docs/services/security/csm_hosts_and_containers_coverage_analysis/index.md create mode 100644 website/docs/services/security/csm_serverless_agents/index.md create mode 100644 website/docs/services/security/csm_serverless_coverage_analysis/index.md create mode 100644 website/docs/services/security/custom_frameworks/index.md create mode 100644 website/docs/services/security/filters/index.md create mode 100644 website/docs/services/security/findings/index.md create mode 100644 website/docs/services/security/historical_jobs/index.md create mode 100644 website/docs/services/security/index.md create mode 100644 website/docs/services/security/monitoring_hist_signals/index.md create mode 100644 website/docs/services/security/monitoring_rules/index.md create mode 100644 website/docs/services/security/monitoring_signals/index.md create mode 100644 website/docs/services/security/monitoring_suppressions/index.md create mode 100644 website/docs/services/security/resource_evaluation_filters/index.md create mode 100644 website/docs/services/security/rule_version_history/index.md create mode 100644 website/docs/services/security/sboms/index.md create mode 100644 website/docs/services/security/scanning_groups/index.md create mode 100644 website/docs/services/security/scanning_rules/index.md create mode 100644 website/docs/services/security/signal_notification_rules/index.md create mode 100644 website/docs/services/security/standard_patterns/index.md create mode 100644 website/docs/services/security/suppressions_affecting_future_rule/index.md create mode 100644 website/docs/services/security/suppressions_affecting_rule/index.md create mode 100644 website/docs/services/security/vulnerabilities/index.md create mode 100644 website/docs/services/security/vulnerability_notification_rules/index.md create mode 100644 website/docs/services/security/vulnerable_assets/index.md create mode 100644 website/docs/services/service_management/cases/index.md create mode 100644 website/docs/services/service_management/downtimes/index.md create mode 100644 website/docs/services/service_management/events/index.md create mode 100644 website/docs/services/service_management/incident_attachments/index.md create mode 100644 website/docs/services/service_management/incident_integrations/index.md create mode 100644 website/docs/services/service_management/incident_notification_rules/index.md create mode 100644 website/docs/services/service_management/incident_notification_templates/index.md create mode 100644 website/docs/services/service_management/incident_services/index.md create mode 100644 website/docs/services/service_management/incident_teams/index.md create mode 100644 website/docs/services/service_management/incident_todos/index.md create mode 100644 website/docs/services/service_management/incident_types/index.md create mode 100644 website/docs/services/service_management/incidents/index.md create mode 100644 website/docs/services/service_management/index.md create mode 100644 website/docs/services/service_management/issues/index.md create mode 100644 website/docs/services/service_management/on_call_escalation_policies/index.md create mode 100644 website/docs/services/service_management/on_call_page/index.md create mode 100644 website/docs/services/service_management/on_call_schedule/index.md create mode 100644 website/docs/services/service_management/on_call_team_routing_rules/index.md create mode 100644 website/docs/services/service_management/on_call_user_schedule/index.md create mode 100644 website/docs/services/service_management/projects/index.md create mode 100644 website/docs/services/service_management/service_definitions/index.md create mode 100644 website/docs/services/service_management/slo_report_job/index.md create mode 100644 website/docs/services/service_management/team_on_call_users/index.md create mode 100644 website/docs/services/software_delivery/ci_app_pipeline_events/index.md create mode 100644 website/docs/services/software_delivery/ci_app_test_events/index.md create mode 100644 website/docs/services/software_delivery/dora_deployments/index.md create mode 100644 website/docs/services/software_delivery/dora_failures/index.md create mode 100644 website/docs/services/software_delivery/dora_incidents/index.md create mode 100644 website/docs/services/software_delivery/index.md create mode 100644 website/docs/services/software_delivery/workflow_instances/index.md create mode 100644 website/docs/services/software_delivery/workflows/index.md create mode 100644 website/static/img/stackql-datadog-provider-featured-image.png delete mode 100644 website/static/img/stackql-digitalocean-provider-featured-image.png diff --git a/.github/workflows/prod-web-deploy.yml.disabled b/.github/workflows/prod-web-deploy.yml similarity index 100% rename from .github/workflows/prod-web-deploy.yml.disabled rename to .github/workflows/prod-web-deploy.yml diff --git a/.github/workflows/test-web-deploy.yml.disabled b/.github/workflows/test-web-deploy.yml similarity index 100% rename from .github/workflows/test-web-deploy.yml.disabled rename to .github/workflows/test-web-deploy.yml diff --git a/README.md b/README.md index eb57641..f28ed27 100644 --- a/README.md +++ b/README.md @@ -124,11 +124,13 @@ npm run generate-provider -- \ --input-dir provider-dev/source \ --output-dir provider-dev/openapi/src/datadog \ --config-path provider-dev/config/all_services.csv \ - --servers '[{"url": "https://api.{region}", "variables": {"region": {"default": "datadoghq.com","enum": ["datadoghq.com","us3.datadoghq.com","us5.datadoghq.com","ap1.datadoghq.com","ap2.datadoghq.com","datadoghq.eu","ddog-gov.com"]}}}]' \ + --servers '[{"url": "https://{region:^(?:[^\\:/]+(?:\\:[0-9]+)?|[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+(?:\\:[0-9]+)?)$}/","variables": {"region": {"default": "datadoghq.com"}}}]' \ --provider-config '{"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" }}}' \ --overwrite ``` - +```bash +sh provider-dev/scripts/fix_broken_links.sh +``` ## 5. Test Provider ### Starting the StackQL Server diff --git a/provider-dev/config/all_services.csv b/provider-dev/config/all_services.csv index 80ff313..019468f 100644 --- a/provider-dev/config/all_services.csv +++ b/provider-dev/config/all_services.csv @@ -1,576 +1,576 @@ 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/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,,List App Key Registrations -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 -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/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/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/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/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/{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}/items,ListDatastoreItems,list_datastore_items,get,ItemApiPayloadArray,Actions Datastores,actions datastores,datastore_items,list_datastore_items,select,,List datastore items -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,CreateDatastore,create_datastore,post,CreateAppsDatastoreResponse,Actions Datastores,actions datastores,datastores,create_datastore,insert,,Create datastore actions.yaml,/api/v2/actions-datastores/{datastore_id},DeleteDatastore,delete_datastore,delete,,Actions Datastores,actions datastores,datastores,delete_datastore,delete,,Delete datastore -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 -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/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/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/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/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/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/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/outcomes,ListScorecardOutcomes,list_scorecard_outcomes,get,OutcomesResponse,Service Scorecards,service scorecards,scorecard_outcomes,list_scorecard_outcomes,select,,List all rule outcomes -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 -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/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/scorecard/rules,ListScorecardRules,list_scorecard_rules,get,ListRulesResponse,Service Scorecards,service scorecards,scorecard_rules,list_scorecard_rules,select,,List all rules -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 -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 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 -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 -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 -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/apicatalog/api/{id},DeleteOpenAPI,delete_open_api,delete,,API Management,api management,apis,delete_open_api,delete,,Delete an API -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 -catalog.yaml,/api/v2/apicatalog/api,ListAPIs,list_apis,get,ListAPIsResponse,API Management,api management,apis,list_apis,select,,List APIs -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 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/entity,ListCatalogEntity,list_catalog_entity,get,ListEntityCatalogResponse,Software Catalog,software catalog,catalog_entities,list_catalog_entity,select,,Get a list of entities -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/{kind_id},DeleteCatalogKind,delete_catalog_kind,delete,,Software Catalog,software catalog,catalog_kinds,delete_catalog_kind,delete,,Delete a single kind -catalog.yaml,/api/v2/catalog/kind,ListCatalogKind,list_catalog_kind,get,ListKindCatalogResponse,Software Catalog,software catalog,catalog_kinds,list_catalog_kind,select,,Get a list of entity kinds -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 -catalog.yaml,/api/v2/catalog/relation,ListCatalogRelation,list_catalog_relation,get,ListRelationCatalogResponse,Software Catalog,software catalog,catalog_relations,list_catalog_relation,select,,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,,Get active billing dimensions for cost attribution -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/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/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/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,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/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/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/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/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/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/budget,UpsertBudget,upsert_budget,put,BudgetWithEntries,Cloud Cost Management,cloud cost management,budgets,upsert_budget,replace,,Create or update 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/custom_costs/{file_id},GetCustomCostsFile,get_custom_costs_file,get,CustomCostsFileGetResponse,Cloud Cost Management,cloud cost management,costs_files,get_custom_costs_file,select,,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,,List Custom Costs files -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 -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 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 -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/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 -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,,Get Monthly Cost Attribution -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/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/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,,Get items of a Dashboard List -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 -dashboards.yaml,/api/v2/powerpacks,CreatePowerpack,create_powerpack,post,PowerpackResponse,Powerpack,powerpack,powerpacks,create_powerpack,insert,,Create a new powerpack dashboards.yaml,/api/v2/powerpacks/{powerpack_id},DeletePowerpack,delete_powerpack,delete,,Powerpack,powerpack,powerpacks,delete_powerpack,delete,,Delete a powerpack -dashboards.yaml,/api/v2/powerpacks/{powerpack_id},GetPowerpack,get_powerpack,get,PowerpackResponse,Powerpack,powerpack,powerpacks,get_powerpack,select,,Get a Powerpack -dashboards.yaml,/api/v2/powerpacks,ListPowerpacks,list_powerpacks,get,ListPowerpacksResponse,Powerpack,powerpack,powerpacks,list_powerpacks,select,,Get all powerpacks -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,CreateRUMApplication,create_rumapplication,post,RUMApplicationResponse,RUM,rum,rum_applications,create_rumapplication,insert,,Create a new RUM application 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/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/applications/{id},UpdateRUMApplication,update_rumapplication,patch,RUMApplicationResponse,RUM,rum,rum_applications,update_rumapplication,update,,Update a RUM application -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,ListRUMEvents,list_rumevents,get,RUMEventsResponse,RUM,rum,rum_events,list_rumevents,select,,Get a list of 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/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/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/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/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,CreateRetentionFilter,create_retention_filter,post,RumRetentionFilterResponse,Rum Retention Filters,rum retention filters,rum_retention_filters,create_retention_filter,insert,,Create a RUM retention filter 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 -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 -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 -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/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,CreateApp,create_app,post,CreateAppResponse,App Builder,app builder,apps,create_app,insert,,Create App 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 -infrastructure.yaml,/api/v2/app-builder/apps/{app_id},GetApp,get_app,get,GetAppResponse,App Builder,app builder,apps,get_app,select,,Get App -infrastructure.yaml,/api/v2/app-builder/apps,ListApps,list_apps,get,ListAppsResponse,App Builder,app builder,apps,list_apps,select,,List Apps -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 -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/container_images,ListContainerImages,list_container_images,get,ContainerImagesResponse,Container Images,container images,container_images,list_container_images,select,,Get all Container Images -infrastructure.yaml,/api/v2/containers,ListContainers,list_containers,get,ContainersResponse,Containers,containers,containers,list_containers,select,,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/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 -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,,Get the list of devices -infrastructure.yaml,/api/v2/processes,ListProcesses,list_processes,get,ProcessSummariesResponse,Processes,processes,processes,list_processes,select,,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,CreateAWSAccount,create_awsaccount,post,AWSAccountResponse,AWS Integration,aws integration,aws_accounts,create_awsaccount,insert,,Create an AWS integration -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/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/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/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/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,CreateCloudflareAccount,create_cloudflare_account,post,CloudflareAccountResponse,Cloudflare Integration,cloudflare integration,cloudflare_accounts,create_cloudflare_account,insert,,Add Cloudflare account 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/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/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,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},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},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},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,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/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/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/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,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},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},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},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,CreateFastlyService,create_fastly_service,post,FastlyServiceResponse,Fastly Integration,fastly integration,fastly_services,create_fastly_service,insert,,Add Fastly service 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/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/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,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/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/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/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/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/gcp/sts_delegate,MakeGCPSTSDelegate,make_gcpstsdelegate,post,GCPSTSDelegateAccountResponse,GCP Integration,gcp integration,gcp_sts_delegate,make_gcpstsdelegate,exec,,Create a Datadog GCP principal -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,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/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/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/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,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/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/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/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,CreateOktaAccount,create_okta_account,post,OktaAccountResponse,Okta Integration,okta integration,okta_accounts,create_okta_account,insert,,Add Okta account 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/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/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,CreateOpsgenieService,create_opsgenie_service,post,OpsgenieServiceResponse,Opsgenie Integration,opsgenie integration,opsgenie_services,create_opsgenie_service,insert,,Create a new service object 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 -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 -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/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/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}/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/{archive_id}/readers,ListArchiveReadRoles,list_archive_read_roles,get,RolesResponse,Logs Archives,logs archives,archive_read_roles,list_archive_read_roles,select,,List read roles for an archive 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,CreateLogsArchive,create_logs_archive,post,LogsArchive,Logs Archives,logs archives,archives,create_logs_archive,insert,,Create 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/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/archives/{archive_id},UpdateLogsArchive,update_logs_archive,put,LogsArchive,Logs Archives,logs archives,archives,update_logs_archive,replace,,Update 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/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/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/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/analytics/aggregate,AggregateLogs,aggregate_logs,post,LogsAggregateResponse,Logs,logs,logs,aggregate_logs,exec,,Aggregate events -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/events,ListLogsGet,list_logs_get,get,LogsListResponse,Logs,logs,logs,list_logs_get,select,,Search logs (GET) -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 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 -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 -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}/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,CreateDataset,create_dataset,post,DatasetResponseSingle,Datasets,datasets,datasets,create_dataset,insert,,Create a dataset metrics.yaml,/api/v2/datasets/{dataset_id},DeleteDataset,delete_dataset,delete,,Datasets,datasets,datasets,delete_dataset,delete,,Delete a dataset -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/datasets/{dataset_id},UpdateDataset,update_dataset,put,DatasetResponseSingle,Datasets,datasets,datasets,update_dataset,replace,,Edit a dataset -metrics.yaml,/api/v2/series,SubmitMetrics,submit_metrics,post,IntakePayloadAccepted,Metrics,metrics,metrics,submit_metrics,insert,,Submit metrics -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/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/metrics/{metric_name}/assets,ListMetricAssets,list_metric_assets,get,MetricAssetsResponse,Metrics,metrics,related_assets,list_metric_assets,select,,Related Assets to a Metric -metrics.yaml,/api/v2/spans/analytics/aggregate,AggregateSpans,aggregate_spans,post,SpansAggregateResponse,Spans,spans,spans,aggregate_spans,exec,,Aggregate spans -metrics.yaml,/api/v2/spans/events/search,ListSpans,list_spans,post,SpansListResponse,Spans,spans,spans,list_spans,insert,,Search spans -metrics.yaml,/api/v2/spans/events,ListSpansGet,list_spans_get,get,SpansListResponse,Spans,spans,spans,list_spans_get,select,,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,,Get tag key cardinality details -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 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 -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,,Get a list of metrics -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 -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,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/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/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/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/{monitor_id}/downtime_matches,ListMonitorDowntimes,list_monitor_downtimes,get,MonitorDowntimeMatchResponse,Downtimes,downtimes,downtimes,list_monitor_downtimes,select,,Get active downtimes for a monitor -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/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/notification_rule/{rule_id},GetMonitorNotificationRule,get_monitor_notification_rule,get,MonitorNotificationRuleResponse,Monitors,monitors,notification_rules,get_monitor_notification_rule,select,,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,,Get all monitor notification rules -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 -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/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 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 -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 -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 -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/api_keys,CreateAPIKey,create_apikey,post,APIKeyResponse,Key Management,key management,api_keys,create_apikey,insert,,Create an API key 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/api_keys/{api_key_id},GetAPIKey,get_apikey,get,APIKeyResponse,Key Management,key management,api_keys,get_apikey,select,,Get API key -organization.yaml,/api/v2/api_keys,ListAPIKeys,list_apikeys,get,APIKeysResponse,Key Management,key management,api_keys,list_apikeys,select,,Get all API keys -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},DeleteApplicationKey,delete_application_key,delete,,Key Management,key management,application_keys,delete_application_key,delete,,Delete an application key -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,,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,,Get all application keys -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/audit/events,ListAuditLogs,list_audit_logs,get,AuditLogsEventsResponse,Audit,audit,audit_logs,list_audit_logs,select,,Get a list of Audit Logs events -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/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/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/authn_mappings/{authn_mapping_id},GetAuthNMapping,get_auth_nmapping,get,AuthNMappingResponse,AuthN Mappings,auth_n mappings,authn_mappings,get_auth_nmapping,select,,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,,List all AuthN Mappings -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/usage/billing_dimension_mapping,GetBillingDimensionMapping,get_billing_dimension_mapping,get,,Usage Metering,usage metering,billing_dimension_mapping,get_billing_dimension_mapping,select,,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_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,CreateOrgConnections,create_org_connections,post,OrgConnectionResponse,Org Connections,org connections,connections,create_org_connections,insert,,Create Org Connection 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/org_connections,ListOrgConnections,list_org_connections,get,OrgConnectionListResponse,Org Connections,org connections,connections,list_org_connections,select,,List Org Connections -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/usage/cost_by_org,GetCostByOrg,get_cost_by_org,get,,Usage Metering,usage metering,cost_by_org,get_cost_by_org,select,,Get cost across multi-org account -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/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/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,,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,,Get all application keys owned by current user -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/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/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/deletion/requests,GetDataDeletionRequests,get_data_deletion_requests,get,GetDataDeletionsResponseBody,Data Deletion,data deletion,data_deletion_requests,get_data_deletion_requests,select,,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/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/usage/estimated_cost,GetEstimatedCostByOrg,get_estimated_cost_by_org,get,,Usage Metering,usage metering,estimated_cost_by_org,get_estimated_cost_by_org,select,,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,,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,,Get hourly usage by product family -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/{user_invitation_uuid},GetInvitation,get_invitation,get,UserInvitationResponse,Users,users,invitations,get_invitation,select,$.data,Get a user invitation -organization.yaml,/api/v2/user_invitations,SendInvitations,send_invitations,post,UserInvitationsResponse,Users,users,invitations,send_invitations,exec,,Send invitation emails -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/ip_allowlist,UpdateIPAllowlist,update_ipallowlist,patch,IPAllowlistResponse,IP Allowlist,ip allowlist,ip_allowlist,update_ipallowlist,update,,Update 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,,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,,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,,Get projected cost across your account 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/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/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/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}/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}/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}/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/{role_id}/users,ListRoleUsers,list_role_users,get,UsersResponse,Roles,roles,role_users,list_role_users,select,,Get all users of a role -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/roles,CreateRole,create_role,post,RoleCreateResponse,Roles,roles,roles,create_role,insert,,Create role organization.yaml,/api/v2/roles/{role_id},DeleteRole,delete_role,delete,,Roles,roles,roles,delete_role,delete,,Delete 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,,List roles -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,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/{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/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,,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,,List application keys for this service account -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/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/{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/{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/{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/{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/{super_team_id}/member_teams,ListMemberTeams,list_member_teams,get,TeamsResponse,Teams,teams,team_members,list_member_teams,select,,Get all member teams 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,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/{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}/memberships,GetTeamMemberships,get_team_memberships,get,UserTeamsResponse,Teams,teams,team_memberships,get_team_memberships,select,,Get team memberships -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}/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}/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 -organization.yaml,/api/v2/team,CreateTeam,create_team,post,TeamResponse,Teams,teams,teams,create_team,insert,,Create a team organization.yaml,/api/v2/team/{team_id},DeleteTeam,delete_team,delete,,Teams,teams,teams,delete_team,delete,,Remove 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,,Get all teams -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/team/{team_id},UpdateTeam,update_team,patch,TeamResponse,Teams,teams,teams,update_team,update,,Update a team -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,,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,,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,,Get user memberships -organization.yaml,/api/v2/users,CreateUser,create_user,post,UserResponse,Users,users,users,create_user,insert,,Create a user -organization.yaml,/api/v2/users/{user_id},DisableUser,disable_user,delete,,Users,users,users,disable_user,exec,,Disable a user -organization.yaml,/api/v2/users/{user_id},GetUser,get_user,get,UserResponse,Users,users,users,get_user,select,,Get user details -organization.yaml,/api/v2/users,ListUsers,list_users,get,UsersResponse,Users,users,users,list_users,select,,List all users -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,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/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/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/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/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,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/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/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/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 -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/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/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,,List pipelines -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/obs_pipelines/pipelines/validate,ValidatePipeline,validate_pipeline,post,ValidationResponse,Observability Pipelines,observability pipelines,observability_pipelines,validate_pipeline,exec,,Validate an observability 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/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/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/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,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 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 -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 -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/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/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,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/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/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/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,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/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/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/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/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/csm/onboarding/agents,ListAllCSMAgents,list_all_csmagents,get,CsmAgentsResponse,CSM Agents,csm agents,csm_agents,list_all_csmagents,select,,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,,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,CreateCustomFramework,create_custom_framework,post,CreateCustomFrameworkResponse,Security Monitoring,security monitoring,custom_frameworks,create_custom_framework,insert,,Create a custom framework 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/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/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/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/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/security_monitoring/configuration/security_filters/{security_filter_id},GetSecurityFilter,get_security_filter,get,SecurityFilterResponse,Security Monitoring,security monitoring,filters,get_security_filter,select,,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,,Get all security filters -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/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,,List findings -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/{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/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/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,,List historical jobs -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/{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/{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,,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,,List hist signals 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,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/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/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,,List rules 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/{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/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/{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,,Get a quick list of security signals 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,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/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/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/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/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/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/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 -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,,List assets SBOMs -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/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,ListScanningGroups,list_scanning_groups,get,SensitiveDataScannerGetConfigResponse,Sensitive Data Scanner,sensitive data scanner,scanning_groups,list_scanning_groups,select,,List Scanning Groups 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 -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,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/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/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,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/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/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/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/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,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_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,,List vulnerabilities -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 -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 -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/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 -security.yaml,/api/v2/security/assets,ListVulnerableAssets,list_vulnerable_assets,get,ListVulnerableAssetsResponse,Security Monitoring,security monitoring,vulnerable_assets,list_vulnerable_assets,select,,List vulnerable assets 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,CreateCase,create_case,post,CaseResponse,Case Management,case management,cases,create_case,insert,,Create a case -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/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/downtime/{downtime_id},CancelDowntime,cancel_downtime,delete,,Downtimes,downtimes,downtimes,cancel_downtime,delete,,Cancel a downtime +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/downtime/{downtime_id},GetDowntime,get_downtime,get,DowntimeResponse,Downtimes,downtimes,downtimes,get_downtime,select,,Get a downtime -service_management.yaml,/api/v2/downtime,ListDowntimes,list_downtimes,get,ListDowntimesResponse,Downtimes,downtimes,downtimes,list_downtimes,select,,Get all downtimes -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/events,CreateEvent,create_event,post,EventCreateResponsePayload,Events,events,events,create_event,insert,,Post an event -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,,Get a list of events 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}/attachments,ListIncidentAttachments,list_incident_attachments,get,IncidentAttachmentsResponse,Incidents,incidents,incident_attachments,list_incident_attachments,select,,Get a list of attachments -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,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/{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/{incident_id}/relationships/integrations/{integration_metadata_id},GetIncidentIntegration,get_incident_integration,get,IncidentIntegrationMetadataResponse,Incidents,incidents,incident_integrations,get_incident_integration,select,,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,,Get a list of an incident's integration metadata -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-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-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-rules/{id},GetIncidentNotificationRule,get_incident_notification_rule,get,IncidentNotificationRule,Incidents,incidents,incident_notification_rules,get_incident_notification_rule,select,,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,,List incident notification rules -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/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/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/config/notification-templates/{id},GetIncidentNotificationTemplate,get_incident_notification_template,get,IncidentNotificationTemplate,Incidents,incidents,incident_notification_templates,get_incident_notification_template,select,,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,,List incident notification templates -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,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/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/services/{service_id},GetIncidentService,get_incident_service,get,IncidentServiceResponse,Incident Services,incident services,incident_services,get_incident_service,select,,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,,Get a list of all incident services -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,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/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/teams/{team_id},GetIncidentTeam,get_incident_team,get,IncidentTeamResponse,Incident Teams,incident teams,incident_teams,get_incident_team,select,,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,,Get a list of all incident teams -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,CreateIncidentTodo,create_incident_todo,post,IncidentTodoResponse,Incidents,incidents,incident_todos,create_incident_todo,insert,,Create an incident todo -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/{incident_id}/relationships/todos/{todo_id},GetIncidentTodo,get_incident_todo,get,IncidentTodoResponse,Incidents,incidents,incident_todos,get_incident_todo,select,,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,,Get a list of an incident's todos -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,CreateIncidentType,create_incident_type,post,IncidentTypeResponse,Incidents,incidents,incident_types,create_incident_type,insert,,Create an incident type -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/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/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,CreateIncident,create_incident,post,IncidentResponse,Incidents,incidents,incidents,create_incident,insert,,Create an incident -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/incidents/{incident_id},GetIncident,get_incident,get,IncidentResponse,Incidents,incidents,incidents,get_incident,select,,Get the details of an incident -service_management.yaml,/api/v2/incidents,ListIncidents,list_incidents,get,IncidentsResponse,Incidents,incidents,incidents,list_incidents,select,,Get a list of incidents -service_management.yaml,/api/v2/incidents/search,SearchIncidents,search_incidents,get,IncidentSearchResponse,Incidents,incidents,incidents,search_incidents,select,,Search for incidents -service_management.yaml,/api/v2/incidents/{incident_id},UpdateIncident,update_incident,patch,IncidentResponse,Incidents,incidents,incidents,update_incident,update,,Update an existing incident -service_management.yaml,/api/v2/error-tracking/issues/{issue_id},GetIssue,get_issue,get,IssueResponse,Error Tracking,error tracking,issues,get_issue,select,,Get the details of an error tracking issue 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/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/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/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/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,,Get On-Call escalation policy -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/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,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/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/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/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/on-call/schedules/{schedule_id},GetOnCallSchedule,get_on_call_schedule,get,Schedule,On-Call,on_call,on_call_schedule,get_on_call_schedule,select,,Get On-Call schedule -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,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,,Get On-Call team routing rules -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 -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,,Get the schedule on-call user 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/cases/projects/{project_id},DeleteProject,delete_project,delete,,Case Management,case management,projects,delete_project,delete,,Remove a project -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,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/services/definitions/{service_name},DeleteServiceDefinition,delete_service_definition,delete,,Service Definition,service definition,service_definitions,delete_service_definition,delete,,Delete a single service definition -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,CreateSLOReportJob,create_sloreport_job,post,SLOReportPostResponse,Service Level Objectives,service level objectives,slo_report_job,create_sloreport_job,insert,,Create a new SLO report -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 -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,,Get team on-call users -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/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/pipelines/events,ListCIAppPipelineEvents,list_ciapp_pipeline_events,get,CIAppPipelineEventsResponse,CI Visibility Pipelines,ci visibility pipelines,ci_app_pipeline_events,list_ciapp_pipeline_events,select,,Get a list of 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/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,,Get a list of tests events 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/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,,Get a list of deployment events 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/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,,Get a list of failure events 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/{instance_id}/cancel,CancelWorkflowInstance,cancel_workflow_instance,put,WorklflowCancelInstanceResponse,Workflow Automation,workflow automation,workflow_instances,cancel_workflow_instance,exec,,Cancel a workflow instance 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/{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,,List workflow instances software_delivery.yaml,/api/v2/workflows,CreateWorkflow,create_workflow,post,CreateWorkflowResponse,Workflow Automation,workflow automation,workflows,create_workflow,insert,,Create a Workflow -software_delivery.yaml,/api/v2/workflows/{workflow_id},DeleteWorkflow,delete_workflow,delete,,Workflow Automation,workflow automation,workflows,delete_workflow,delete,,Delete an existing 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 diff --git a/provider-dev/docgen/provider-data/headerContent1.txt b/provider-dev/docgen/provider-data/headerContent1.txt index 8e95862..7c26b71 100644 --- a/provider-dev/docgen/provider-data/headerContent1.txt +++ b/provider-dev/docgen/provider-data/headerContent1.txt @@ -1,19 +1,19 @@ --- -title: REPLACEME +title: datadog hide_title: false hide_table_of_contents: false keywords: - - REPLACEME + - datadog - stackql - infrastructure-as-code - configuration-as-data - cloud inventory -description: Query, deploy and manage REPLACEME resources using SQL +description: Query, monitor, and manage Datadog resources using SQL custom_edit_url: null -image: /img/stackql-REPLACEME-provider-featured-image.png +image: /img/providers/datadog/stackql-datadog-provider-featured-image.png id: 'provider-intro' --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -REPLACEME with description for the provider. \ No newline at end of file +Monitoring, alerting and reporting platform for cloud platforms and applications. \ No newline at end of file diff --git a/provider-dev/docgen/provider-data/headerContent2.txt b/provider-dev/docgen/provider-data/headerContent2.txt index 0eeb8c1..91c2cfa 100644 --- a/provider-dev/docgen/provider-data/headerContent2.txt +++ b/provider-dev/docgen/provider-data/headerContent2.txt @@ -4,10 +4,10 @@ See also: ## Installation -To pull the latest version of the `REPLACEME` provider, run the following command: +To pull the latest version of the `datadog` provider, run the following command: ```bash -REGISTRY PULL REPLACEME; +REGISTRY PULL datadog; ``` > To view previous provider versions or to pull a specific provider version, see [here](https://stackql.io/docs/language-spec/registry). @@ -15,7 +15,8 @@ REGISTRY PULL REPLACEME; The following system environment variables are used for authentication by default: -- - REPLACEME API token (see - 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). @@ -27,7 +28,7 @@ To use different environment variables (instead of the defaults), use the `--aut ```bash -AUTH='{ "REPLACEME": { "type": "bearer", "credentialsenvvar": "REPLACEME" }}' +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}" ``` @@ -35,7 +36,7 @@ or using PowerShell: ```powershell -$Auth = "{ 'REPLACEME': { 'type': 'bearer', 'credentialsenvvar': 'REPLACEME' }}" +$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 ``` 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 e0d4ce1..4bb642d 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 @@ -3681,6 +3681,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_datastore_item: operation: $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}~1items/patch' @@ -3719,6 +3720,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data unregister_app_key: operation: $ref: >- @@ -3796,15 +3798,8 @@ components: #/components/x-stackQL-resources/connections/methods/delete_action_connection replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 8a1e330..7961978 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 @@ -1979,6 +1979,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_scorecard_outcomes_async: operation: $ref: '#/paths/~1api~1v2~1scorecard~1outcomes/post' @@ -2012,6 +2013,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_scorecard_rule: operation: $ref: '#/paths/~1api~1v2~1scorecard~1rules/post' @@ -2045,15 +2047,8 @@ components: - $ref: >- #/components/x-stackQL-resources/scorecard_rules/methods/update_scorecard_rule servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 401e076..0dbeec7 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 @@ -2221,6 +2221,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data delete_open_api: operation: $ref: '#/paths/~1api~1v2~1apicatalog~1api~1{id}/delete' @@ -2266,6 +2267,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data upsert_catalog_entity: operation: $ref: '#/paths/~1api~1v2~1catalog~1entity/post' @@ -2301,6 +2303,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data upsert_catalog_kind: operation: $ref: '#/paths/~1api~1v2~1catalog~1kind/post' @@ -2336,6 +2339,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -2345,15 +2349,8 @@ components: delete: [] replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 58b4d55..62ed7aa 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 @@ -2385,6 +2385,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data upload_custom_costs_file: operation: $ref: '#/paths/~1api~1v2~1cost~1custom_costs/put' @@ -2403,6 +2404,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -2470,6 +2472,7 @@ components: response: mediaType: application/json;datetime-format=rfc3339 openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -2489,6 +2492,7 @@ components: response: mediaType: application/json;datetime-format=rfc3339 openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -2498,15 +2502,8 @@ components: delete: [] replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 edd0641..681b9ca 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 @@ -1211,6 +1211,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.dashboards create_dashboard_list_items: operation: $ref: >- @@ -1250,6 +1251,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_powerpack: operation: $ref: '#/paths/~1api~1v2~1powerpacks/post' @@ -1268,6 +1270,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_powerpack: operation: $ref: '#/paths/~1api~1v2~1powerpacks~1{powerpack_id}/patch' @@ -1290,15 +1293,8 @@ components: #/components/x-stackQL-resources/powerpacks/methods/delete_powerpack replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 8b4afcd..6db6ec5 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 @@ -2054,6 +2054,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data search_rumevents: operation: $ref: '#/paths/~1api~1v2~1rum~1events~1search/post' @@ -2239,15 +2240,8 @@ components: #/components/x-stackQL-resources/rum_metrics/methods/delete_rum_metric replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 a2a96ff..15cd6bd 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 @@ -3872,6 +3872,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_app: operation: $ref: '#/paths/~1api~1v2~1app-builder~1apps/post' @@ -3890,6 +3891,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_app: operation: $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}/patch' @@ -3931,6 +3933,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -3950,6 +3953,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -3969,6 +3973,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data get_device: operation: $ref: '#/paths/~1api~1v2~1ndm~1devices~1{device_id}/get' @@ -4083,6 +4088,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/processes/methods/list_processes' @@ -4111,15 +4117,8 @@ components: delete: [] replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 44e95cf..0559a17 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 @@ -5105,15 +5105,8 @@ components: #/components/x-stackQL-resources/okta_accounts/methods/delete_okta_account replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 cc8d13e..50f440d 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 @@ -3432,6 +3432,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data list_logs: operation: $ref: '#/paths/~1api~1v2~1logs~1events~1search/post' @@ -3546,6 +3547,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data add_read_role_to_archive: operation: $ref: >- @@ -3673,15 +3675,8 @@ components: #/components/x-stackQL-resources/metrics/methods/delete_logs_metric replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 47250ac..090b21f 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 @@ -4429,6 +4429,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data delete_bulk_tags_metrics_configuration: operation: $ref: '#/paths/~1api~1v2~1metrics~1config~1bulk-tags/delete' @@ -4538,6 +4539,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -4577,6 +4579,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -4652,6 +4655,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data list_spans: operation: $ref: '#/paths/~1api~1v2~1spans~1events~1search/post' @@ -4667,15 +4671,8 @@ components: delete: [] replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 74754fa..01a995c 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 @@ -1867,6 +1867,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_monitor_notification_rule: operation: $ref: '#/paths/~1api~1v2~1monitor~1notification_rule/post' @@ -1885,6 +1886,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_monitor_notification_rule: operation: $ref: '#/paths/~1api~1v2~1monitor~1notification_rule~1{rule_id}/patch' @@ -2036,6 +2038,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -2075,15 +2078,8 @@ components: delete: [] replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 157e479..9dcd88b 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 @@ -9334,6 +9334,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_apikey: operation: $ref: '#/paths/~1api~1v2~1api_keys/post' @@ -9352,6 +9353,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_apikey: operation: $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/patch' @@ -9380,6 +9382,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data delete_application_key: operation: $ref: '#/paths/~1api~1v2~1application_keys~1{app_key_id}/delete' @@ -9392,6 +9395,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_application_key: operation: $ref: '#/paths/~1api~1v2~1application_keys~1{app_key_id}/patch' @@ -9423,6 +9427,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data search_audit_logs: operation: $ref: '#/paths/~1api~1v2~1audit~1events~1search/post' @@ -9448,6 +9453,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_auth_nmapping: operation: $ref: '#/paths/~1api~1v2~1authn_mappings/post' @@ -9466,6 +9472,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_auth_nmapping: operation: $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/patch' @@ -9499,6 +9506,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_current_user_application_key: operation: $ref: '#/paths/~1api~1v2~1current_user~1application_keys/post' @@ -9519,6 +9527,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_current_user_application_key: operation: $ref: >- @@ -9559,6 +9568,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data cancel_data_deletion_request: operation: $ref: '#/paths/~1api~1v2~1deletion~1requests~1{id}~1cancel/put' @@ -9676,6 +9686,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_org_connections: operation: $ref: '#/paths/~1api~1v2~1org_connections/post' @@ -9775,6 +9786,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_role: operation: $ref: '#/paths/~1api~1v2~1roles/post' @@ -9872,6 +9884,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data add_user_to_role: operation: $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1users/post' @@ -9936,6 +9949,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_service_account_application_key: operation: $ref: >- @@ -9957,6 +9971,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_service_account_application_key: operation: $ref: >- @@ -9991,6 +10006,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_team: operation: $ref: '#/paths/~1api~1v2~1team/post' @@ -10044,6 +10060,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data add_member_team: operation: $ref: '#/paths/~1api~1v2~1team~1{super_team_id}~1member_teams/post' @@ -10131,6 +10148,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_team_membership: operation: $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships/post' @@ -10203,6 +10221,7 @@ components: response: mediaType: application/json;datetime-format=rfc3339 openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -10222,6 +10241,7 @@ components: response: mediaType: application/json;datetime-format=rfc3339 openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -10241,6 +10261,7 @@ components: response: mediaType: application/json;datetime-format=rfc3339 openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -10260,6 +10281,7 @@ components: response: mediaType: application/json;datetime-format=rfc3339 openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -10279,6 +10301,7 @@ components: response: mediaType: application/json;datetime-format=rfc3339 openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -10298,6 +10321,7 @@ components: response: mediaType: application/json;datetime-format=rfc3339 openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -10317,6 +10341,7 @@ components: response: mediaType: application/json;datetime-format=rfc3339 openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -10336,6 +10361,7 @@ components: response: mediaType: application/json;datetime-format=rfc3339 openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -10355,6 +10381,7 @@ components: response: mediaType: application/json;datetime-format=rfc3339 openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -10400,6 +10427,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_user: operation: $ref: '#/paths/~1api~1v2~1users/post' @@ -10418,6 +10446,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_user: operation: $ref: '#/paths/~1api~1v2~1users~1{user_id}/patch' @@ -10445,6 +10474,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -10484,6 +10514,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -10493,15 +10524,8 @@ components: delete: [] replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 76ec3af..18f6f30 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 @@ -6723,6 +6723,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_pipeline: operation: $ref: >- @@ -6776,15 +6777,8 @@ components: - $ref: >- #/components/x-stackQL-resources/observability_pipelines/methods/update_pipeline servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 5c6707b..016f125 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 @@ -961,21 +961,21 @@ paths: Please review the [Pagination section for the "List - Vulnerabilities"](#pagination) endpoint. + Vulnerabilities"] endpoint. ### Filtering Please review the [Filtering section for the "List - Vulnerabilities"](#filtering) endpoint. + Vulnerabilities"] endpoint. ### Metadata Please review the [Metadata section for the "List - Vulnerabilities"](#metadata) endpoint. + Vulnerabilities"] endpoint. operationId: ListVulnerableAssets parameters: - description: >- @@ -1191,21 +1191,21 @@ paths: ### Pagination - Please review the [Pagination section](#pagination) for the "List + Please review the [Pagination section] for the "List Vulnerabilities" endpoint. ### Filtering - Please review the [Filtering section](#filtering) for the "List + Please review the [Filtering section] for the "List Vulnerabilities" endpoint. ### Metadata - Please review the [Metadata section](#metadata) for the "List + Please review the [Metadata section] for the "List Vulnerabilities" endpoint. operationId: ListAssetsSBOMs parameters: @@ -11832,6 +11832,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -11914,6 +11915,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -11933,6 +11935,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data mute_findings: operation: $ref: '#/paths/~1api~1v2~1posture_management~1findings/patch' @@ -11965,6 +11968,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -12048,6 +12052,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data get_sbom: operation: $ref: '#/paths/~1api~1v2~1security~1sboms~1{asset_type}/get' @@ -12129,6 +12134,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -12207,6 +12213,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_security_filter: operation: $ref: >- @@ -12228,6 +12235,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_security_filter: operation: $ref: >- @@ -12368,6 +12376,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_security_monitoring_rule: operation: $ref: '#/paths/~1api~1v2~1security_monitoring~1rules/post' @@ -12472,6 +12481,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data search_security_monitoring_signals: operation: $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1search/post' @@ -12527,6 +12537,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data reorder_scanning_groups: operation: $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config/patch' @@ -12636,6 +12647,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data search_security_monitoring_histsignals: operation: $ref: >- @@ -12665,6 +12677,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -12688,6 +12701,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data run_historical_job: operation: $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs/post' @@ -12732,15 +12746,8 @@ components: #/components/x-stackQL-resources/historical_jobs/methods/delete_historical_job replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 2d81ef7..a115bc0 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 @@ -14507,6 +14507,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_downtime: operation: $ref: '#/paths/~1api~1v2~1downtime/post' @@ -14525,6 +14526,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_downtime: operation: $ref: '#/paths/~1api~1v2~1downtime~1{downtime_id}/patch' @@ -14559,6 +14561,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_issue_assignee: operation: $ref: >- @@ -14591,6 +14594,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_event: operation: $ref: '#/paths/~1api~1v2~1events/post' @@ -14631,6 +14635,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_incident: operation: $ref: '#/paths/~1api~1v2~1incidents/post' @@ -14643,6 +14648,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data delete_incident: operation: $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}/delete' @@ -14655,6 +14661,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_incident: operation: $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}/patch' @@ -14685,6 +14692,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_incident_notification_rule: operation: $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules/post' @@ -14704,6 +14712,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_incident_notification_rule: operation: $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules~1{id}/put' @@ -14737,6 +14746,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_incident_notification_template: operation: $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-templates/post' @@ -14757,6 +14767,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_incident_notification_template: operation: $ref: >- @@ -14847,6 +14858,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_incident_attachments: operation: $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1attachments/patch' @@ -14875,6 +14887,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_incident_integration: operation: $ref: >- @@ -14896,6 +14909,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_incident_integration: operation: $ref: >- @@ -14931,6 +14945,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_incident_todo: operation: $ref: >- @@ -14952,6 +14967,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_incident_todo: operation: $ref: >- @@ -14999,6 +15015,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_on_call_escalation_policy: operation: $ref: '#/paths/~1api~1v2~1on-call~1escalation-policies~1{policy_id}/put' @@ -15079,6 +15096,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_on_call_schedule: operation: $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}/put' @@ -15110,6 +15128,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -15129,6 +15148,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data sqlVerbs: select: - $ref: >- @@ -15148,6 +15168,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data set_on_call_team_routing_rules: operation: $ref: '#/paths/~1api~1v2~1on-call~1teams~1{team_id}~1routing-rules/put' @@ -15175,6 +15196,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_incident_service: operation: $ref: '#/paths/~1api~1v2~1services/post' @@ -15193,6 +15215,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_incident_service: operation: $ref: '#/paths/~1api~1v2~1services~1{service_id}/patch' @@ -15305,6 +15328,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_incident_team: operation: $ref: '#/paths/~1api~1v2~1teams/post' @@ -15323,6 +15347,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data update_incident_team: operation: $ref: '#/paths/~1api~1v2~1teams~1{team_id}/patch' @@ -15346,15 +15371,8 @@ components: #/components/x-stackQL-resources/incident_teams/methods/delete_incident_team replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com 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 5decfa9..4949c57 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 @@ -4315,6 +4315,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data search_ciapp_pipeline_events: operation: $ref: '#/paths/~1api~1v2~1ci~1pipelines~1events~1search/post' @@ -4348,6 +4349,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data search_ciapp_test_events: operation: $ref: '#/paths/~1api~1v2~1ci~1tests~1events~1search/post' @@ -4506,6 +4508,7 @@ components: response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data create_workflow_instance: operation: $ref: '#/paths/~1api~1v2~1workflows~1{workflow_id}~1instances/post' @@ -4540,15 +4543,8 @@ components: delete: [] replace: [] servers: - - url: https://api.{region} + - url: >- + https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ variables: region: default: datadoghq.com - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com diff --git a/provider-dev/scripts/.gitkeep b/provider-dev/scripts/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/provider-dev/scripts/fix_broken_links.sh b/provider-dev/scripts/fix_broken_links.sh new file mode 100644 index 0000000..34570c3 --- /dev/null +++ b/provider-dev/scripts/fix_broken_links.sh @@ -0,0 +1,4 @@ +# 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/website/docs/.gitkeep b/website/docs/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/website/docs/index.md b/website/docs/index.md new file mode 100644 index 0000000..e4a7a43 --- /dev/null +++ b/website/docs/index.md @@ -0,0 +1,94 @@ +--- +title: datadog +hide_title: false +hide_table_of_contents: false +keywords: + - datadog + - stackql + - infrastructure-as-code + - configuration-as-data + - 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 +id: 'provider-intro' +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; + +Monitoring, alerting and reporting platform for cloud platforms and applications. + +:::info[Provider Summary] + +total services: __16__ +total resources: __187__ + +::: + +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 + +``` +
+ +## Services + diff --git a/website/docs/services/actions/app_key_registrations/index.md b/website/docs/services/actions/app_key_registrations/index.md new file mode 100644 index 0000000..819cd9f --- /dev/null +++ b/website/docs/services/actions/app_key_registrations/index.md @@ -0,0 +1,245 @@ +--- +title: app_key_registrations +hide_title: false +hide_table_of_contents: false +keywords: + - app_key_registrations + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_key_registrations resource. + +## Overview + + + + +
Nameapp_key_registrations
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The app key registration identifier
stringThe definition of `AppKeyRegistrationDataType` object. (example: app_key_registration)
+
+ + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The app key registration identifier
stringThe definition of `AppKeyRegistrationDataType` object. (example: app_key_registration)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_key_id, regionGet an existing App Key Registration
regionpage[size], page[number]List App Key Registrations
app_key_id, regionUnregister an App Key
app_key_id, regionRegister a new App 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
stringThe ID of the app key
string(default: datadoghq.com)
integer (int64)The page number to return.
integer (int64)The number of App Key Registrations to return per page.
+ +## `SELECT` examples + + + + +Get an existing App Key Registration + +```sql +SELECT +id, +type +FROM datadog.actions.app_key_registrations +WHERE app_key_id = '{{ app_key_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List App Key Registrations + +```sql +SELECT +id, +type +FROM datadog.actions.app_key_registrations +WHERE region = '{{ region }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + + + +## Lifecycle Methods + + + + +Unregister an App Key + +```sql +EXEC datadog.actions.app_key_registrations.unregister_app_key +@app_key_id='{{ app_key_id }}' --required, +@region='{{ region }}' --required +; +``` + + + +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 +; +``` + + diff --git a/website/docs/services/actions/connections/index.md b/website/docs/services/actions/connections/index.md new file mode 100644 index 0000000..bee8177 --- /dev/null +++ b/website/docs/services/actions/connections/index.md @@ -0,0 +1,261 @@ +--- +title: connections +hide_title: false +hide_table_of_contents: false +keywords: + - connections + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a connections resource. + +## Overview + + + + +
Nameconnections
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Successfully get Action Connection + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe connection identifier
objectThe definition of `ActionConnectionAttributes` object.
stringThe definition of `ActionConnectionDataType` object. (example: action_connection)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
connection_id, regionGet 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__dataCreate 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__dataUpdate 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, regionDelete 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).
+ +## Parameters + +Parameters can be passed in 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 action connection
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +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). + +```sql +SELECT +id, +attributes, +type +FROM datadog.actions.connections +WHERE connection_id = '{{ connection_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +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). + +```sql +INSERT INTO datadog.actions.connections ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +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). + +```sql +UPDATE datadog.actions.connections +SET +data__data = '{{ data }}' +WHERE +connection_id = '{{ connection_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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). + +```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 new file mode 100644 index 0000000..5ae148b --- /dev/null +++ b/website/docs/services/actions/datastore_items/index.md @@ -0,0 +1,293 @@ +--- +title: datastore_items +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a datastore_items resource. + +## Overview + + + + +
Namedatastore_items
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the datastore.
objectMetadata and content of a datastore item.
stringThe resource type for datastore items. (default: items, example: items)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
datastore_id, regionfilter, item_key, page[limit], page[offset], sortLists 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, regionCreates or replaces multiple items in a datastore by their keys in a single operation.
datastore_id, regionPartially updates an item in a datastore by its key.
datastore_id, regionDeletes an item from a datastore by its 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
stringThe unique identifier of the datastore to retrieve.
string(default: datadoghq.com)
stringOptional query filter to search items using the [logs search syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/).
stringOptional primary key value to retrieve a specific item. Cannot be used together with the filter parameter.
integer (int64)Optional field to limit the number of items to return per page for pagination. Up to 100 items can be returned per page.
integer (int64)Optional field to offset the number of items to skip from the beginning of the result set for pagination.
stringOptional field to sort results by. Prefix with '-' for descending order (e.g., '-created_at').
+ +## `SELECT` examples + + + + +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. + +```sql +SELECT +id, +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] }}' +AND page[offset] = '{{ page[offset] }}' +AND sort = '{{ sort }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates or replaces multiple items in a datastore by their keys in a single operation. + +```sql +INSERT INTO datadog.actions.datastore_items ( +data__data, +datastore_id, +region +) +SELECT +'{{ data }}', +'{{ datastore_id }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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 + 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. +``` + + + + +## `UPDATE` examples + + + + +Partially updates an item in a datastore by its key. + +```sql +UPDATE datadog.actions.datastore_items +SET +data__data = '{{ data }}' +WHERE +datastore_id = '{{ datastore_id }}' --required +AND region = '{{ region }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..a88088a --- /dev/null +++ b/website/docs/services/actions/datastores/index.md @@ -0,0 +1,310 @@ +--- +title: datastores +hide_title: false +hide_table_of_contents: false +keywords: + - datastores + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a datastores resource. + +## Overview + + + + +
Namedatastores
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the datastore.
objectDetailed information about a datastore.
stringThe resource type for datastores. (default: datastores, example: datastores)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the datastore.
objectDetailed information about a datastore.
stringThe resource type for datastores. (default: datastores, example: datastores)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
datastore_id, regionRetrieves a specific datastore by its ID.
regionLists all datastores for the organization.
regionCreates a new datastore.
datastore_id, regionUpdates an existing datastore's attributes.
datastore_id, regionDeletes a datastore by its unique 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 unique identifier of the datastore to retrieve.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Retrieves a specific datastore by its ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.actions.datastores +WHERE datastore_id = '{{ datastore_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Lists all datastores for the organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.actions.datastores +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Creates a new datastore. + +```sql +INSERT INTO datadog.actions.datastores ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Updates an existing datastore's attributes. + +```sql +UPDATE datadog.actions.datastores +SET +data__data = '{{ data }}' +WHERE +datastore_id = '{{ datastore_id }}' --required +AND region = '{{ region }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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/index.md b/website/docs/services/actions/index.md new file mode 100644 index 0000000..eb2621f --- /dev/null +++ b/website/docs/services/actions/index.md @@ -0,0 +1,35 @@ +--- +title: actions +hide_title: false +hide_table_of_contents: false +keywords: + - actions + - 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 +--- + +actions service documentation. + +:::info[Service Summary] + +total resources: __4__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/apm/index.md b/website/docs/services/apm/index.md new file mode 100644 index 0000000..669140f --- /dev/null +++ b/website/docs/services/apm/index.md @@ -0,0 +1,35 @@ +--- +title: apm +hide_title: false +hide_table_of_contents: false +keywords: + - apm + - 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 +--- + +apm service documentation. + +:::info[Service Summary] + +total resources: __4__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/apm/retention_filters/index.md b/website/docs/services/apm/retention_filters/index.md new file mode 100644 index 0000000..47e867d --- /dev/null +++ b/website/docs/services/apm/retention_filters/index.md @@ -0,0 +1,343 @@ +--- +title: retention_filters +hide_title: false +hide_table_of_contents: false +keywords: + - retention_filters + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a retention_filters resource. + +## Overview + + + + +
Nameretention_filters
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the retention filter. (example: 7RBOb7dLSYWI01yc3pIH8w)
objectThe attributes of the retention filter.
stringThe type of the resource. (default: apm_retention_filter, example: apm_retention_filter)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the retention filter. (example: 7RBOb7dLSYWI01yc3pIH8w)
objectThe attributes of the retention filter.
stringThe type of the resource. (default: apm_retention_filter, example: apm_retention_filter)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter_id, regionGet an APM retention filter.
regionGet the list of APM retention filters.
region, data__dataCreate 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.
filter_id, region, data__dataUpdate 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.
filter_id, regionDelete a specific retention filter from your organization.

Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be deleted.
region, dataRe-order the execution order of retention 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 ID of the retention filter.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get an APM retention filter. + +```sql +SELECT +id, +attributes, +type +FROM datadog.apm.retention_filters +WHERE filter_id = '{{ filter_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get the list of APM retention filters. + +```sql +SELECT +id, +attributes, +type +FROM datadog.apm.retention_filters +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.apm.retention_filters ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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. +``` + +
+ + +## `REPLACE` examples + + + + +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. + +```sql +REPLACE datadog.apm.retention_filters +SET +data__data = '{{ data }}' +WHERE +filter_id = '{{ filter_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +Delete a specific retention filter from your organization.

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 +; +``` +
+
+ + +## Lifecycle Methods + + + + +Re-order the execution order of retention filters. + +```sql +EXEC datadog.apm.retention_filters.reorder_apm_retention_filters +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/apm/scorecard_outcomes/index.md b/website/docs/services/apm/scorecard_outcomes/index.md new file mode 100644 index 0000000..7554622 --- /dev/null +++ b/website/docs/services/apm/scorecard_outcomes/index.md @@ -0,0 +1,289 @@ +--- +title: scorecard_outcomes +hide_title: false +hide_table_of_contents: false +keywords: + - scorecard_outcomes + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a scorecard_outcomes resource. + +## Overview + + + + +
Namescorecard_outcomes
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID for a rule outcome.
objectThe JSON:API attributes for an outcome.
objectThe JSON:API relationship to a scorecard rule.
stringThe JSON:API type for an outcome. (default: outcome, example: outcome)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionpage[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.
regionSets multiple service-rule outcomes in a single batched request.
regionUpdates multiple scorecard rule outcomes in a single batched 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(default: datadoghq.com)
stringReturn only specified values in the outcome attributes.
stringReturn only specified values in the included rule details.
stringFilter the outcomes on a specific service name.
stringFilter the outcomes by a specific state.
booleanFilter outcomes on whether a rule is enabled/disabled.
stringFilter outcomes based on rule ID.
stringFilter outcomes based on rule name.
stringInclude related rule details 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 + + + + +Fetches all rule outcomes. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.apm.scorecard_outcomes +WHERE region = '{{ region }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[offset] = '{{ page[offset] }}' +AND include = '{{ include }}' +AND fields[outcome] = '{{ fields[outcome] }}' +AND fields[rule] = '{{ fields[rule] }}' +AND filter[outcome][service_name] = '{{ filter[outcome][service_name] }}' +AND filter[outcome][state] = '{{ filter[outcome][state] }}' +AND filter[rule][enabled] = '{{ filter[rule][enabled] }}' +AND filter[rule][id] = '{{ filter[rule][id] }}' +AND filter[rule][name] = '{{ filter[rule][name] }}' +; +``` + + + + +## `INSERT` examples + + + + +Sets multiple service-rule outcomes in a single batched request. + +```sql +INSERT INTO datadog.apm.scorecard_outcomes ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data, +meta +; +``` + + + +```yaml +# 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. +``` + + + + +## 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 new file mode 100644 index 0000000..fdcc11f --- /dev/null +++ b/website/docs/services/apm/scorecard_rules/index.md @@ -0,0 +1,323 @@ +--- +title: scorecard_rules +hide_title: false +hide_table_of_contents: false +keywords: + - scorecard_rules + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a scorecard_rules resource. + +## Overview + + + + +
Namescorecard_rules
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID for a scorecard rule. (example: q8MQxk8TCqrHnWkx)
objectDetails of a rule.
objectScorecard create rule response relationship.
stringThe JSON:API type for scorecard rules. (default: rule, example: rule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionpage[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.
regionCreates a new rule.
rule_id, regionUpdates an existing rule.
rule_id, regionDeletes a single 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(default: datadoghq.com)
stringThe ID of the rule.
stringReturn only specific fields in the response for rule attributes.
stringReturn only specific fields in the included response for scorecard attributes.
booleanFilter for custom rules only.
stringFilter rules on the rule description.
booleanFilter for enabled rules only.
stringFilter the rules on a rule ID.
stringFilter rules on the rule name.
stringInclude related scorecard details 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 + + + + +Fetch all rules. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.apm.scorecard_rules +WHERE region = '{{ region }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[offset] = '{{ page[offset] }}' +AND include = '{{ include }}' +AND filter[rule][id] = '{{ filter[rule][id] }}' +AND filter[rule][enabled] = '{{ filter[rule][enabled] }}' +AND filter[rule][custom] = '{{ filter[rule][custom] }}' +AND filter[rule][name] = '{{ filter[rule][name] }}' +AND filter[rule][description] = '{{ filter[rule][description] }}' +AND fields[rule] = '{{ fields[rule] }}' +AND fields[scorecard] = '{{ fields[scorecard] }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a new rule. + +```sql +INSERT INTO datadog.apm.scorecard_rules ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `REPLACE` examples + + + + +Updates an existing rule. + +```sql +REPLACE datadog.apm.scorecard_rules +SET +data__data = '{{ data }}' +WHERE +rule_id = '{{ rule_id }}' --required +AND region = '{{ region }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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/spans_metrics/index.md b/website/docs/services/apm/spans_metrics/index.md new file mode 100644 index 0000000..d565967 --- /dev/null +++ b/website/docs/services/apm/spans_metrics/index.md @@ -0,0 +1,311 @@ +--- +title: spans_metrics +hide_title: false +hide_table_of_contents: false +keywords: + - spans_metrics + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a spans_metrics resource. + +## Overview + + + + +
Namespans_metrics
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the span-based metric. (example: my.metric)
objectThe object describing a Datadog span-based metric.
stringThe type of resource. The value should always be spans_metrics. (default: spans_metrics, example: spans_metrics)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the span-based metric. (example: my.metric)
objectThe object describing a Datadog span-based metric.
stringThe type of resource. The value should always be spans_metrics. (default: spans_metrics, example: spans_metrics)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_id, regionGet a specific span-based metric from your organization.
regionGet the list of configured span-based metrics with their definitions.
region, data__dataCreate 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.
metric_id, region, data__dataUpdate a specific span-based metric from your organization.
Returns the span-based metric object from the request body when the request is successful.
metric_id, regionDelete a specific span-based metric 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 name of the span-based metric.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get a specific span-based metric from your organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.apm.spans_metrics +WHERE metric_id = '{{ metric_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get the list of configured span-based metrics with their definitions. + +```sql +SELECT +id, +attributes, +type +FROM datadog.apm.spans_metrics +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.apm.spans_metrics ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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. +``` + +
+ + +## `UPDATE` examples + + + + +Update a specific span-based metric from your organization.
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 }}' +WHERE +metric_id = '{{ metric_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +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/catalog/apis/index.md b/website/docs/services/catalog/apis/index.md new file mode 100644 index 0000000..20e2076 --- /dev/null +++ b/website/docs/services/catalog/apis/index.md @@ -0,0 +1,298 @@ +--- +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 new file mode 100644 index 0000000..90e5dfd --- /dev/null +++ b/website/docs/services/catalog/catalog_entities/index.md @@ -0,0 +1,292 @@ +--- +title: catalog_entities +hide_title: false +hide_table_of_contents: false +keywords: + - catalog_entities + - 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 a catalog_entities resource. + +## Overview + + + + +
Namecatalog_entities
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringEntity ID.
objectEntity attributes.
objectEntity metadata.
objectEntity relationships.
stringEntity.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionpage[offset], page[limit], filter[id], filter[ref], filter[name], filter[kind], filter[owner], filter[relation][type], filter[exclude_snapshot], includeGet a list of entities from Software Catalog.
regionCreate or update entities in Software Catalog.
entity_id, regionDelete a single entity in Software 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
stringUUID or Entity Ref.
string(default: datadoghq.com)
stringFilter entities by excluding snapshotted entities.
stringFilter entities by UUID.
stringFilter entities by kind.
stringFilter entities by name.
stringFilter entities by owner.
stringFilter entities by reference (example: service:shopping-cart)
stringFilter entities by relation type.
stringInclude relationship data.
integer (int64)Maximum number of entities in the response. (example: 100)
integer (int64)Specific offset to use as the beginning of the returned page.
+ +## `SELECT` examples + + + + +Get a list of entities from Software Catalog. + +```sql +SELECT +id, +attributes, +meta, +relationships, +type +FROM datadog.catalog.catalog_entities +WHERE region = '{{ region }}' -- required +AND page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +AND filter[id] = '{{ filter[id] }}' +AND filter[ref] = '{{ filter[ref] }}' +AND filter[name] = '{{ filter[name] }}' +AND filter[kind] = '{{ filter[kind] }}' +AND filter[owner] = '{{ filter[owner] }}' +AND filter[relation][type] = '{{ filter[relation][type] }}' +AND filter[exclude_snapshot] = '{{ filter[exclude_snapshot] }}' +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Create or update entities in Software Catalog. + +```sql +INSERT INTO datadog.catalog.catalog_entities ( +region +) +SELECT +'{{ region }}' +RETURNING +data, +included, +meta +; +``` + + + +```yaml +# Description fields are for documentation purposes +- name: catalog_entities + props: + - name: region + value: string + description: Required parameter for the catalog_entities resource. +``` + + + + +## `DELETE` examples + + + + +Delete a single entity in Software Catalog. + +```sql +DELETE FROM datadog.catalog.catalog_entities +WHERE entity_id = '{{ entity_id }}' --required +AND region = '{{ region }}' --required +; +``` + + diff --git a/website/docs/services/catalog/catalog_kinds/index.md b/website/docs/services/catalog/catalog_kinds/index.md new file mode 100644 index 0000000..a4a5971 --- /dev/null +++ b/website/docs/services/catalog/catalog_kinds/index.md @@ -0,0 +1,267 @@ +--- +title: catalog_kinds +hide_title: false +hide_table_of_contents: false +keywords: + - catalog_kinds + - 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 a catalog_kinds resource. + +## Overview + + + + +
Namecatalog_kinds
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA read-only globally unique identifier for the entity generated by Datadog. User supplied values are ignored. (example: 4b163705-23c0-4573-b2fb-f6cea2163fcb)
objectKind attributes.
objectKind metadata.
stringKind.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionpage[offset], page[limit], filter[id], filter[name]Get a list of entity kinds from Software Catalog.
region, data__kindCreate or update kinds in Software Catalog.
kind_id, regionDelete a single kind in Software 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
stringEntity kind.
string(default: datadoghq.com)
stringFilter entities by UUID.
stringFilter entities by name.
integer (int64)Maximum number of kinds in the response. (example: 100)
integer (int64)Specific offset to use as the beginning of the returned page.
+ +## `SELECT` examples + + + + +Get a list of entity kinds from Software Catalog. + +```sql +SELECT +id, +attributes, +meta, +type +FROM datadog.catalog.catalog_kinds +WHERE region = '{{ region }}' -- required +AND page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +AND filter[id] = '{{ filter[id] }}' +AND filter[name] = '{{ filter[name] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create or update kinds in Software Catalog. + +```sql +INSERT INTO datadog.catalog.catalog_kinds ( +data__description, +data__displayName, +data__kind, +region +) +SELECT +'{{ description }}', +'{{ displayName }}', +'{{ kind }}' /* required */, +'{{ region }}' +RETURNING +data, +meta +; +``` + + + +```yaml +# 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 + description: | + Short description of the kind. + - name: displayName + value: string + description: | + The display name of the kind. Automatically generated if not provided. + - name: kind + value: string + description: | + The name of the kind to create or update. This must be in kebab-case format. +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..87983cb --- /dev/null +++ b/website/docs/services/catalog/catalog_relations/index.md @@ -0,0 +1,193 @@ +--- +title: catalog_relations +hide_title: false +hide_table_of_contents: false +keywords: + - catalog_relations + - 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 a catalog_relations resource. + +## Overview + + + + +
Namecatalog_relations
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringRelation ID.
objectRelation attributes.
objectRelation metadata.
objectRelation relationships.
stringRelation subtype.
stringRelation type.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionpage[offset], page[limit], filter[type], filter[from_ref], filter[to_ref], includeGet a list of entity relations from Software 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
string(default: datadoghq.com)
stringFilter relations by the reference of the first entity in the relation. (example: service:shopping-cart)
stringFilter relations by the reference of the second entity in the relation. (example: service:shopping-cart)
stringFilter relations by type.
stringInclude relationship data.
integer (int64)Maximum number of relations in the response. (example: 100)
integer (int64)Specific offset to use as the beginning of the returned page.
+ +## `SELECT` examples + + + + +Get a list of entity relations from Software Catalog. + +```sql +SELECT +id, +attributes, +meta, +relationships, +subtype, +type +FROM datadog.catalog.catalog_relations +WHERE region = '{{ region }}' -- required +AND 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 }}' +; +``` + + diff --git a/website/docs/services/catalog/index.md b/website/docs/services/catalog/index.md new file mode 100644 index 0000000..d852bd5 --- /dev/null +++ b/website/docs/services/catalog/index.md @@ -0,0 +1,35 @@ +--- +title: catalog +hide_title: false +hide_table_of_contents: false +keywords: + - catalog + - 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 +--- + +catalog service documentation. + +:::info[Service Summary] + +total resources: __4__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/cloud_costs/active_billing_dimensions/index.md b/website/docs/services/cloud_costs/active_billing_dimensions/index.md new file mode 100644 index 0000000..d0563d3 --- /dev/null +++ b/website/docs/services/cloud_costs/active_billing_dimensions/index.md @@ -0,0 +1,139 @@ +--- +title: active_billing_dimensions +hide_title: false +hide_table_of_contents: false +keywords: + - active_billing_dimensions + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an active_billing_dimensions resource. + +## Overview + + + + +
Nameactive_billing_dimensions
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique ID of the response.
objectList of active billing dimensions.
stringType of active billing dimensions data. (default: billing_dimensions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionGet active billing dimensions for cost attribution. Cost data for a given month becomes available no later than the 19th of the following month.
+ +## Parameters + +Parameters can be passed 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)
+ +## `SELECT` examples + + + + +Get active billing dimensions for cost attribution. Cost data for a given month becomes available no later than the 19th of the following month. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.active_billing_dimensions +WHERE region = '{{ region }}' -- required +; +``` + + diff --git a/website/docs/services/cloud_costs/aws_configs/index.md b/website/docs/services/cloud_costs/aws_configs/index.md new file mode 100644 index 0000000..122122a --- /dev/null +++ b/website/docs/services/cloud_costs/aws_configs/index.md @@ -0,0 +1,258 @@ +--- +title: aws_configs +hide_title: false +hide_table_of_contents: false +keywords: + - aws_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_configs resource. + +## Overview + + + + +
Nameaws_configs
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the AWS CUR config.
objectAttributes for An AWS CUR config.
stringType of AWS CUR config. (default: aws_cur_config, example: aws_cur_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionList the AWS CUR configs.
region, data__dataCreate a Cloud Cost Management account for an AWS CUR config.
cloud_account_id, region, data__dataUpdate the status (active/archived) and/or account filtering configuration of an AWS CUR config.
cloud_account_id, regionArchive a Cloud Cost Management 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
integer (int64)Cloud Account id.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +List the AWS CUR configs. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.aws_configs +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a Cloud Cost Management account for an AWS CUR config. + +```sql +INSERT INTO datadog.cloud_costs.aws_configs ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update the status (active/archived) and/or account filtering configuration of an AWS CUR config. + +```sql +UPDATE datadog.cloud_costs.aws_configs +SET +data__data = '{{ data }}' +WHERE +cloud_account_id = '{{ cloud_account_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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/azure_configs/index.md b/website/docs/services/cloud_costs/azure_configs/index.md new file mode 100644 index 0000000..d6d2c2e --- /dev/null +++ b/website/docs/services/cloud_costs/azure_configs/index.md @@ -0,0 +1,258 @@ +--- +title: azure_configs +hide_title: false +hide_table_of_contents: false +keywords: + - azure_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an azure_configs resource. + +## Overview + + + + +
Nameazure_configs
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of Cloud Cost Management account.
objectAttributes for Azure config pair.
stringType of Azure config pair. (default: azure_uc_configs, example: azure_uc_configs)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionList the Azure configs.
region, data__dataCreate a Cloud Cost Management account for an Azure config.
cloud_account_id, region, data__dataUpdate the status of an Azure config (active/archived).
cloud_account_id, regionArchive a Cloud Cost Management 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
integer (int64)Cloud Account id.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +List the Azure configs. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.azure_configs +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a Cloud Cost Management account for an Azure config. + +```sql +INSERT INTO datadog.cloud_costs.azure_configs ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update the status of an Azure config (active/archived). + +```sql +UPDATE datadog.cloud_costs.azure_configs +SET +data__data = '{{ data }}' +WHERE +cloud_account_id = '{{ cloud_account_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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/budgets/index.md b/website/docs/services/cloud_costs/budgets/index.md new file mode 100644 index 0000000..a70b052 --- /dev/null +++ b/website/docs/services/cloud_costs/budgets/index.md @@ -0,0 +1,258 @@ +--- +title: budgets +hide_title: false +hide_table_of_contents: false +keywords: + - budgets + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a budgets resource. + +## Overview + + + + +
Namebudgets
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `BudgetWithEntriesData` `id`. (example: 00000000-0a0a-0a0a-aaa0-00000000000a)
objectThe attributes of a budget.
stringThe type of the object, must be `budget`.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe id of the budget.
objectThe attributes of a budget.
stringThe type of the object, must be `budget`.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
budget_id, regionGet a budget.
regionList budgets.
regionCreate a new budget or update an existing one.
budget_id, regionDelete 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.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get a budget. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.budgets +WHERE budget_id = '{{ budget_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List budgets. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.budgets +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `REPLACE` examples + + + + +Create a new budget or update an existing one. + +```sql +REPLACE datadog.cloud_costs.budgets +SET +data__data = '{{ data }}' +WHERE +region = '{{ region }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a budget. + +```sql +DELETE FROM datadog.cloud_costs.budgets +WHERE budget_id = '{{ budget_id }}' --required +AND region = '{{ region }}' --required +; +``` + + diff --git a/website/docs/services/cloud_costs/costs_files/index.md b/website/docs/services/cloud_costs/costs_files/index.md new file mode 100644 index 0000000..4a3fcdc --- /dev/null +++ b/website/docs/services/cloud_costs/costs_files/index.md @@ -0,0 +1,278 @@ +--- +title: costs_files +hide_title: false +hide_table_of_contents: false +keywords: + - costs_files + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a costs_files resource. + +## Overview + + + + +
Namecosts_files
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the Custom Costs metadata.
objectSchema of a cost file's metadata.
stringType of the Custom Costs file metadata.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the Custom Costs metadata.
objectSchema of a Custom Costs metadata.
stringType of the Custom Costs file metadata.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
file_id, regionFetch the specified Custom Costs file.
regionpage[number], page[size], filter[status], sortList the Custom Costs files.
file_id, regionDelete the specified Custom Costs file.
regionUpload a Custom Costs 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
stringFile ID.
string(default: datadoghq.com)
stringFilter by file status
integer (int64)Page number for pagination
integer (int64)Page size for pagination
stringSort key with optional descending prefix
+ +## `SELECT` examples + + + + +Fetch the specified Custom Costs file. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.costs_files +WHERE file_id = '{{ file_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List the Custom Costs files. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.costs_files +WHERE region = '{{ region }}' -- required +AND page[number] = '{{ page[number] }}' +AND page[size] = '{{ page[size] }}' +AND filter[status] = '{{ filter[status] }}' +AND sort = '{{ sort }}' +; +``` + + + + +## `DELETE` examples + + + + +Delete the specified Custom Costs file. + +```sql +DELETE FROM datadog.cloud_costs.costs_files +WHERE file_id = '{{ file_id }}' --required +AND region = '{{ region }}' --required +; +``` + + + + +## Lifecycle Methods + + + + +Upload a Custom Costs file. + +```sql +EXEC datadog.cloud_costs.costs_files.upload_custom_costs_file +@region='{{ region }}' --required +; +``` + + diff --git a/website/docs/services/cloud_costs/gcp_configs/index.md b/website/docs/services/cloud_costs/gcp_configs/index.md new file mode 100644 index 0000000..f41fb00 --- /dev/null +++ b/website/docs/services/cloud_costs/gcp_configs/index.md @@ -0,0 +1,258 @@ +--- +title: gcp_configs +hide_title: false +hide_table_of_contents: false +keywords: + - gcp_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a gcp_configs resource. + +## Overview + + + + +
Namegcp_configs
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the GCP Usage Cost config.
objectAttributes for a GCP Usage Cost config.
stringType of GCP Usage Cost config. (default: gcp_uc_config, example: gcp_uc_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionList the GCP Usage Cost configs.
region, data__dataCreate a Cloud Cost Management account for an GCP Usage Cost config.
cloud_account_id, region, data__dataUpdate the status of an GCP Usage Cost config (active/archived).
cloud_account_id, regionArchive a Cloud Cost Management 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
integer (int64)Cloud Account id.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +List the GCP Usage Cost configs. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.gcp_configs +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a Cloud Cost Management account for an GCP Usage Cost config. + +```sql +INSERT INTO datadog.cloud_costs.gcp_configs ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update the status of an GCP Usage Cost config (active/archived). + +```sql +UPDATE datadog.cloud_costs.gcp_configs +SET +data__data = '{{ data }}' +WHERE +cloud_account_id = '{{ cloud_account_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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/index.md b/website/docs/services/cloud_costs/index.md new file mode 100644 index 0000000..3eeb555 --- /dev/null +++ b/website/docs/services/cloud_costs/index.md @@ -0,0 +1,38 @@ +--- +title: cloud_costs +hide_title: false +hide_table_of_contents: false +keywords: + - cloud_costs + - 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 +--- + +cloud_costs service documentation. + +:::info[Service Summary] + +total resources: __7__ + +::: + +## 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 new file mode 100644 index 0000000..e7488f3 --- /dev/null +++ b/website/docs/services/cloud_costs/monthly_cost_attribution/index.md @@ -0,0 +1,187 @@ +--- +title: monthly_cost_attribution +hide_title: false +hide_table_of_contents: false +keywords: + - monthly_cost_attribution + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monthly_cost_attribution resource. + +## Overview + + + + +
Namemonthly_cost_attribution
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique ID of the response.
objectCost Attribution by Tag for a given organization.
stringType of cost attribution data. (default: cost_by_tag, example: cost_by_tag)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
start_month, fields, regionend_month, sort_direction, sort_name, tag_breakdown_keys, next_record_id, include_descendantsGet 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.
+ +## Parameters + +Parameters can be passed 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 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).
string(default: datadoghq.com)
string (date-time)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.
booleanInclude child org cost 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 billing dimension to sort by. Always sorted by total cost. Example: `infra_host`.
stringComma 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.
+ +## `SELECT` examples + + + + +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. + +```sql +SELECT +id, +attributes, +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 }}' +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/dashboards/dashboard_list_items/index.md b/website/docs/services/dashboards/dashboard_list_items/index.md new file mode 100644 index 0000000..18dec49 --- /dev/null +++ b/website/docs/services/dashboards/dashboard_list_items/index.md @@ -0,0 +1,329 @@ +--- +title: dashboard_list_items +hide_title: false +hide_table_of_contents: false +keywords: + - dashboard_list_items + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a dashboard_list_items resource. + +## Overview + + + + +
Namedashboard_list_items
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the dashboard. (example: q5j-nti-fv6)
stringThe short name of the integration.
objectCreator of the object.
string (date-time)Date of creation of the dashboard.
stringURL to the icon of the dashboard.
booleanWhether or not the dashboard is in the favorites.
booleanWhether or not the dashboard is read only.
booleanWhether the dashboard is publicly shared or not.
string (date-time)Date of last edition of the dashboard.
integer (int32)Popularity of the dashboard.
arrayList of team names representing ownership of a dashboard.
stringTitle of the dashboard.
stringThe type of the dashboard. (example: host_timeboard)
stringURL path to the dashboard.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dashboard_list_id, regionFetch the dashboard list’s dashboard definitions.
dashboard_list_id, regionAdd dashboards to an existing dashboard list.
dashboard_list_id, regionUpdate dashboards of an existing dashboard list.
dashboard_list_id, regionDelete dashboards from an existing 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 items from.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Fetch the dashboard list’s dashboard definitions. + +```sql +SELECT +id, +integration_id, +author, +created, +icon, +is_favorite, +is_read_only, +is_shared, +modified, +popularity, +tags, +title, +type, +url +FROM datadog.dashboards.dashboard_list_items +WHERE dashboard_list_id = '{{ dashboard_list_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Add dashboards to an existing dashboard list. + +```sql +INSERT INTO datadog.dashboards.dashboard_list_items ( +data__dashboards, +dashboard_list_id, +region +) +SELECT +'{{ dashboards }}', +'{{ dashboard_list_id }}', +'{{ region }}' +RETURNING +added_dashboards_to_list +; +``` + + + +```yaml +# 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 + description: Required parameter for the dashboard_list_items resource. + - name: dashboards + value: array + description: | + List of dashboards to add the dashboard list. +``` + + + + +## `REPLACE` examples + + + + +Update dashboards of an existing dashboard list. + +```sql +REPLACE datadog.dashboards.dashboard_list_items +SET +data__dashboards = '{{ dashboards }}' +WHERE +dashboard_list_id = '{{ dashboard_list_id }}' --required +AND region = '{{ region }}' --required +RETURNING +dashboards; +``` + + + + +## `DELETE` examples + + + + +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/index.md b/website/docs/services/dashboards/index.md new file mode 100644 index 0000000..a15a14c --- /dev/null +++ b/website/docs/services/dashboards/index.md @@ -0,0 +1,33 @@ +--- +title: dashboards +hide_title: false +hide_table_of_contents: false +keywords: + - dashboards + - 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 +--- + +dashboards service documentation. + +:::info[Service Summary] + +total resources: __2__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/dashboards/powerpacks/index.md b/website/docs/services/dashboards/powerpacks/index.md new file mode 100644 index 0000000..cfa2c3f --- /dev/null +++ b/website/docs/services/dashboards/powerpacks/index.md @@ -0,0 +1,336 @@ +--- +title: powerpacks +hide_title: false +hide_table_of_contents: false +keywords: + - powerpacks + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a powerpacks resource. + +## Overview + + + + +
Namepowerpacks
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the powerpack.
objectPowerpack attribute object.
objectPowerpack relationship object.
stringType of widget, must be powerpack. (example: powerpack)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the powerpack.
objectPowerpack attribute object.
objectPowerpack relationship object.
stringType of widget, must be powerpack. (example: powerpack)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
powerpack_id, regionGet a powerpack.
regionpage[limit], page[offset]Get a list of all powerpacks.
regionCreate a powerpack.
powerpack_id, regionUpdate a powerpack.
powerpack_id, regionDelete a powerpack.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringPowerpack id
string(default: datadoghq.com)
integer (int64)Maximum number of powerpacks in the response. (example: 25)
integer (int64)Specific offset to use as the beginning of the returned page.
+ +## `SELECT` examples + + + + +Get a powerpack. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.dashboards.powerpacks +WHERE powerpack_id = '{{ powerpack_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get a list of all powerpacks. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.dashboards.powerpacks +WHERE region = '{{ region }}' -- required +AND page[limit] = '{{ page[limit] }}' +AND page[offset] = '{{ page[offset] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a powerpack. + +```sql +INSERT INTO datadog.dashboards.powerpacks ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update a powerpack. + +```sql +UPDATE datadog.dashboards.powerpacks +SET +data__data = '{{ data }}' +WHERE +powerpack_id = '{{ powerpack_id }}' --required +AND region = '{{ region }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +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/digital_experience/index.md b/website/docs/services/digital_experience/index.md new file mode 100644 index 0000000..21b5663 --- /dev/null +++ b/website/docs/services/digital_experience/index.md @@ -0,0 +1,35 @@ +--- +title: digital_experience +hide_title: false +hide_table_of_contents: false +keywords: + - digital_experience + - 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 +--- + +digital_experience service documentation. + +:::info[Service Summary] + +total resources: __4__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/digital_experience/rum_applications/index.md b/website/docs/services/digital_experience/rum_applications/index.md new file mode 100644 index 0000000..9761058 --- /dev/null +++ b/website/docs/services/digital_experience/rum_applications/index.md @@ -0,0 +1,311 @@ +--- +title: rum_applications +hide_title: false +hide_table_of_contents: false +keywords: + - rum_applications + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_applications resource. + +## Overview + + + + +
Namerum_applications
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringRUM application ID. (example: abcd1234-0000-0000-abcd-1234abcd5678)
objectRUM application attributes.
stringRUM application response type. (default: rum_application, example: rum_application)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringRUM application ID. (example: abcd1234-0000-0000-abcd-1234abcd5678)
objectRUM application list attributes.
stringRUM application list type. (default: rum_application, example: rum_application)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
id, regionGet the RUM application with given ID in your organization.
regionList all the RUM applications in your organization.
region, data__dataCreate a new RUM application in your organization.
id, region, data__dataUpdate the RUM application with given ID in your organization.
id, regionDelete an existing RUM application 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
stringRUM application ID.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get the RUM application with given ID in your organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_applications +WHERE id = '{{ id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List all the RUM applications in your organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_applications +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new RUM application in your organization. + +```sql +INSERT INTO datadog.digital_experience.rum_applications ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update the RUM application with given ID in your organization. + +```sql +UPDATE datadog.digital_experience.rum_applications +SET +data__data = '{{ data }}' +WHERE +id = '{{ id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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_events/index.md b/website/docs/services/digital_experience/rum_events/index.md new file mode 100644 index 0000000..73155d0 --- /dev/null +++ b/website/docs/services/digital_experience/rum_events/index.md @@ -0,0 +1,236 @@ +--- +title: rum_events +hide_title: false +hide_table_of_contents: false +keywords: + - rum_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_events resource. + +## Overview + + + + +
Namerum_events
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique ID of the event. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectJSON object containing all event attributes and their associated values.
stringType of the event. (default: rum, example: rum)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionfilter[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
regionThe API endpoint to aggregate RUM events into buckets of computed metrics and timeseries.
regionList 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
+ +## Parameters + +Parameters can be passed 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)Minimum timestamp for requested events. (example: 2019-01-02T09:42:36.320Z)
stringSearch query following RUM syntax. (example: @type:session @application_id:xxxx)
string (date-time)Maximum timestamp for requested events. (example: 2019-01-03T09:42:36.320Z)
stringList following results with a cursor provided in the previous query. (example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==)
integer (int32)Maximum number of events in the response. (example: 25)
stringOrder of events in results.
+ +## `SELECT` examples + + + + +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 + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_events +WHERE region = '{{ region }}' -- required +AND filter[query] = '{{ filter[query] }}' +AND filter[from] = '{{ filter[from] }}' +AND filter[to] = '{{ filter[to] }}' +AND sort = '{{ sort }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` +
+
+ + +## Lifecycle Methods + + + + +The API endpoint to aggregate RUM events into buckets of computed metrics and timeseries. + +```sql +EXEC datadog.digital_experience.rum_events.aggregate_rumevents +@region='{{ region }}' --required +@@json= +'{ +"compute": "{{ compute }}", +"filter": "{{ filter }}", +"group_by": "{{ group_by }}", +"options": "{{ options }}", +"page": "{{ page }}" +}' +; +``` + + + +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 + +```sql +EXEC datadog.digital_experience.rum_events.search_rumevents +@region='{{ region }}' --required +@@json= +'{ +"filter": "{{ filter }}", +"options": "{{ options }}", +"page": "{{ page }}", +"sort": "{{ sort }}" +}' +; +``` +
+
diff --git a/website/docs/services/digital_experience/rum_metrics/index.md b/website/docs/services/digital_experience/rum_metrics/index.md new file mode 100644 index 0000000..3ccdd99 --- /dev/null +++ b/website/docs/services/digital_experience/rum_metrics/index.md @@ -0,0 +1,311 @@ +--- +title: rum_metrics +hide_title: false +hide_table_of_contents: false +keywords: + - rum_metrics + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_metrics resource. + +## Overview + + + + +
Namerum_metrics
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the rum-based metric. (example: rum.sessions.webui.count)
objectThe object describing a Datadog rum-based metric.
stringThe type of the resource. The value should always be rum_metrics. (default: rum_metrics, example: rum_metrics)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the rum-based metric. (example: rum.sessions.webui.count)
objectThe object describing a Datadog rum-based metric.
stringThe type of the resource. The value should always be rum_metrics. (default: rum_metrics, example: rum_metrics)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_id, regionGet a specific rum-based metric from your organization.
regionGet the list of configured rum-based metrics with their definitions.
region, data__dataCreate a metric based on your organization's RUM data.
Returns the rum-based metric object from the request body when the request is successful.
metric_id, region, data__dataUpdate a specific rum-based metric from your organization.
Returns the rum-based metric object from the request body when the request is successful.
metric_id, regionDelete a specific rum-based metric 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 name of the rum-based metric.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get a specific rum-based metric from your organization. + +```sql +SELECT +id, +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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_metrics +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.digital_experience.rum_metrics ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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. +``` + +
+ + +## `UPDATE` examples + + + + +Update a specific rum-based metric from your organization.
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 }}' +WHERE +metric_id = '{{ metric_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +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_retention_filters/index.md b/website/docs/services/digital_experience/rum_retention_filters/index.md new file mode 100644 index 0000000..d818032 --- /dev/null +++ b/website/docs/services/digital_experience/rum_retention_filters/index.md @@ -0,0 +1,358 @@ +--- +title: rum_retention_filters +hide_title: false +hide_table_of_contents: false +keywords: + - rum_retention_filters + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_retention_filters resource. + +## Overview + + + + +
Namerum_retention_filters
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of retention filter in UUID. (example: 051601eb-54a0-abc0-03f9-cc02efa18892)
objectThe object describing attributes of a RUM retention filter.
stringThe type of the resource. The value should always be retention_filters. (default: retention_filters, example: retention_filters)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of retention filter in UUID. (example: 051601eb-54a0-abc0-03f9-cc02efa18892)
objectThe object describing attributes of a RUM retention filter.
stringThe type of the resource. The value should always be retention_filters. (default: retention_filters, example: retention_filters)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_id, rf_id, regionGet a RUM retention filter for a RUM application.
app_id, regionGet the list of RUM retention filters for a RUM application.
app_id, region, data__dataCreate a RUM retention filter for a RUM application.
Returns RUM retention filter objects from the request body when the request is successful.
app_id, rf_id, region, data__dataUpdate a RUM retention filter for a RUM application.
Returns RUM retention filter objects from the request body when the request is successful.
app_id, rf_id, regionDelete a RUM retention filter for a RUM application.
app_id, regionOrder RUM retention filters for a RUM application.
Returns RUM retention filter objects without attributes 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
stringRUM application ID.
string(default: datadoghq.com)
stringRetention filter ID.
+ +## `SELECT` examples + + + + +Get a RUM retention filter for a RUM application. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_retention_filters +WHERE app_id = '{{ app_id }}' -- required +AND rf_id = '{{ rf_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get the list of RUM retention filters for a RUM application. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_retention_filters +WHERE app_id = '{{ app_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a RUM retention filter for a RUM application.
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 +) +SELECT +'{{ data }}' /* required */, +'{{ app_id }}', +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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 + description: Required parameter for the rum_retention_filters resource. + - name: data + value: object + description: | + The new RUM retention filter properties to create. +``` + +
+ + +## `UPDATE` examples + + + + +Update a RUM retention filter for a RUM application.
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 }}' +WHERE +app_id = '{{ app_id }}' --required +AND rf_id = '{{ rf_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +Delete a RUM retention filter for a RUM application. + +```sql +DELETE FROM datadog.digital_experience.rum_retention_filters +WHERE app_id = '{{ app_id }}' --required +AND rf_id = '{{ rf_id }}' --required +AND region = '{{ region }}' --required +; +``` + + + + +## Lifecycle Methods + + + + +Order RUM retention filters for a RUM application.
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/infrastructure/aggregated_connections/index.md b/website/docs/services/infrastructure/aggregated_connections/index.md new file mode 100644 index 0000000..dea30f5 --- /dev/null +++ b/website/docs/services/infrastructure/aggregated_connections/index.md @@ -0,0 +1,169 @@ +--- +title: aggregated_connections +hide_title: false +hide_table_of_contents: false +keywords: + - aggregated_connections + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aggregated_connections resource. + +## Overview + + + + +
Nameaggregated_connections
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA unique identifier for the aggregated connection based on the group by values.
objectAttributes for an aggregated connection.
stringAggregated connection resource type. (default: aggregated_connection)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionfrom, to, group_by, tags, limitGet all aggregated 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
string(default: datadoghq.com)
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]`.
stringComma-separated list of fields to group connections by. The maximum number of group_by(s) is 10.
integer (int32)The number of connections to be returned. The maximum value is 7500. The default is 100.
stringComma-separated list of tags to filter connections by.
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]`.
+ +## `SELECT` examples + + + + +Get all aggregated connections. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.aggregated_connections +WHERE region = '{{ region }}' -- required +AND from = '{{ from }}' +AND to = '{{ to }}' +AND group_by = '{{ group_by }}' +AND tags = '{{ tags }}' +AND limit = '{{ limit }}' +; +``` + + diff --git a/website/docs/services/infrastructure/aggregated_dns/index.md b/website/docs/services/infrastructure/aggregated_dns/index.md new file mode 100644 index 0000000..728c1cd --- /dev/null +++ b/website/docs/services/infrastructure/aggregated_dns/index.md @@ -0,0 +1,169 @@ +--- +title: aggregated_dns +hide_title: false +hide_table_of_contents: false +keywords: + - aggregated_dns + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aggregated_dns resource. + +## Overview + + + + +
Nameaggregated_dns
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA unique identifier for the aggregated DNS traffic based on the group by values.
objectAttributes for an aggregated DNS flow.
stringAggregated DNS resource type. (default: aggregated_dns)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionfrom, to, group_by, tags, limitGet all aggregated DNS traffic.
+ +## Parameters + +Parameters can be passed 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)
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]`.
stringComma-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.
integer (int32)The number of aggregated DNS entries to be returned. The maximum value is 7500. The default is 100.
stringComma-separated list of tags to filter DNS traffic by.
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]`.
+ +## `SELECT` examples + + + + +Get all aggregated DNS traffic. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.aggregated_dns +WHERE region = '{{ region }}' -- required +AND from = '{{ from }}' +AND to = '{{ to }}' +AND group_by = '{{ group_by }}' +AND tags = '{{ tags }}' +AND limit = '{{ limit }}' +; +``` + + diff --git a/website/docs/services/infrastructure/apps/index.md b/website/docs/services/infrastructure/apps/index.md new file mode 100644 index 0000000..47aeb53 --- /dev/null +++ b/website/docs/services/infrastructure/apps/index.md @@ -0,0 +1,463 @@ +--- +title: apps +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an apps resource. + +## Overview + + + + +
Nameapps
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the app. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
objectThe app definition attributes, such as name, description, and components.
stringThe app definition type. (default: appDefinitions, example: appDefinitions)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the app. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
objectBasic information about the app such as name, description, and tags.
objectMetadata of an app.
objectThe app's publication information.
stringThe app definition type. (default: appDefinitions, example: appDefinitions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_id, regionversionGet 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).
regionlimit, page, filter[user_name], filter[user_uuid], filter[name], filter[query], filter[deployed], filter[tags], filter[favorite], filter[self_service], sortList 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).
regionCreate 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, regionUpdate 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, regionDelete 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).
regionDelete 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, regionUnpublish 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, regionPublish 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).
+ +## Parameters + +Parameters can be passed 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 to publish. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
string(default: datadoghq.com)
booleanFilter apps by whether they are published.
booleanFilter apps by whether you have added them to your favorites.
stringFilter by app name.
stringFilter apps by the app name or the app creator.
booleanFilter apps by whether they are enabled for self-service.
stringFilter apps by tags.
stringFilter apps by the app creator. Usually the user's email.
string (uuid)Filter apps by the app creator's UUID. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
integer (int64)The number of apps to return per page.
integer (int64)The page number to return.
arrayThe fields and direction to sort apps by.
stringThe 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.
+ +## `SELECT` examples + + + + +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). + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.apps +WHERE app_id = '{{ app_id }}' -- required +AND region = '{{ region }}' -- required +AND version = '{{ version }}' +; +``` + + + +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). + +```sql +SELECT +id, +attributes, +meta, +relationships, +type +FROM datadog.infrastructure.apps +WHERE region = '{{ region }}' -- required +AND limit = '{{ limit }}' +AND page = '{{ page }}' +AND filter[user_name] = '{{ filter[user_name] }}' +AND filter[user_uuid] = '{{ filter[user_uuid] }}' +AND filter[name] = '{{ filter[name] }}' +AND filter[query] = '{{ filter[query] }}' +AND filter[deployed] = '{{ filter[deployed] }}' +AND filter[tags] = '{{ filter[tags] }}' +AND filter[favorite] = '{{ filter[favorite] }}' +AND filter[self_service] = '{{ filter[self_service] }}' +AND sort = '{{ sort }}' +; +``` + + + + +## `INSERT` examples + + + + +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). + +```sql +INSERT INTO datadog.infrastructure.apps ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +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). + +```sql +UPDATE datadog.infrastructure.apps +SET +data__data = '{{ data }}' +WHERE +app_id = '{{ app_id }}' --required +AND region = '{{ region }}' --required +RETURNING +data, +included, +meta, +relationship; +``` + + + + +## `DELETE` examples + + + + +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). + +```sql +DELETE FROM datadog.infrastructure.apps +WHERE app_id = '{{ app_id }}' --required +AND region = '{{ region }}' --required +; +``` + + + +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). + +```sql +DELETE FROM datadog.infrastructure.apps +WHERE region = '{{ region }}' --required +; +``` + + + + +## Lifecycle Methods + + + + +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). + +```sql +EXEC datadog.infrastructure.apps.unpublish_app +@app_id='{{ app_id }}' --required, +@region='{{ region }}' --required +; +``` + + + +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). + +```sql +EXEC datadog.infrastructure.apps.publish_app +@app_id='{{ app_id }}' --required, +@region='{{ region }}' --required +; +``` + + diff --git a/website/docs/services/infrastructure/container_images/index.md b/website/docs/services/infrastructure/container_images/index.md new file mode 100644 index 0000000..eeffff0 --- /dev/null +++ b/website/docs/services/infrastructure/container_images/index.md @@ -0,0 +1,152 @@ +--- +title: container_images +hide_title: false +hide_table_of_contents: false +keywords: + - container_images + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a container_images resource. + +## Overview + + + + +
Namecontainer_images
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + +
NameDatatypeDescription
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionfilter[tags], group_by, sort, page[size], page[cursor]Get all Container Images 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
string(default: datadoghq.com)
stringComma-separated list of tags to filter Container Images by. (example: short_image:redis,status:running)
stringComma-separated list of tags to group Container Images by. (example: registry,image_tags)
stringString to query the next page of results. This key is provided with each valid response from the API in `meta.pagination.next_cursor`.
integer (int32)Maximum number of results returned.
stringAttribute to sort Container Images by. (example: container_count)
+ +## `SELECT` examples + + + + +Get all Container Images for your organization. + +```sql +SELECT +* +FROM datadog.infrastructure.container_images +WHERE region = '{{ region }}' -- required +AND filter[tags] = '{{ filter[tags] }}' +AND group_by = '{{ group_by }}' +AND sort = '{{ sort }}' +AND page[size] = '{{ page[size] }}' +AND page[cursor] = '{{ page[cursor] }}' +; +``` + + diff --git a/website/docs/services/infrastructure/containers/index.md b/website/docs/services/infrastructure/containers/index.md new file mode 100644 index 0000000..a46a618 --- /dev/null +++ b/website/docs/services/infrastructure/containers/index.md @@ -0,0 +1,152 @@ +--- +title: containers +hide_title: false +hide_table_of_contents: false +keywords: + - containers + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a containers resource. + +## Overview + + + + +
Namecontainers
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + +
NameDatatypeDescription
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionfilter[tags], group_by, sort, page[size], page[cursor]Get all containers 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
string(default: datadoghq.com)
stringComma-separated list of tags to filter containers by. (example: env:prod,short_image:cassandra)
stringComma-separated list of tags to group containers by. (example: datacenter,cluster)
stringString to query the next page of results. This key is provided with each valid response from the API in `meta.pagination.next_cursor`.
integer (int32)Maximum number of results returned.
stringAttribute to sort containers by. (example: started_at)
+ +## `SELECT` examples + + + + +Get all containers for your organization. + +```sql +SELECT +* +FROM datadog.infrastructure.containers +WHERE region = '{{ region }}' -- required +AND filter[tags] = '{{ filter[tags] }}' +AND group_by = '{{ group_by }}' +AND sort = '{{ sort }}' +AND page[size] = '{{ page[size] }}' +AND page[cursor] = '{{ page[cursor] }}' +; +``` + + diff --git a/website/docs/services/infrastructure/device_interfaces/index.md b/website/docs/services/infrastructure/device_interfaces/index.md new file mode 100644 index 0000000..d52368a --- /dev/null +++ b/website/docs/services/infrastructure/device_interfaces/index.md @@ -0,0 +1,151 @@ +--- +title: device_interfaces +hide_title: false +hide_table_of_contents: false +keywords: + - device_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a device_interfaces resource. + +## Overview + + + + +
Namedevice_interfaces
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe interface ID (example: example:1.2.3.4:99)
objectThe interface attributes
stringThe type of the resource. The value should always be interface.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
device_id, regionget_ip_addressesGet the list of interfaces of the device.
+ +## Parameters + +Parameters can be passed in 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 device to get interfaces from. (example: example:1.2.3.4)
string(default: datadoghq.com)
booleanWhether to get the IP addresses of the interfaces. (example: true)
+ +## `SELECT` examples + + + + +Get the list of interfaces of the device. + +```sql +SELECT +id, +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 new file mode 100644 index 0000000..234f24c --- /dev/null +++ b/website/docs/services/infrastructure/device_user_tags/index.md @@ -0,0 +1,178 @@ +--- +title: device_user_tags +hide_title: false +hide_table_of_contents: false +keywords: + - device_user_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a device_user_tags resource. + +## Overview + + + + +
Namedevice_user_tags
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe device ID (example: example:1.2.3.4)
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
device_id, regionGet the list of tags for a device.
device_id, regionUpdate the tags for a device.
+ +## Parameters + +Parameters can be passed in 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 device to update tags for. (example: example:1.2.3.4)
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get the list of tags for a device. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.device_user_tags +WHERE device_id = '{{ device_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `UPDATE` examples + + + + +Update the tags for a device. + +```sql +UPDATE datadog.infrastructure.device_user_tags +SET +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 new file mode 100644 index 0000000..3080d3a --- /dev/null +++ b/website/docs/services/infrastructure/devices/index.md @@ -0,0 +1,221 @@ +--- +title: devices +hide_title: false +hide_table_of_contents: false +keywords: + - devices + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a devices resource. + +## Overview + + + + +
Namedevices
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe device ID (example: example:1.2.3.4)
objectThe device attributes
stringThe type of the resource. The value should always be device.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe device ID (example: example:1.2.3.4)
objectThe device attributes
stringThe type of the resource. The value should always be device.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
device_id, regionGet the device details.
regionpage[size], page[number], sort, filter[tag]Get the list of devices.
+ +## Parameters + +Parameters can be passed in 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 device to fetch. (example: example:1.2.3.4)
string(default: datadoghq.com)
stringFilter devices by tag. (example: status:ok)
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringThe field to sort the devices by. (example: status)
+ +## `SELECT` examples + + + + +Get the device details. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.devices +WHERE device_id = '{{ device_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get the list of devices. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.devices +WHERE region = '{{ region }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND sort = '{{ sort }}' +AND filter[tag] = '{{ filter[tag] }}' +; +``` + + diff --git a/website/docs/services/infrastructure/index.md b/website/docs/services/infrastructure/index.md new file mode 100644 index 0000000..e185b84 --- /dev/null +++ b/website/docs/services/infrastructure/index.md @@ -0,0 +1,41 @@ +--- +title: infrastructure +hide_title: false +hide_table_of_contents: false +keywords: + - infrastructure + - 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 +--- + +infrastructure service documentation. + +:::info[Service Summary] + +total resources: __10__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/infrastructure/processes/index.md b/website/docs/services/infrastructure/processes/index.md new file mode 100644 index 0000000..ca0895b --- /dev/null +++ b/website/docs/services/infrastructure/processes/index.md @@ -0,0 +1,175 @@ +--- +title: processes +hide_title: false +hide_table_of_contents: false +keywords: + - processes + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a processes resource. + +## Overview + + + + +
Nameprocesses
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringProcess ID.
objectAttributes for a process summary.
stringType of process summary. (default: process, example: process)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionsearch, tags, from, to, page[limit], page[cursor]Get all processes 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
string(default: datadoghq.com)
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]`.
stringString to query the next page of results. This key is provided with each valid response from the API in `meta.page.after`.
integer (int32)Maximum number of results returned.
stringComma-separated list of tags to filter processes by. (example: account:prod,user:admin)
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]`.
+ +## `SELECT` examples + + + + +Get all processes for your organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.processes +WHERE region = '{{ region }}' -- required +AND search = '{{ search }}' +AND tags = '{{ tags }}' +AND from = '{{ from }}' +AND to = '{{ to }}' +AND page[limit] = '{{ page[limit] }}' +AND page[cursor] = '{{ page[cursor] }}' +; +``` + + diff --git a/website/docs/services/infrastructure/spa_recommendations/index.md b/website/docs/services/infrastructure/spa_recommendations/index.md new file mode 100644 index 0000000..67f747b --- /dev/null +++ b/website/docs/services/infrastructure/spa_recommendations/index.md @@ -0,0 +1,151 @@ +--- +title: spa_recommendations +hide_title: false +hide_table_of_contents: false +keywords: + - spa_recommendations + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a spa_recommendations resource. + +## Overview + + + + +
Namespa_recommendations
TypeResource
Id
+ +## Fields + +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. (default: recommendation, example: recommendation)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
shard, service, regionRetrieve 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.
+ +## Parameters + +Parameters can be passed 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 service name for a spark job
stringThe shard tag for a spark job, which differentiates jobs within the same service that have different resource needs
+ +## `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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.spa_recommendations +WHERE shard = '{{ shard }}' -- required +AND service = '{{ service }}' -- required +AND region = '{{ region }}' -- required +; +``` + + diff --git a/website/docs/services/integrations/aws_accounts/index.md b/website/docs/services/integrations/aws_accounts/index.md new file mode 100644 index 0000000..b141eea --- /dev/null +++ b/website/docs/services/integrations/aws_accounts/index.md @@ -0,0 +1,349 @@ +--- +title: aws_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - aws_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_accounts resource. + +## Overview + + + + +
Nameaws_accounts
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +AWS Account 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 Account response attributes.
stringAWS Account resource type. (default: account, example: account)
+
+ + +AWS Accounts List 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 Account response attributes.
stringAWS Account resource type. (default: account, example: account)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
aws_account_config_id, regionGet an AWS Account Integration Config by config ID.
regionaws_account_idGet a list of AWS Account Integration Configs.
region, data__dataCreate a new AWS Account Integration Config.
aws_account_config_id, region, data__dataUpdate an AWS Account Integration Config by config ID.
aws_account_config_id, regionDelete an AWS Account Integration Config by config ID.
regionGenerate a new external ID for AWS role-based authentication.
+ +## Parameters + +Parameters can be passed 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.
string(default: datadoghq.com)
stringOptional query parameter to filter accounts by AWS Account ID. If not provided, all accounts are returned. (example: 123456789012)
+ +## `SELECT` examples + + + + +Get an AWS Account Integration Config by config ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.aws_accounts +WHERE aws_account_config_id = '{{ aws_account_config_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get a list of AWS Account Integration Configs. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.aws_accounts +WHERE region = '{{ region }}' -- required +AND aws_account_id = '{{ aws_account_id }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new AWS Account Integration Config. + +```sql +INSERT INTO datadog.integrations.aws_accounts ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update an AWS Account Integration Config by config ID. + +```sql +UPDATE datadog.integrations.aws_accounts +SET +data__data = '{{ data }}' +WHERE +aws_account_config_id = '{{ aws_account_config_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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 +; +``` + + + + +## Lifecycle Methods + + + + +Generate a new external ID for AWS role-based authentication. + +```sql +EXEC datadog.integrations.aws_accounts.create_new_awsexternal_id +@region='{{ region }}' --required +; +``` + + diff --git a/website/docs/services/integrations/aws_iam_permissions/index.md b/website/docs/services/integrations/aws_iam_permissions/index.md new file mode 100644 index 0000000..fb4ece0 --- /dev/null +++ b/website/docs/services/integrations/aws_iam_permissions/index.md @@ -0,0 +1,141 @@ +--- +title: aws_iam_permissions +hide_title: false +hide_table_of_contents: false +keywords: + - aws_iam_permissions + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_iam_permissions resource. + +## Overview + + + + +
Nameaws_iam_permissions
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +AWS IAM Permissions object + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `AWSIntegrationIamPermissionsResponseData` `id`. (default: permissions, example: permissions)
objectAWS Integration IAM Permissions response attributes.
stringThe `AWSIntegrationIamPermissionsResponseData` `type`. (default: permissions, example: permissions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionGet all 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
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get all AWS IAM permissions required for the AWS integration. + +```sql +SELECT +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 new file mode 100644 index 0000000..d0761be --- /dev/null +++ b/website/docs/services/integrations/aws_logs_services/index.md @@ -0,0 +1,141 @@ +--- +title: aws_logs_services +hide_title: false +hide_table_of_contents: false +keywords: + - aws_logs_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_logs_services resource. + +## Overview + + + + +
Nameaws_logs_services
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +AWS Logs Services List object + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `AWSLogsServicesResponseData` `id`. (default: logs_services, example: logs_services)
objectAWS Logs Services response body
stringThe `AWSLogsServicesResponseData` `type`. (default: logs_services, example: logs_services)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionGet a list of AWS services that can send logs to Datadog.
+ +## Parameters + +Parameters can be passed 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)
+ +## `SELECT` examples + + + + +Get a list of AWS services that can send logs to Datadog. + +```sql +SELECT +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 new file mode 100644 index 0000000..53ed5aa --- /dev/null +++ b/website/docs/services/integrations/aws_namespaces/index.md @@ -0,0 +1,141 @@ +--- +title: aws_namespaces +hide_title: false +hide_table_of_contents: false +keywords: + - aws_namespaces + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_namespaces resource. + +## Overview + + + + +
Nameaws_namespaces
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +AWS Namespaces List object + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `AWSNamespacesResponseData` `id`. (default: namespaces, example: namespaces)
objectAWS Namespaces response attributes.
stringThe `AWSNamespacesResponseData` `type`. (default: namespaces, example: namespaces)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionGet a list of available AWS CloudWatch namespaces that can send metrics to Datadog.
+ +## Parameters + +Parameters can be passed 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)
+ +## `SELECT` examples + + + + +Get a list of available AWS CloudWatch namespaces that can send metrics to Datadog. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.aws_namespaces +WHERE region = '{{ region }}' -- required +; +``` + + diff --git a/website/docs/services/integrations/cloudflare_accounts/index.md b/website/docs/services/integrations/cloudflare_accounts/index.md new file mode 100644 index 0000000..17d7d64 --- /dev/null +++ b/website/docs/services/integrations/cloudflare_accounts/index.md @@ -0,0 +1,311 @@ +--- +title: cloudflare_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - cloudflare_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a cloudflare_accounts resource. + +## Overview + + + + +
Namecloudflare_accounts
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Cloudflare account, a hash of the account name. (example: c1a8e059bfd1e911cf10b626340c9a54)
objectAttributes object of a Cloudflare account.
stringThe JSON:API type for this API. Should always be `cloudflare-accounts`. (default: cloudflare-accounts, example: cloudflare-accounts)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Cloudflare account, a hash of the account name. (example: c1a8e059bfd1e911cf10b626340c9a54)
objectAttributes object of a Cloudflare account.
stringThe JSON:API type for this API. Should always be `cloudflare-accounts`. (default: cloudflare-accounts, example: cloudflare-accounts)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
account_id, regionGet a Cloudflare account.
regionList Cloudflare accounts.
region, data__dataCreate a Cloudflare account.
account_id, region, data__dataUpdate a Cloudflare account.
account_id, regionDelete a Cloudflare 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
stringNone
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get a Cloudflare account. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.cloudflare_accounts +WHERE account_id = '{{ account_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List Cloudflare accounts. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.cloudflare_accounts +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a Cloudflare account. + +```sql +INSERT INTO datadog.integrations.cloudflare_accounts ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update a Cloudflare account. + +```sql +UPDATE datadog.integrations.cloudflare_accounts +SET +data__data = '{{ data }}' +WHERE +account_id = '{{ account_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..932b2e4 --- /dev/null +++ b/website/docs/services/integrations/confluent_accounts/index.md @@ -0,0 +1,311 @@ +--- +title: confluent_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - confluent_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a confluent_accounts resource. + +## Overview + + + + +
Nameconfluent_accounts
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA randomly generated ID associated with a Confluent account. (example: account_id_abc123)
objectThe attributes of a Confluent account.
stringThe JSON:API type for this API. Should always be `confluent-cloud-accounts`. (default: confluent-cloud-accounts, example: confluent-cloud-accounts)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA randomly generated ID associated with a Confluent account. (example: account_id_abc123)
objectThe attributes of a Confluent account.
stringThe JSON:API type for this API. Should always be `confluent-cloud-accounts`. (default: confluent-cloud-accounts, example: confluent-cloud-accounts)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
account_id, regionGet the Confluent account with the provided account ID.
regionList Confluent accounts.
region, data__dataCreate a Confluent account.
account_id, region, data__dataUpdate the Confluent account with the provided account ID.
account_id, regionDelete a Confluent account with the provided account 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
stringConfluent Account ID.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get the Confluent account with the provided account ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.confluent_accounts +WHERE account_id = '{{ account_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List Confluent accounts. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.confluent_accounts +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a Confluent account. + +```sql +INSERT INTO datadog.integrations.confluent_accounts ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update the Confluent account with the provided account ID. + +```sql +UPDATE datadog.integrations.confluent_accounts +SET +data__data = '{{ data }}' +WHERE +account_id = '{{ account_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..f1b885a --- /dev/null +++ b/website/docs/services/integrations/confluent_resources/index.md @@ -0,0 +1,325 @@ +--- +title: confluent_resources +hide_title: false +hide_table_of_contents: false +keywords: + - confluent_resources + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a confluent_resources resource. + +## Overview + + + + +
Nameconfluent_resources
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID associated with the Confluent resource. (example: resource_id_abc123)
objectModel representation of a Confluent Cloud resource.
stringThe JSON:API type for this request. (default: confluent-cloud-resources, example: confluent-cloud-resources)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID associated with the Confluent resource. (example: resource_id_abc123)
objectModel representation of a Confluent Cloud resource.
stringThe JSON:API type for this request. (default: confluent-cloud-resources, example: confluent-cloud-resources)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
account_id, resource_id, regionGet a Confluent resource with the provided resource id for the account associated with the provided account ID.
account_id, regionGet a Confluent resource for the account associated with the provided ID.
account_id, region, data__dataCreate a Confluent resource for the account associated with the provided ID.
account_id, resource_id, region, data__dataUpdate a Confluent resource with the provided resource id for the account associated with the provided account ID.
account_id, resource_id, regionDelete a Confluent resource with the provided resource id for the account associated with the provided account 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
stringConfluent Account ID.
string(default: datadoghq.com)
stringConfluent Account Resource ID.
+ +## `SELECT` examples + + + + +Get a Confluent resource with the provided resource id for the account associated with the provided account ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.confluent_resources +WHERE account_id = '{{ account_id }}' -- required +AND resource_id = '{{ resource_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get a Confluent resource for the account associated with the provided ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.confluent_resources +WHERE account_id = '{{ account_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a Confluent resource for the account associated with the provided ID. + +```sql +INSERT INTO datadog.integrations.confluent_resources ( +data__data, +account_id, +region +) +SELECT +'{{ data }}' /* required */, +'{{ account_id }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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 + description: Required parameter for the confluent_resources resource. + - name: data + value: object + description: | + JSON:API request for updating a Confluent resource. +``` + + + + +## `UPDATE` examples + + + + +Update a Confluent resource with the provided resource id for the account associated with the provided account ID. + +```sql +UPDATE datadog.integrations.confluent_resources +SET +data__data = '{{ data }}' +WHERE +account_id = '{{ account_id }}' --required +AND resource_id = '{{ resource_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a Confluent resource with the provided resource id for the account associated with the provided account ID. + +```sql +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/fastly_accounts/index.md b/website/docs/services/integrations/fastly_accounts/index.md new file mode 100644 index 0000000..e8f8ca9 --- /dev/null +++ b/website/docs/services/integrations/fastly_accounts/index.md @@ -0,0 +1,311 @@ +--- +title: fastly_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - fastly_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a fastly_accounts resource. + +## Overview + + + + +
Namefastly_accounts
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Fastly account, a hash of the account name. (example: abc123)
objectAttributes object of a Fastly account.
stringThe JSON:API type for this API. Should always be `fastly-accounts`. (default: fastly-accounts, example: fastly-accounts)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Fastly account, a hash of the account name. (example: abc123)
objectAttributes object of a Fastly account.
stringThe JSON:API type for this API. Should always be `fastly-accounts`. (default: fastly-accounts, example: fastly-accounts)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
account_id, regionGet a Fastly account.
regionList Fastly accounts.
region, data__dataCreate a Fastly account.
account_id, region, data__dataUpdate a Fastly account.
account_id, regionDelete a Fastly 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
stringFastly Account id.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get a Fastly account. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.fastly_accounts +WHERE account_id = '{{ account_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List Fastly accounts. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.fastly_accounts +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a Fastly account. + +```sql +INSERT INTO datadog.integrations.fastly_accounts ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update a Fastly account. + +```sql +UPDATE datadog.integrations.fastly_accounts +SET +data__data = '{{ data }}' +WHERE +account_id = '{{ account_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..a9ab03f --- /dev/null +++ b/website/docs/services/integrations/fastly_services/index.md @@ -0,0 +1,325 @@ +--- +title: fastly_services +hide_title: false +hide_table_of_contents: false +keywords: + - fastly_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a fastly_services resource. + +## Overview + + + + +
Namefastly_services
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Fastly service. (example: abc123)
objectAttributes object for Fastly service requests.
stringThe JSON:API type for this API. Should always be `fastly-services`. (default: fastly-services, example: fastly-services)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Fastly service. (example: abc123)
objectAttributes object for Fastly service requests.
stringThe JSON:API type for this API. Should always be `fastly-services`. (default: fastly-services, example: fastly-services)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
account_id, service_id, regionGet a Fastly service for an account.
account_id, regionList Fastly services for an account.
account_id, region, data__dataCreate a Fastly service for an account.
account_id, service_id, region, data__dataUpdate a Fastly service for an account.
account_id, service_id, regionDelete a Fastly service for an 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
stringFastly Account id.
string(default: datadoghq.com)
stringFastly Service ID.
+ +## `SELECT` examples + + + + +Get a Fastly service for an account. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.fastly_services +WHERE account_id = '{{ account_id }}' -- required +AND service_id = '{{ service_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List Fastly services for an account. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.fastly_services +WHERE account_id = '{{ account_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a Fastly service for an account. + +```sql +INSERT INTO datadog.integrations.fastly_services ( +data__data, +account_id, +region +) +SELECT +'{{ data }}' /* required */, +'{{ account_id }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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 + description: Required parameter for the fastly_services resource. + - name: data + value: object + description: | + Data object for Fastly service requests. +``` + + + + +## `UPDATE` examples + + + + +Update a Fastly service for an account. + +```sql +UPDATE datadog.integrations.fastly_services +SET +data__data = '{{ data }}' +WHERE +account_id = '{{ account_id }}' --required +AND service_id = '{{ service_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a Fastly service for an account. + +```sql +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 new file mode 100644 index 0000000..5766c4c --- /dev/null +++ b/website/docs/services/integrations/gcp_accounts/index.md @@ -0,0 +1,263 @@ +--- +title: gcp_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - gcp_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a gcp_accounts resource. + +## Overview + + + + +
Namegcp_accounts
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringYour service account's unique ID. (example: d291291f-12c2-22g4-j290-123456678897)
objectAttributes associated with your service account.
objectAdditional information related to your service account.
stringThe type of account. (default: gcp_service_account, example: gcp_service_account)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionList all GCP STS-enabled service accounts configured in your Datadog account.
regionCreate a new entry within Datadog for your STS enabled service account.
account_id, regionUpdate an STS enabled service account.
account_id, regionDelete an STS enabled GCP account from within Datadog.
+ +## Parameters + +Parameters can be passed 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 GCP STS enabled service account's unique ID.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +List all GCP STS-enabled service accounts configured in your Datadog account. + +```sql +SELECT +id, +attributes, +meta, +type +FROM datadog.integrations.gcp_accounts +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new entry within Datadog for your STS enabled service account. + +```sql +INSERT INTO datadog.integrations.gcp_accounts ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update an STS enabled service account. + +```sql +UPDATE datadog.integrations.gcp_accounts +SET +data__data = '{{ data }}' +WHERE +account_id = '{{ account_id }}' --required +AND region = '{{ region }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..96c7368 --- /dev/null +++ b/website/docs/services/integrations/gcp_sts_delegate/index.md @@ -0,0 +1,167 @@ +--- +title: gcp_sts_delegate +hide_title: false +hide_table_of_contents: false +keywords: + - gcp_sts_delegate + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a gcp_sts_delegate resource. + +## Overview + + + + +
Namegcp_sts_delegate
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the delegate service account. (example: ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com)
objectYour delegate account attributes.
stringThe type of account. (default: gcp_sts_delegate, example: gcp_sts_delegate)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionList your Datadog-GCP STS delegate account configured in your Datadog account.
regionCreate a Datadog GCP principal.
+ +## Parameters + +Parameters can be passed 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)
+ +## `SELECT` examples + + + + +List your Datadog-GCP STS delegate account configured in your Datadog account. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.gcp_sts_delegate +WHERE region = '{{ region }}' -- required +; +``` + + + + +## Lifecycle Methods + + + + +Create a Datadog GCP principal. + +```sql +EXEC datadog.integrations.gcp_sts_delegate.make_gcpstsdelegate +@region='{{ region }}' --required +; +``` + + diff --git a/website/docs/services/integrations/index.md b/website/docs/services/integrations/index.md new file mode 100644 index 0000000..1cf58c9 --- /dev/null +++ b/website/docs/services/integrations/index.md @@ -0,0 +1,47 @@ +--- +title: integrations +hide_title: false +hide_table_of_contents: false +keywords: + - integrations + - 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 +--- + +integrations service documentation. + +:::info[Service Summary] + +total resources: __16__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/integrations/ms_teams_channels/index.md b/website/docs/services/integrations/ms_teams_channels/index.md new file mode 100644 index 0000000..3e0a058 --- /dev/null +++ b/website/docs/services/integrations/ms_teams_channels/index.md @@ -0,0 +1,157 @@ +--- +title: ms_teams_channels +hide_title: false +hide_table_of_contents: false +keywords: + - ms_teams_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a ms_teams_channels resource. + +## Overview + + + + +
Namems_teams_channels
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the channel. (example: 19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2)
objectChannel attributes.
stringChannel info resource type. (default: ms-teams-channel-info, example: ms-teams-channel-info)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
tenant_name, team_name, channel_name, regionGet the tenant, team, and channel ID of a channel in 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
stringYour channel name.
string(default: datadoghq.com)
stringYour team name.
stringYour tenant name.
+ +## `SELECT` examples + + + + +Get the tenant, team, and channel ID of a channel in the Datadog Microsoft Teams integration. + +```sql +SELECT +id, +attributes, +type +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 new file mode 100644 index 0000000..5d11397 --- /dev/null +++ b/website/docs/services/integrations/ms_teams_tenant_based_handles/index.md @@ -0,0 +1,323 @@ +--- +title: ms_teams_tenant_based_handles +hide_title: false +hide_table_of_contents: false +keywords: + - ms_teams_tenant_based_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a ms_teams_tenant_based_handles resource. + +## Overview + + + + +
Namems_teams_tenant_based_handles
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the tenant-based handle. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectTenant-based handle attributes.
stringSpecifies the tenant-based handle resource type. (default: tenant-based-handle, example: tenant-based-handle)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the tenant-based handle. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectTenant-based handle attributes.
stringTenant-based handle resource type. (default: ms-teams-tenant-based-handle-info, example: ms-teams-tenant-based-handle-info)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
handle_id, regionGet the tenant, team, and channel information of a tenant-based handle from the Datadog Microsoft Teams integration.
regiontenant_id, nameGet a list of all tenant-based handles from the Datadog Microsoft Teams integration.
region, data__dataCreate a tenant-based handle in the Datadog Microsoft Teams integration.
handle_id, region, data__dataUpdate a tenant-based handle from the Datadog Microsoft Teams integration.
handle_id, regionDelete a tenant-based handle 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
stringYour tenant-based handle id.
string(default: datadoghq.com)
stringYour tenant-based handle name.
stringYour tenant id.
+ +## `SELECT` examples + + + + +Get the tenant, team, and channel information of a tenant-based handle from the Datadog Microsoft Teams integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.ms_teams_tenant_based_handles +WHERE handle_id = '{{ handle_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get a list of all tenant-based handles from the Datadog Microsoft Teams integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.ms_teams_tenant_based_handles +WHERE region = '{{ region }}' -- required +AND tenant_id = '{{ tenant_id }}' +AND name = '{{ name }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a tenant-based handle in the Datadog Microsoft Teams integration. + +```sql +INSERT INTO datadog.integrations.ms_teams_tenant_based_handles ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update a tenant-based handle from the Datadog Microsoft Teams integration. + +```sql +UPDATE datadog.integrations.ms_teams_tenant_based_handles +SET +data__data = '{{ data }}' +WHERE +handle_id = '{{ handle_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..e12607f --- /dev/null +++ b/website/docs/services/integrations/ms_teams_workflows_webhook_handles/index.md @@ -0,0 +1,317 @@ +--- +title: ms_teams_workflows_webhook_handles +hide_title: false +hide_table_of_contents: false +keywords: + - ms_teams_workflows_webhook_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a ms_teams_workflows_webhook_handles resource. + +## Overview + + + + +
Namems_teams_workflows_webhook_handles
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Workflows webhook handle. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectWorkflows Webhook handle attributes.
stringSpecifies the Workflows webhook handle resource type. (default: workflows-webhook-handle, example: workflows-webhook-handle)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Workflows webhook handle. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectWorkflows Webhook handle attributes.
stringSpecifies the Workflows webhook handle resource type. (default: workflows-webhook-handle, example: workflows-webhook-handle)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
handle_id, regionGet the name of a Workflows webhook handle from the Datadog Microsoft Teams integration.
regionnameGet a list of all Workflows webhook handles from the Datadog Microsoft Teams integration.
region, data__dataCreate a Workflows webhook handle in the Datadog Microsoft Teams integration.
handle_id, region, data__dataUpdate a Workflows webhook handle from the Datadog Microsoft Teams integration.
handle_id, regionDelete a Workflows webhook handle 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
stringYour Workflows webhook handle id.
string(default: datadoghq.com)
stringYour Workflows webhook handle name.
+ +## `SELECT` examples + + + + +Get the name of a Workflows webhook handle from the Datadog Microsoft Teams integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.ms_teams_workflows_webhook_handles +WHERE handle_id = '{{ handle_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get a list of all Workflows webhook handles from the Datadog Microsoft Teams integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.ms_teams_workflows_webhook_handles +WHERE region = '{{ region }}' -- required +AND name = '{{ name }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a Workflows webhook handle in the Datadog Microsoft Teams integration. + +```sql +INSERT INTO datadog.integrations.ms_teams_workflows_webhook_handles ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update a Workflows webhook handle from the Datadog Microsoft Teams integration. + +```sql +UPDATE datadog.integrations.ms_teams_workflows_webhook_handles +SET +data__data = '{{ data }}' +WHERE +handle_id = '{{ handle_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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/okta_accounts/index.md b/website/docs/services/integrations/okta_accounts/index.md new file mode 100644 index 0000000..a9bffeb --- /dev/null +++ b/website/docs/services/integrations/okta_accounts/index.md @@ -0,0 +1,311 @@ +--- +title: okta_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - okta_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an okta_accounts resource. + +## Overview + + + + +
Nameokta_accounts
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Okta account, a UUID hash of the account name. (example: f749daaf-682e-4208-a38d-c9b43162c609)
objectAttributes object for an Okta account.
stringAccount type for an Okta account. (default: okta-accounts, example: okta-accounts)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Okta account, a UUID hash of the account name. (example: f749daaf-682e-4208-a38d-c9b43162c609)
objectAttributes object for an Okta account.
stringAccount type for an Okta account. (default: okta-accounts, example: okta-accounts)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
account_id, regionGet an Okta account.
regionList Okta accounts.
region, data__dataCreate an Okta account.
account_id, region, data__dataUpdate an Okta account.
account_id, regionDelete an Okta 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
stringNone
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get an Okta account. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.okta_accounts +WHERE account_id = '{{ account_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List Okta accounts. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.okta_accounts +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create an Okta account. + +```sql +INSERT INTO datadog.integrations.okta_accounts ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update an Okta account. + +```sql +UPDATE datadog.integrations.okta_accounts +SET +data__data = '{{ data }}' +WHERE +account_id = '{{ account_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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_services/index.md b/website/docs/services/integrations/opsgenie_services/index.md new file mode 100644 index 0000000..2514db7 --- /dev/null +++ b/website/docs/services/integrations/opsgenie_services/index.md @@ -0,0 +1,311 @@ +--- +title: opsgenie_services +hide_title: false +hide_table_of_contents: false +keywords: + - opsgenie_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an opsgenie_services resource. + +## Overview + + + + +
Nameopsgenie_services
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Opsgenie service. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectThe attributes from an Opsgenie service response.
stringOpsgenie service resource type. (default: opsgenie-service, example: opsgenie-service)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Opsgenie service. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectThe attributes from an Opsgenie service response.
stringOpsgenie service resource type. (default: opsgenie-service, example: opsgenie-service)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
integration_service_id, regionGet a single service from the Datadog Opsgenie integration.
regionGet a list of all services from the Datadog Opsgenie integration.
region, data__dataCreate a new service object in the Opsgenie integration.
integration_service_id, region, data__dataUpdate a single service object in the Datadog Opsgenie integration.
integration_service_id, regionDelete a single service object in 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 service.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get a single service from the Datadog Opsgenie integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.opsgenie_services +WHERE integration_service_id = '{{ integration_service_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get a list of all services from the Datadog Opsgenie integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.opsgenie_services +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new service object in the Opsgenie integration. + +```sql +INSERT INTO datadog.integrations.opsgenie_services ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update a single service object in the Datadog Opsgenie integration. + +```sql +UPDATE datadog.integrations.opsgenie_services +SET +data__data = '{{ data }}' +WHERE +integration_service_id = '{{ integration_service_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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/logs/archive_order/index.md b/website/docs/services/logs/archive_order/index.md new file mode 100644 index 0000000..d2c8cfb --- /dev/null +++ b/website/docs/services/logs/archive_order/index.md @@ -0,0 +1,165 @@ +--- +title: archive_order +hide_title: false +hide_table_of_contents: false +keywords: + - archive_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an archive_order resource. + +## Overview + + + + +
Namearchive_order
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectThe attributes associated with the archive order.
stringType of the archive order definition. (default: archive_order, example: archive_order)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionGet the current order of your archives.
This endpoint takes no JSON arguments.
regionUpdate 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.
+ +## Parameters + +Parameters can be passed 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)
+ +## `SELECT` examples + + + + +Get the current order of your archives.
This endpoint takes no JSON arguments. + +```sql +SELECT +attributes, +type +FROM datadog.logs.archive_order +WHERE region = '{{ region }}' -- required +; +``` +
+
+ + +## `REPLACE` examples + + + + +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. + +```sql +REPLACE datadog.logs.archive_order +SET +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 new file mode 100644 index 0000000..f921fa6 --- /dev/null +++ b/website/docs/services/logs/archive_read_roles/index.md @@ -0,0 +1,234 @@ +--- +title: archive_read_roles +hide_title: false +hide_table_of_contents: false +keywords: + - archive_read_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an archive_read_roles resource. + +## Overview + + + + +
Namearchive_read_roles
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the role.
objectAttributes of the role.
objectRelationships of the role object returned by the API.
stringRoles type. (default: roles, example: roles)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
archive_id, regionReturns all read roles a given archive is restricted to.
archive_id, regionAdds a read role to an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/))
archive_id, regionRemoves a role from an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/))
+ +## Parameters + +Parameters can be passed in 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 archive.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Returns all read roles a given archive is restricted to. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.logs.archive_read_roles +WHERE archive_id = '{{ archive_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Adds a read role to an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) + +```sql +INSERT INTO datadog.logs.archive_read_roles ( +data__data, +archive_id, +region +) +SELECT +'{{ data }}', +'{{ archive_id }}', +'{{ region }}' +; +``` + + + +```yaml +# 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 + description: Required parameter for the archive_read_roles resource. + - name: data + value: object + description: | + Relationship to role object. +``` + + + + +## `DELETE` examples + + + + +Removes a role from an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) + +```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 new file mode 100644 index 0000000..d9c769a --- /dev/null +++ b/website/docs/services/logs/archives/index.md @@ -0,0 +1,310 @@ +--- +title: archives +hide_title: false +hide_table_of_contents: false +keywords: + - archives + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an archives resource. + +## Overview + + + + +
Namearchives
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe archive ID. (example: a2zcMylnM4OCHpYusxIi3g)
objectThe attributes associated with the archive.
stringThe type of the resource. The value should always be archives. (default: archives, example: archives)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe archive ID. (example: a2zcMylnM4OCHpYusxIi3g)
objectThe attributes associated with the archive.
stringThe type of the resource. The value should always be archives. (default: archives, example: archives)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
archive_id, regionGet a specific archive from your organization.
regionGet the list of configured logs archives with their definitions.
regionCreate an archive in your organization.
archive_id, regionUpdate 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.
archive_id, regionDelete a given archive 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 archive.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get a specific archive from your organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.logs.archives +WHERE archive_id = '{{ archive_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get the list of configured logs archives with their definitions. + +```sql +SELECT +id, +attributes, +type +FROM datadog.logs.archives +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create an archive in your organization. + +```sql +INSERT INTO datadog.logs.archives ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `REPLACE` examples + + + + +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. + +```sql +REPLACE datadog.logs.archives +SET +data__data = '{{ data }}' +WHERE +archive_id = '{{ archive_id }}' --required +AND region = '{{ region }}' --required +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..e70fb08 --- /dev/null +++ b/website/docs/services/logs/custom_destinations/index.md @@ -0,0 +1,310 @@ +--- +title: custom_destinations +hide_title: false +hide_table_of_contents: false +keywords: + - custom_destinations + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a custom_destinations resource. + +## Overview + + + + +
Namecustom_destinations
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe custom destination ID. (example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139)
objectThe attributes associated with the custom destination.
stringThe type of the resource. The value should always be `custom_destination`. (default: custom_destination, example: custom_destination)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe custom destination ID. (example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139)
objectThe attributes associated with the custom destination.
stringThe type of the resource. The value should always be `custom_destination`. (default: custom_destination, example: custom_destination)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
custom_destination_id, regionGet a specific custom destination in your organization.
regionGet the list of configured custom destinations in your organization with their definitions.
regionCreate a custom destination in your organization.
custom_destination_id, regionUpdate the given fields of a specific custom destination in your organization.
custom_destination_id, regionDelete a specific custom destination 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 ID of the custom destination.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get a specific custom destination in your organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.logs.custom_destinations +WHERE custom_destination_id = '{{ custom_destination_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get the list of configured custom destinations in your organization with their definitions. + +```sql +SELECT +id, +attributes, +type +FROM datadog.logs.custom_destinations +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a custom destination in your organization. + +```sql +INSERT INTO datadog.logs.custom_destinations ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update the given fields of a specific custom destination in your organization. + +```sql +UPDATE datadog.logs.custom_destinations +SET +data__data = '{{ data }}' +WHERE +custom_destination_id = '{{ custom_destination_id }}' --required +AND region = '{{ region }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..83158dd --- /dev/null +++ b/website/docs/services/logs/index.md @@ -0,0 +1,37 @@ +--- +title: logs +hide_title: false +hide_table_of_contents: false +keywords: + - logs + - 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 +--- + +logs service documentation. + +:::info[Service Summary] + +total resources: __6__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/logs/logs/index.md b/website/docs/services/logs/logs/index.md new file mode 100644 index 0000000..da185ad --- /dev/null +++ b/website/docs/services/logs/logs/index.md @@ -0,0 +1,337 @@ +--- +title: logs +hide_title: false +hide_table_of_contents: false +keywords: + - logs + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a logs resource. + +## Overview + + + + +
Namelogs
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique ID of the Log. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectJSON object containing all log attributes and their associated values.
stringType of the event. (default: log, example: log)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionfilter[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
regionContent-Encoding, ddtagsSend 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
regionList 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
regionThe API endpoint to aggregate events into buckets and compute metrics and timeseries.
+ +## Parameters + +Parameters can be passed 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)
stringHTTP header used to compress the media-type.
stringLog tags can be passed as query parameters with `text/plain` content type. (example: env:prod,user:my-user)
string (date-time)Minimum timestamp for requested logs. (example: 2019-01-02T09:42:36.320Z)
arrayFor customers with multiple indexes, the indexes to search. Defaults to '*' which means all indexes (example: [main, web])
stringSearch query following logs syntax. (example: @datacenter:us @role:db)
stringSpecifies the storage type to be used
string (date-time)Maximum timestamp for requested logs. (example: 2019-01-03T09:42:36.320Z)
stringList following results with a cursor provided in the previous query. (example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==)
integer (int32)Maximum number of logs in the response. (example: 25)
stringOrder of logs in results.
+ +## `SELECT` examples + + + + +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 +SELECT +id, +attributes, +type +FROM datadog.logs.logs +WHERE region = '{{ region }}' -- required +AND filter[query] = '{{ filter[query] }}' +AND filter[indexes] = '{{ filter[indexes] }}' +AND filter[from] = '{{ filter[from] }}' +AND filter[to] = '{{ filter[to] }}' +AND filter[storage_tier] = '{{ filter[storage_tier] }}' +AND sort = '{{ sort }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` +
+
+ + +## `INSERT` examples + + + + +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 + +```sql +INSERT INTO datadog.logs.logs ( +region, +Content-Encoding, +ddtags +) +SELECT +'{{ region }}', +'{{ Content-Encoding }}', +'{{ 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 }}", +"filter": "{{ filter }}", +"group_by": "{{ group_by }}", +"options": "{{ options }}", +"page": "{{ page }}" +}' +; +``` + + diff --git a/website/docs/services/logs/metrics/index.md b/website/docs/services/logs/metrics/index.md new file mode 100644 index 0000000..af358f1 --- /dev/null +++ b/website/docs/services/logs/metrics/index.md @@ -0,0 +1,311 @@ +--- +title: metrics +hide_title: false +hide_table_of_contents: false +keywords: + - metrics + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a metrics resource. + +## Overview + + + + +
Namemetrics
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the log-based metric. (example: logs.page.load.count)
objectThe object describing a Datadog log-based metric.
stringThe type of the resource. The value should always be logs_metrics. (default: logs_metrics, example: logs_metrics)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the log-based metric. (example: logs.page.load.count)
objectThe object describing a Datadog log-based metric.
stringThe type of the resource. The value should always be logs_metrics. (default: logs_metrics, example: logs_metrics)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_id, regionGet a specific log-based metric from your organization.
regionGet the list of configured log-based metrics with their definitions.
region, data__dataCreate 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.
metric_id, region, data__dataUpdate a specific log-based metric from your organization.
Returns the log-based metric object from the request body when the request is successful.
metric_id, regionDelete a specific log-based metric 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 name of the log-based metric.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get a specific log-based metric from your organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.logs.metrics +WHERE metric_id = '{{ metric_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get the list of configured log-based metrics with their definitions. + +```sql +SELECT +id, +attributes, +type +FROM datadog.logs.metrics +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.logs.metrics ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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. +``` + +
+ + +## `UPDATE` examples + + + + +Update a specific log-based metric from your organization.
Returns the log-based metric object from the request body when the request is successful. + +```sql +UPDATE datadog.logs.metrics +SET +data__data = '{{ data }}' +WHERE +metric_id = '{{ metric_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +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/metrics/active_tag_configurations/index.md b/website/docs/services/metrics/active_tag_configurations/index.md new file mode 100644 index 0000000..f6ab581 --- /dev/null +++ b/website/docs/services/metrics/active_tag_configurations/index.md @@ -0,0 +1,151 @@ +--- +title: active_tag_configurations +hide_title: false +hide_table_of_contents: false +keywords: + - active_tag_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an active_tag_configurations resource. + +## Overview + + + + +
Nameactive_tag_configurations
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe metric name for this resource. (example: test.metric.latency)
objectObject containing the definition of a metric's actively queried tags and aggregations.
stringThe metric actively queried configuration resource type. (default: actively_queried_configurations, example: actively_queried_configurations)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_name, regionwindow[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.
+ +## Parameters + +Parameters can be passed in 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)
string(default: datadoghq.com)
integer (int64)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)
+ +## `SELECT` examples + + + + +List tags and aggregations that are actively queried on dashboards, notebooks, monitors, the Metrics Explorer, and using the API for a given metric name. + +```sql +SELECT +id, +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 new file mode 100644 index 0000000..57fd748 --- /dev/null +++ b/website/docs/services/metrics/datasets/index.md @@ -0,0 +1,319 @@ +--- +title: datasets +hide_title: false +hide_table_of_contents: false +keywords: + - datasets + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a datasets resource. + +## Overview + + + + +
Namedatasets
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the dataset. (example: 123e4567-e89b-12d3-a456-426614174000)
objectDataset metadata and configuration(s).
stringResource type, always set to `dataset`. (default: dataset, example: dataset)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the dataset. (example: 123e4567-e89b-12d3-a456-426614174000)
objectDataset metadata and configuration(s).
stringResource type, always set to `dataset`. (default: dataset, example: dataset)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataset_id, regionRetrieves the dataset associated with the ID.
regionGet all datasets that have been configured for an organization.
region, data__dataCreate a dataset with the configurations in the request.
dataset_id, region, data__dataEdits the dataset associated with the ID.
dataset_id, regionDeletes the dataset associated with the 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 a defined dataset. (example: 0879ce27-29a1-481f-a12e-bc2a48ec9ae1)
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Retrieves the dataset associated with the ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.metrics.datasets +WHERE dataset_id = '{{ dataset_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get all datasets that have been configured for an organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.metrics.datasets +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a dataset with the configurations in the request. + +```sql +INSERT INTO datadog.metrics.datasets ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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**: + - 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. +``` + + + + +## `REPLACE` examples + + + + +Edits the dataset associated with the ID. + +```sql +REPLACE datadog.metrics.datasets +SET +data__data = '{{ data }}' +WHERE +dataset_id = '{{ dataset_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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/index.md b/website/docs/services/metrics/index.md new file mode 100644 index 0000000..48da231 --- /dev/null +++ b/website/docs/services/metrics/index.md @@ -0,0 +1,41 @@ +--- +title: metrics +hide_title: false +hide_table_of_contents: false +keywords: + - metrics + - 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 +--- + +metrics service documentation. + +:::info[Service Summary] + +total resources: __10__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/metrics/metrics/index.md b/website/docs/services/metrics/metrics/index.md new file mode 100644 index 0000000..5df8894 --- /dev/null +++ b/website/docs/services/metrics/metrics/index.md @@ -0,0 +1,188 @@ +--- +title: metrics +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a metrics resource. + +## Overview + + + + +
Namemetrics
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__seriesContent-EncodingThe 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.
region, dataQuery 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.
region, dataQuery timeseries data across various data sources and
process the data by applying formulas and functions.
+ +## Parameters + +Parameters can be passed 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)
stringHTTP header used to compress the media-type.
+ +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.metrics.metrics ( +data__series, +region, +Content-Encoding +) +SELECT +'{{ series }}' /* required */, +'{{ region }}', +'{{ Content-Encoding }}' +RETURNING +errors +; +``` +
+ + +```yaml +# 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 + description: HTTP header used to compress the media-type. +``` + +
+ + +## Lifecycle Methods + + + + +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. + +```sql +EXEC datadog.metrics.metrics.query_scalar_data +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` +
+ + +Query timeseries data across various data sources and
process the data by applying formulas and functions. + +```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 new file mode 100644 index 0000000..d55827f --- /dev/null +++ b/website/docs/services/metrics/metrics_output_series/index.md @@ -0,0 +1,175 @@ +--- +title: metrics_output_series +hide_title: false +hide_table_of_contents: false +keywords: + - metrics_output_series + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a metrics_output_series resource. + +## Overview + + + + +
Namemetrics_output_series
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe metric name for this resource. (example: test.metric.latency)
objectObject containing the definition of a metric estimate attribute.
stringThe metric estimate resource type. (default: metric_cardinality_estimate, example: metric_cardinality_estimate)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_name, regionfilter[groups], 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™.
+ +## Parameters + +Parameters can be passed in 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)
string(default: datadoghq.com)
stringFiltered tag keys that the metric is configured to query with. (example: app,host)
integer (int32)The number of hours of look back (from now) to estimate cardinality with. If unspecified, it defaults to 0 hours. (example: 49)
integer (int32)Deprecated. Number of aggregations has no impact on volume. (example: 1)
booleanA boolean, for distribution metrics only, to estimate cardinality if the metric includes additional percentile aggregators. (example: true)
integer (int32)A window, in hours, from the look back to estimate cardinality with. The minimum and default is 1 hour. (example: 6)
+ +## `SELECT` examples + + + + +Returns the estimated cardinality for a metric with a given tag, percentile and number of aggregations configuration using Metrics without Limits™. + +```sql +SELECT +id, +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[hours_ago] = '{{ filter[hours_ago] }}' +AND filter[num_aggregations] = '{{ filter[num_aggregations] }}' +AND filter[pct] = '{{ filter[pct] }}' +AND filter[timespan_h] = '{{ filter[timespan_h] }}' +; +``` + + diff --git a/website/docs/services/metrics/related_assets/index.md b/website/docs/services/metrics/related_assets/index.md new file mode 100644 index 0000000..e60fc22 --- /dev/null +++ b/website/docs/services/metrics/related_assets/index.md @@ -0,0 +1,145 @@ +--- +title: related_assets +hide_title: false +hide_table_of_contents: false +keywords: + - related_assets + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a related_assets resource. + +## Overview + + + + +
Namerelated_assets
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe metric name for this resource. (example: test.metric.latency)
objectRelationships to assets related to the metric.
stringThe metric resource type. (default: metrics, example: metrics)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_name, regionReturns dashboards, monitors, notebooks, and SLOs that a metric is stored in, if any. Updated every 24 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 name of the metric. (example: dist.http.endpoint.request)
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Returns dashboards, monitors, notebooks, and SLOs that a metric is stored in, if any. Updated every 24 hours. + +```sql +SELECT +id, +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 new file mode 100644 index 0000000..c7ed4fb --- /dev/null +++ b/website/docs/services/metrics/spans/index.md @@ -0,0 +1,260 @@ +--- +title: spans +hide_title: false +hide_table_of_contents: false +keywords: + - spans + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a spans resource. + +## Overview + + + + +
Namespans
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique ID of the Span. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectJSON object containing all span attributes and their associated values.
stringType of the span. (default: spans, example: spans)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionfilter[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
regionList 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
regionThe API endpoint to aggregate spans into buckets and compute metrics and timeseries.
This endpoint is rate limited to `300` requests per hour.
+ +## Parameters + +Parameters can be passed 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)
stringMinimum timestamp for requested spans. Supports date-time ISO8601, date math, and regular timestamps (milliseconds). (example: 2023-01-02T09:42:36.320Z)
stringSearch query following spans syntax. (example: @datacenter:us @role:db)
stringMaximum timestamp for requested spans. Supports date-time ISO8601, date math, and regular timestamps (milliseconds). (example: 2023-01-03T09:42:36.320Z)
stringList following results with a cursor provided in the previous query. (example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==)
integer (int32)Maximum number of spans in the response. (example: 25)
stringOrder of spans in results.
+ +## `SELECT` examples + + + + +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 + +```sql +SELECT +id, +attributes, +type +FROM datadog.metrics.spans +WHERE region = '{{ region }}' -- required +AND filter[query] = '{{ filter[query] }}' +AND filter[from] = '{{ filter[from] }}' +AND filter[to] = '{{ filter[to] }}' +AND sort = '{{ sort }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` +
+
+ + +## `INSERT` examples + + + + +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 + +```sql +INSERT INTO datadog.metrics.spans ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data, +links, +meta +; +``` +
+ + +```yaml +# 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. +``` + +
+ + +## Lifecycle Methods + + + + +The API endpoint to aggregate spans into buckets and compute metrics and timeseries.
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 new file mode 100644 index 0000000..49f96bc --- /dev/null +++ b/website/docs/services/metrics/tag_cardinality_details/index.md @@ -0,0 +1,145 @@ +--- +title: tag_cardinality_details +hide_title: false +hide_table_of_contents: false +keywords: + - tag_cardinality_details + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_cardinality_details resource. + +## Overview + + + + +
Nametag_cardinality_details
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the tag key.
objectAn object containing properties related to the tag key
stringThis describes the endpoint action. (default: tag_cardinality)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_name, regionReturns the cardinality details of tags for a specific 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 name of the metric. (example: dist.http.endpoint.request)
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Returns the cardinality details of tags for a specific metric. + +```sql +SELECT +id, +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 new file mode 100644 index 0000000..27233a6 --- /dev/null +++ b/website/docs/services/metrics/tag_configurations/index.md @@ -0,0 +1,402 @@ +--- +title: tag_configurations +hide_title: false +hide_table_of_contents: false +keywords: + - tag_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_configurations resource. + +## Overview + + + + +
Nametag_configurations
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe metric name for this resource. (example: test.metric.latency)
objectObject containing the definition of a metric tag configuration attributes.
stringThe metric tag configuration resource type. (default: manage_tags, example: manage_tags)
+
+ + + + + + + + + + + + +
NameDatatypeDescription
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_name, regionReturns the tag configuration for the given metric name.
regionfilter[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__dataCreate 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.
region, data__dataCreate 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.
metric_name, region, data__dataUpdate 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.
metric_name, regionDeletes a metric's tag configuration. Can only be used with application
keys from users with the `Manage Tags for Metrics` permission.
regionDelete 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.
+ +## Parameters + +Parameters can be passed in 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)
string(default: datadoghq.com)
booleanFilter custom metrics that have configured tags. (example: true)
booleanFilter distributions with additional percentile aggregations enabled or disabled. (example: true)
stringFilter metrics by 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)
boolean(Preview) Filter metrics that are used in dashboards, monitors, notebooks, SLOs. (example: true)
stringFilter 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)
stringFilter tag configurations by configured tags. (example: app)
stringString 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.
integer (int32)Maximum number of results returned.
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)
+ +## `SELECT` examples + + + + +Returns the tag configuration for the given metric name. + +```sql +SELECT +id, +attributes, +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. + +```sql +SELECT +* +FROM datadog.metrics.tag_configurations +WHERE region = '{{ region }}' -- required +AND filter[configured] = '{{ filter[configured] }}' +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[tags] = '{{ filter[tags] }}' +AND filter[related_assets] = '{{ filter[related_assets] }}' +AND window[seconds] = '{{ window[seconds] }}' +AND page[size] = '{{ page[size] }}' +AND page[cursor] = '{{ page[cursor] }}' +; +``` +
+
+ + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.metrics.tag_configurations ( +data__data, +metric_name, +region +) +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 }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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 + 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. +``` + +
+ + +## `UPDATE` examples + + + + +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. + +```sql +UPDATE datadog.metrics.tag_configurations +SET +data__data = '{{ data }}' +WHERE +metric_name = '{{ metric_name }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +Deletes a metric's tag configuration. Can only be used with application
keys from users with the `Manage Tags for Metrics` permission. + +```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/tags/index.md b/website/docs/services/metrics/tags/index.md new file mode 100644 index 0000000..c51693d --- /dev/null +++ b/website/docs/services/metrics/tags/index.md @@ -0,0 +1,145 @@ +--- +title: tags +hide_title: false +hide_table_of_contents: false +keywords: + - tags + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tags resource. + +## Overview + + + + +
Nametags
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe metric name for this resource. (example: test.metric.latency)
objectObject containing the definition of a metric's tags.
stringThe metric resource type. (default: metrics, example: metrics)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_name, regionView indexed tag key-value pairs for a given metric name over the previous hour.
+ +## Parameters + +Parameters can be passed in 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)
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +View indexed tag key-value pairs for a given metric name over the previous hour. + +```sql +SELECT +id, +attributes, +type +FROM datadog.metrics.tags +WHERE metric_name = '{{ metric_name }}' -- required +AND region = '{{ region }}' -- required +; +``` + + diff --git a/website/docs/services/metrics/volumes/index.md b/website/docs/services/metrics/volumes/index.md new file mode 100644 index 0000000..8e4aaeb --- /dev/null +++ b/website/docs/services/metrics/volumes/index.md @@ -0,0 +1,128 @@ +--- +title: volumes +hide_title: false +hide_table_of_contents: false +keywords: + - volumes + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a volumes resource. + +## Overview + + + + +
Namevolumes
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + +
NameDatatypeDescription
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_name, regionView distinct metrics volumes for the given metric name.

Custom metrics generated in-app from other products will return `null` for ingested volumes.
+ +## Parameters + +Parameters can be passed in 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)
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +View distinct metrics volumes for the given metric name.

Custom metrics generated in-app from other products will return `null` for ingested volumes. + +```sql +SELECT +* +FROM datadog.metrics.volumes +WHERE metric_name = '{{ metric_name }}' -- required +AND region = '{{ region }}' -- required +; +``` +
+
diff --git a/website/docs/services/monitoring/config_policies/index.md b/website/docs/services/monitoring/config_policies/index.md new file mode 100644 index 0000000..00b61a6 --- /dev/null +++ b/website/docs/services/monitoring/config_policies/index.md @@ -0,0 +1,311 @@ +--- +title: config_policies +hide_title: false +hide_table_of_contents: false +keywords: + - config_policies + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a config_policies resource. + +## Overview + + + + +
Nameconfig_policies
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of this monitor configuration policy. (example: 00000000-0000-1234-0000-000000000000)
objectPolicy and policy type for a monitor configuration policy.
stringMonitor configuration policy resource type. (default: monitor-config-policy, example: monitor-config-policy)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of this monitor configuration policy. (example: 00000000-0000-1234-0000-000000000000)
objectPolicy and policy type for a monitor configuration policy.
stringMonitor configuration policy resource type. (default: monitor-config-policy, example: monitor-config-policy)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
policy_id, regionGet a monitor configuration policy by `policy_id`.
regionGet all monitor configuration policies.
region, data__dataCreate a monitor configuration policy.
policy_id, region, data__dataEdit a monitor configuration policy.
policy_id, regionDelete a monitor configuration 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
stringID of the monitor configuration policy.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get a monitor configuration policy by `policy_id`. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.config_policies +WHERE policy_id = '{{ policy_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get all monitor configuration policies. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.config_policies +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a monitor configuration policy. + +```sql +INSERT INTO datadog.monitoring.config_policies ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Edit a monitor configuration policy. + +```sql +UPDATE datadog.monitoring.config_policies +SET +data__data = '{{ data }}' +WHERE +policy_id = '{{ policy_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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/downtimes/index.md b/website/docs/services/monitoring/downtimes/index.md new file mode 100644 index 0000000..0bd17b1 --- /dev/null +++ b/website/docs/services/monitoring/downtimes/index.md @@ -0,0 +1,157 @@ +--- +title: downtimes +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a downtimes resource. + +## Overview + + + + +
Namedowntimes
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe downtime ID. (example: 00000000-0000-1234-0000-000000000000)
objectDowntime match details.
stringMonitor Downtime Match resource type. (default: downtime_match, example: downtime_match)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
monitor_id, regionpage[offset], page[limit]Get all active downtimes for the specified monitor.
+ +## Parameters + +Parameters can be passed 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.
string(default: datadoghq.com)
integer (int64)Maximum number of downtimes in the response. (example: 100)
integer (int64)Specific offset to use as the beginning of the returned page.
+ +## `SELECT` examples + + + + +Get all active downtimes for the specified monitor. + +```sql +SELECT +id, +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 new file mode 100644 index 0000000..c45af96 --- /dev/null +++ b/website/docs/services/monitoring/index.md @@ -0,0 +1,36 @@ +--- +title: monitoring +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring + - 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 +--- + +monitoring service documentation. + +:::info[Service Summary] + +total resources: __5__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/monitoring/notification_rules/index.md b/website/docs/services/monitoring/notification_rules/index.md new file mode 100644 index 0000000..2575a17 --- /dev/null +++ b/website/docs/services/monitoring/notification_rules/index.md @@ -0,0 +1,356 @@ +--- +title: notification_rules +hide_title: false +hide_table_of_contents: false +keywords: + - notification_rules + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a notification_rules resource. + +## Overview + + + + +
Namenotification_rules
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the monitor notification rule. (example: 00000000-0000-1234-0000-000000000000)
objectAttributes of the monitor notification rule.
objectAll relationships associated with monitor notification rule.
stringMonitor notification rule resource type. (default: monitor-notification-rule, example: monitor-notification-rule)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the monitor notification rule. (example: 00000000-0000-1234-0000-000000000000)
objectAttributes of the monitor notification rule.
objectAll relationships associated with monitor notification rule.
stringMonitor notification rule resource type. (default: monitor-notification-rule, example: monitor-notification-rule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_id, regionincludeReturns a monitor notification rule by `rule_id`.
regionpage, per_page, sort, filters, includeReturns a list of all monitor notification rules.
region, data__dataCreates a monitor notification rule.
rule_id, region, data__dataUpdates a monitor notification rule by `rule_id`.
rule_id, regionDeletes a monitor notification rule by `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
string(default: datadoghq.com)
stringID of the monitor notification rule to delete.
stringJSON-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"]})
stringComma-separated list of resource paths for related resources to include in the response. Supported resource path is `created_by`.
integer (int32)The page to start paginating from. If `page` is not specified, the argument defaults to the first page.
integer (int32)The number of rules to return per page. If `per_page` is not specified, the argument defaults to 100.
stringString 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`.
+ +## `SELECT` examples + + + + +Returns a monitor notification rule by `rule_id`. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.monitoring.notification_rules +WHERE rule_id = '{{ rule_id }}' -- required +AND region = '{{ region }}' -- required +AND include = '{{ include }}' +; +``` + + + +Returns a list of all monitor notification rules. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.monitoring.notification_rules +WHERE region = '{{ region }}' -- required +AND page = '{{ page }}' +AND per_page = '{{ per_page }}' +AND sort = '{{ sort }}' +AND filters = '{{ filters }}' +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a monitor notification rule. + +```sql +INSERT INTO datadog.monitoring.notification_rules ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Updates a monitor notification rule by `rule_id`. + +```sql +UPDATE datadog.monitoring.notification_rules +SET +data__data = '{{ data }}' +WHERE +rule_id = '{{ rule_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..a30f81a --- /dev/null +++ b/website/docs/services/monitoring/on_demand_concurrency_cap/index.md @@ -0,0 +1,184 @@ +--- +title: on_demand_concurrency_cap +hide_title: false +hide_table_of_contents: false +keywords: + - on_demand_concurrency_cap + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an on_demand_concurrency_cap resource. + +## Overview + + + + +
Nameon_demand_concurrency_cap
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectOn-demand concurrency cap attributes.
stringOn-demand concurrency cap type.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionGet the on-demand concurrency cap.
regionSave new value for on-demand concurrency cap.
+ +## Parameters + +Parameters can be passed 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)
+ +## `SELECT` examples + + + + +Get the on-demand concurrency cap. + +```sql +SELECT +attributes, +type +FROM datadog.monitoring.on_demand_concurrency_cap +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Save new value for on-demand concurrency cap. + +```sql +INSERT INTO datadog.monitoring.on_demand_concurrency_cap ( +data__on_demand_concurrency_cap, +region +) +SELECT +{{ on_demand_concurrency_cap }}, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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 + description: | + Value of the on-demand concurrency cap. +``` + + diff --git a/website/docs/services/monitoring/user_templates/index.md b/website/docs/services/monitoring/user_templates/index.md new file mode 100644 index 0000000..6f57e2e --- /dev/null +++ b/website/docs/services/monitoring/user_templates/index.md @@ -0,0 +1,372 @@ +--- +title: user_templates +hide_title: false +hide_table_of_contents: false +keywords: + - user_templates + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a user_templates resource. + +## Overview + + + + +
Nameuser_templates
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier. (example: 00000000-0000-1234-0000-000000000000)
objectA monitor user template object.
stringMonitor user template resource type. (default: monitor-user-template, example: monitor-user-template)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier. (example: 00000000-0000-1234-0000-000000000000)
objectAttributes for a monitor user template.
stringMonitor user template resource type. (default: monitor-user-template, example: monitor-user-template)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
template_id, regionwith_all_versionsRetrieve a monitor user template by its ID.
regionRetrieve all monitor user templates.
region, data__dataCreate a new monitor user template.
template_id, region, data__dataCreates a new version of an existing monitor user template.
template_id, regionDelete an existing monitor user template by its ID.
region, dataValidate the structure and content of a monitor user template.
template_id, region, dataValidate the structure and content of an existing monitor user template being updated to a new 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
string(default: datadoghq.com)
stringID of the monitor user template.
booleanWhether to include all versions of the template in the response in the versions field. (example: false)
+ +## `SELECT` examples + + + + +Retrieve a monitor user template by its ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.user_templates +WHERE template_id = '{{ template_id }}' -- required +AND region = '{{ region }}' -- required +AND with_all_versions = '{{ with_all_versions }}' +; +``` + + + +Retrieve all monitor user templates. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.user_templates +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new monitor user template. + +```sql +INSERT INTO datadog.monitoring.user_templates ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `REPLACE` examples + + + + +Creates a new version of an existing monitor user template. + +```sql +REPLACE datadog.monitoring.user_templates +SET +data__data = '{{ data }}' +WHERE +template_id = '{{ template_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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 +; +``` + + + + +## Lifecycle Methods + + + + +Validate the structure and content of a monitor user template. + +```sql +EXEC datadog.monitoring.user_templates.validate_monitor_user_template +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Validate the structure and content of an existing monitor user template being updated to a new version. + +```sql +EXEC datadog.monitoring.user_templates.validate_existing_monitor_user_template +@template_id='{{ template_id }}' --required, +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/organization/api_keys/index.md b/website/docs/services/organization/api_keys/index.md new file mode 100644 index 0000000..48057e5 --- /dev/null +++ b/website/docs/services/organization/api_keys/index.md @@ -0,0 +1,392 @@ +--- +title: api_keys +hide_title: false +hide_table_of_contents: false +keywords: + - api_keys + - 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 api_keys resource. + +## Overview + + + + +
Nameapi_keys
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the API key.
objectAttributes of a full API key.
objectResources related to the API key.
stringAPI Keys resource type. (default: api_keys, example: api_keys)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the API key.
objectAttributes of a partial API key.
objectResources related to the API key.
stringAPI Keys resource type. (default: api_keys, example: api_keys)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
api_key_id, regionincludeGet an API key.
regionpage[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__dataCreate an API key.
api_key_id, region, data__dataUpdate an API key.
api_key_id, regionDelete an API 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
stringThe ID of the API key.
string(default: datadoghq.com)
stringFilter API keys by the specified string.
stringFilter API keys by category.
stringOnly include API keys created on or before the specified date.
stringOnly include API keys created on or after the specified date.
stringOnly include API keys modified on or before the specified date.
stringOnly include API keys modified on or after the specified date.
booleanFilter API keys by remote config read enabled status.
stringComma separated list of resource paths for related resources to include in the response. Supported resource paths are `created_by` and `modified_by`.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringAPI 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.
+ +## `SELECT` examples + + + + +Get an API key. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.api_keys +WHERE api_key_id = '{{ api_key_id }}' -- required +AND region = '{{ region }}' -- required +AND include = '{{ include }}' +; +``` + + + +List all API keys available for your account. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.api_keys +WHERE region = '{{ region }}' -- required +AND 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[modified_at][start] = '{{ filter[modified_at][start] }}' +AND filter[modified_at][end] = '{{ filter[modified_at][end] }}' +AND include = '{{ include }}' +AND filter[remote_config_read_enabled] = '{{ filter[remote_config_read_enabled] }}' +AND filter[category] = '{{ filter[category] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an API key. + +```sql +INSERT INTO datadog.organization.api_keys ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update an API key. + +```sql +UPDATE datadog.organization.api_keys +SET +data__data = '{{ data }}' +WHERE +api_key_id = '{{ api_key_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..51212b3 --- /dev/null +++ b/website/docs/services/organization/application_keys/index.md @@ -0,0 +1,316 @@ +--- +title: application_keys +hide_title: false +hide_table_of_contents: false +keywords: + - application_keys + - 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 application_keys resource. + +## Overview + + + + +
Nameapplication_keys
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the application key.
objectAttributes of a full application key.
objectResources related to the application key.
stringApplication Keys resource type. (default: application_keys, example: application_keys)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the application key.
objectAttributes of a partial application key.
objectResources related to the application key.
stringApplication Keys resource type. (default: application_keys, example: application_keys)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_key_id, regionincludeGet an application key for your org.
regionpage[size], page[number], sort, filter, filter[created_at][start], filter[created_at][end], includeList all application keys available for your org
app_key_id, region, data__dataEdit an application key
app_key_id, regionDelete an application 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
stringThe ID of the application key.
string(default: datadoghq.com)
stringFilter application keys by the specified string.
stringOnly include application keys created on or before the specified date.
stringOnly include application keys created on or after the specified date.
stringResource path for related resources to include in the response. Only `owned_by` is supported.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringApplication 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.
+ +## `SELECT` examples + + + + +Get an application key for your org. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.application_keys +WHERE app_key_id = '{{ app_key_id }}' -- required +AND region = '{{ region }}' -- required +AND include = '{{ include }}' +; +``` + + + +List all application keys available for your org + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.application_keys +WHERE region = '{{ region }}' -- required +AND 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 include = '{{ include }}' +; +``` + + + + +## `UPDATE` examples + + + + +Edit an application key + +```sql +UPDATE datadog.organization.application_keys +SET +data__data = '{{ data }}' +WHERE +app_key_id = '{{ app_key_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete an application key + +```sql +DELETE FROM datadog.organization.application_keys +WHERE app_key_id = '{{ app_key_id }}' --required +AND region = '{{ region }}' --required +; +``` + + diff --git a/website/docs/services/organization/audit_logs/index.md b/website/docs/services/organization/audit_logs/index.md new file mode 100644 index 0000000..a854a74 --- /dev/null +++ b/website/docs/services/organization/audit_logs/index.md @@ -0,0 +1,210 @@ +--- +title: audit_logs +hide_title: false +hide_table_of_contents: false +keywords: + - audit_logs + - 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 audit_logs resource. + +## Overview + + + + +
Nameaudit_logs
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique ID of the event. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectJSON object containing all event attributes and their associated values.
stringType of the event. (default: audit, example: audit)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionfilter[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
regionList 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
+ +## Parameters + +Parameters can be passed 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)Minimum timestamp for requested events. (example: 2019-01-02T09:42:36.320Z)
stringSearch query following Audit Logs syntax. (example: @type:session @application_id:xxxx)
string (date-time)Maximum timestamp for requested events. (example: 2019-01-03T09:42:36.320Z)
stringList following results with a cursor provided in the previous query. (example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==)
integer (int32)Maximum number of events in the response. (example: 25)
stringOrder of events in results.
+ +## `SELECT` examples + + + + +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 + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.audit_logs +WHERE region = '{{ region }}' -- required +AND filter[query] = '{{ filter[query] }}' +AND filter[from] = '{{ filter[from] }}' +AND filter[to] = '{{ filter[to] }}' +AND sort = '{{ sort }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` +
+
+ + +## Lifecycle Methods + + + + +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 + +```sql +EXEC datadog.organization.audit_logs.search_audit_logs +@region='{{ region }}' --required +@@json= +'{ +"filter": "{{ filter }}", +"options": "{{ options }}", +"page": "{{ page }}", +"sort": "{{ sort }}" +}' +; +``` +
+
diff --git a/website/docs/services/organization/authn_mappings/index.md b/website/docs/services/organization/authn_mappings/index.md new file mode 100644 index 0000000..46cbfe2 --- /dev/null +++ b/website/docs/services/organization/authn_mappings/index.md @@ -0,0 +1,355 @@ +--- +title: authn_mappings +hide_title: false +hide_table_of_contents: false +keywords: + - authn_mappings + - 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 authn_mappings resource. + +## Overview + + + + +
Nameauthn_mappings
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the AuthN Mapping. (example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d)
objectAttributes of AuthN Mapping.
objectAll relationships associated with AuthN Mapping.
stringAuthN Mappings resource type. (default: authn_mappings, example: authn_mappings)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the AuthN Mapping. (example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d)
objectAttributes of AuthN Mapping.
objectAll relationships associated with AuthN Mapping.
stringAuthN Mappings resource type. (default: authn_mappings, example: authn_mappings)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
authn_mapping_id, regionGet an AuthN Mapping specified by the AuthN Mapping UUID.
regionpage[size], page[number], sort, filter, resource_typeList all AuthN Mappings in the org.
region, data__dataCreate an AuthN Mapping.
authn_mapping_id, region, data__dataEdit an AuthN Mapping.
authn_mapping_id, regionDelete an AuthN Mapping specified by AuthN Mapping UUID.
+ +## Parameters + +Parameters can be passed in 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 AuthN Mapping.
string(default: datadoghq.com)
stringFilter all mappings by the given string.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringFilter by mapping resource type. Defaults to "role" if not specified.
stringSort AuthN Mappings depending on the given field.
+ +## `SELECT` examples + + + + +Get an AuthN Mapping specified by the AuthN Mapping UUID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.authn_mappings +WHERE authn_mapping_id = '{{ authn_mapping_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List all AuthN Mappings in the org. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.authn_mappings +WHERE region = '{{ region }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND sort = '{{ sort }}' +AND filter = '{{ filter }}' +AND resource_type = '{{ resource_type }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an AuthN Mapping. + +```sql +INSERT INTO datadog.organization.authn_mappings ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Edit an AuthN Mapping. + +```sql +UPDATE datadog.organization.authn_mappings +SET +data__data = '{{ data }}' +WHERE +authn_mapping_id = '{{ authn_mapping_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..683c86f --- /dev/null +++ b/website/docs/services/organization/billing_dimension_mapping/index.md @@ -0,0 +1,151 @@ +--- +title: billing_dimension_mapping +hide_title: false +hide_table_of_contents: false +keywords: + - billing_dimension_mapping + - 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 billing_dimension_mapping resource. + +## Overview + + + + +
Namebilling_dimension_mapping
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the billing dimension.
objectMapping of billing dimensions to endpoint keys.
stringType of active billing dimensions data. (default: billing_dimensions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionfilter[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/).
+ +## Parameters + +Parameters can be passed 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, and for mappings beginning this month. Defaults to the current month.
stringString 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`.
+ +## `SELECT` examples + + + + +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/). + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.billing_dimension_mapping +WHERE region = '{{ region }}' -- required +AND 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 new file mode 100644 index 0000000..df13a09 --- /dev/null +++ b/website/docs/services/organization/configs/index.md @@ -0,0 +1,231 @@ +--- +title: configs +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a configs resource. + +## Overview + + + + +
Nameconfigs
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA unique identifier for an Org Config. (example: abcd1234)
objectReadable attributes of an Org Config.
stringData type of an Org Config. (example: org_configs)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA unique identifier for an Org Config. (example: abcd1234)
objectReadable attributes of an Org Config.
stringData type of an Org Config. (example: org_configs)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
org_config_name, regionReturn the name, description, and value of a specific Org Config.
regionReturns all Org Configs (name, description, and value).
org_config_name, region, data__dataUpdate the value of a specific Org 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 name of an Org Config.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Return the name, description, and value of a specific Org Config. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.configs +WHERE org_config_name = '{{ org_config_name }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Returns all Org Configs (name, description, and value). + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.configs +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `UPDATE` examples + + + + +Update the value of a specific Org Config. + +```sql +UPDATE datadog.organization.configs +SET +data__data = '{{ data }}' +WHERE +org_config_name = '{{ org_config_name }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/organization/connections/index.md b/website/docs/services/organization/connections/index.md new file mode 100644 index 0000000..f6f09ec --- /dev/null +++ b/website/docs/services/organization/connections/index.md @@ -0,0 +1,264 @@ +--- +title: connections +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a connections resource. + +## Overview + + + + +
Nameconnections
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The unique identifier of the org connection. (example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a)
objectOrg connection attributes.
objectRelated organizations and user.
stringOrg connection type. (example: org_connection)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionReturns a list of org connections.
region, data__dataCreate a new org connection between the current org and a target org.
connection_id, region, data__dataUpdate an existing org connection.
connection_id, regionDelete an existing org connection.
+ +## Parameters + +Parameters can be passed 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 unique identifier of the org connection.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Returns a list of org connections. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.connections +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new org connection between the current org and a target org. + +```sql +INSERT INTO datadog.organization.connections ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update an existing org connection. + +```sql +UPDATE datadog.organization.connections +SET +data__data = '{{ data }}' +WHERE +connection_id = '{{ connection_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..f073477 --- /dev/null +++ b/website/docs/services/organization/cost_by_org/index.md @@ -0,0 +1,151 @@ +--- +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_application_keys/index.md b/website/docs/services/organization/current_user_application_keys/index.md new file mode 100644 index 0000000..39a3d29 --- /dev/null +++ b/website/docs/services/organization/current_user_application_keys/index.md @@ -0,0 +1,367 @@ +--- +title: current_user_application_keys +hide_title: false +hide_table_of_contents: false +keywords: + - current_user_application_keys + - 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 current_user_application_keys resource. + +## Overview + + + + +
Namecurrent_user_application_keys
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the application key.
objectAttributes of a full application key.
objectResources related to the application key.
stringApplication Keys resource type. (default: application_keys, example: application_keys)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the application key.
objectAttributes of a partial application key.
objectResources related to the application key.
stringApplication Keys resource type. (default: application_keys, example: application_keys)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_key_id, regionGet an application key owned by current user
regionpage[size], page[number], sort, filter, filter[created_at][start], filter[created_at][end], includeList all application keys available for current user
region, data__dataCreate an application key for current user
app_key_id, region, data__dataEdit an application key owned by current user
app_key_id, regionDelete an application key owned by 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
stringThe ID of the application key.
string(default: datadoghq.com)
stringFilter application keys by the specified string.
stringOnly include application keys created on or before the specified date.
stringOnly include application keys created on or after the specified date.
stringResource path for related resources to include in the response. Only `owned_by` is supported.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringApplication 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.
+ +## `SELECT` examples + + + + +Get an application key owned by current user + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.current_user_application_keys +WHERE app_key_id = '{{ app_key_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List all application keys available for current user + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.current_user_application_keys +WHERE region = '{{ region }}' -- required +AND 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 include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an application key for current user + +```sql +INSERT INTO datadog.organization.current_user_application_keys ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Edit an application key owned by current user + +```sql +UPDATE datadog.organization.current_user_application_keys +SET +data__data = '{{ data }}' +WHERE +app_key_id = '{{ app_key_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..85bf58b --- /dev/null +++ b/website/docs/services/organization/data_deletion_requests/index.md @@ -0,0 +1,265 @@ +--- +title: data_deletion_requests +hide_title: false +hide_table_of_contents: false +keywords: + - data_deletion_requests + - 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 data_deletion_requests resource. + +## Overview + + + + +
Namedata_deletion_requests
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the created data deletion request. (example: 1)
objectDeletion attribute for data deletion response.
stringThe type of the request created. (example: deletion_request)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionnext_page, product, query, status, page_sizeGets a list of data deletion requests based on several filter parameters.
product, region, data__dataCreates a data deletion request by providing a query and a timeframe targeting the proper data.
id, regionCancels a data deletion request by providing 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
stringID of the deletion request.
stringName of the product to be deleted, either `logs` or `rum`.
string(default: datadoghq.com)
stringThe next page of the previous search. If the next_page parameter is included, the rest of the query elements are ignored. (example: cGFnZTI=)
integer (int64)Sets the page size of the search. (example: 50)
stringRetrieve only the requests related to the given product. (example: logs)
stringRetrieve only the requests that matches the given query. (example: service:xyz host:abc)
stringRetrieve only the requests with the given status. (example: pending)
+ +## `SELECT` examples + + + + +Gets a list of data deletion requests based on several filter parameters. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.data_deletion_requests +WHERE region = '{{ region }}' -- required +AND next_page = '{{ next_page }}' +AND product = '{{ product }}' +AND query = '{{ query }}' +AND status = '{{ status }}' +AND page_size = '{{ page_size }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a data deletion request by providing a query and a timeframe targeting the proper data. + +```sql +INSERT INTO datadog.organization.data_deletion_requests ( +data__data, +product, +region +) +SELECT +'{{ data }}' /* required */, +'{{ product }}', +'{{ region }}' +RETURNING +data, +meta +; +``` + + + +```yaml +# 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 + description: Required parameter for the data_deletion_requests resource. + - name: data + value: object + description: | + Data needed to create a data deletion request. +``` + + + + +## Lifecycle Methods + + + + +Cancels a data deletion request by providing its ID. + +```sql +EXEC datadog.organization.data_deletion_requests.cancel_data_deletion_request +@id='{{ id }}' --required, +@region='{{ region }}' --required +; +``` + + diff --git a/website/docs/services/organization/domain_allowlist/index.md b/website/docs/services/organization/domain_allowlist/index.md new file mode 100644 index 0000000..d4c25a1 --- /dev/null +++ b/website/docs/services/organization/domain_allowlist/index.md @@ -0,0 +1,172 @@ +--- +title: domain_allowlist +hide_title: false +hide_table_of_contents: false +keywords: + - domain_allowlist + - 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 domain_allowlist resource. + +## Overview + + + + +
Namedomain_allowlist
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the org.
objectThe details of the email domain allowlist.
stringEmail domain allowlist allowlist type. (default: domain_allowlist, example: domain_allowlist)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionGet the domain allowlist for an organization.
region, data__dataUpdate the domain allowlist for an 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)
+ +## `SELECT` examples + + + + +Get the domain allowlist for an organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.domain_allowlist +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `UPDATE` examples + + + + +Update the domain allowlist for an organization. + +```sql +UPDATE datadog.organization.domain_allowlist +SET +data__data = '{{ data }}' +WHERE +region = '{{ region }}' --required +AND data__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 new file mode 100644 index 0000000..d9aeda5 --- /dev/null +++ b/website/docs/services/organization/estimated_cost_by_org/index.md @@ -0,0 +1,175 @@ +--- +title: estimated_cost_by_org +hide_title: false +hide_table_of_contents: false +keywords: + - estimated_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 an estimated_cost_by_org resource. + +## Overview + + + + +
Nameestimated_cost_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
regionview, start_month, end_month, start_date, end_date, include_connected_accountsGet 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/).
+ +## Parameters + +Parameters can be passed 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 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.
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 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.
stringString 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`.
+ +## `SELECT` examples + + + + +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/). + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.estimated_cost_by_org +WHERE region = '{{ region }}' -- required +AND view = '{{ view }}' +AND start_month = '{{ start_month }}' +AND end_month = '{{ end_month }}' +AND start_date = '{{ start_date }}' +AND end_date = '{{ end_date }}' +AND include_connected_accounts = '{{ include_connected_accounts }}' +; +``` +
+
diff --git a/website/docs/services/organization/historical_cost_by_org/index.md b/website/docs/services/organization/historical_cost_by_org/index.md new file mode 100644 index 0000000..e2c1432 --- /dev/null +++ b/website/docs/services/organization/historical_cost_by_org/index.md @@ -0,0 +1,163 @@ +--- +title: historical_cost_by_org +hide_title: false +hide_table_of_contents: false +keywords: + - historical_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 historical_cost_by_org resource. + +## Overview + + + + +
Namehistorical_cost_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, regionview, end_month, include_connected_accountsGet 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/).
+ +## Parameters + +Parameters can be passed 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.
booleanBoolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`.
stringString 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`.
+ +## `SELECT` examples + + + + +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/). + +```sql +SELECT +id, +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 new file mode 100644 index 0000000..b94d06d --- /dev/null +++ b/website/docs/services/organization/hourly_usage/index.md @@ -0,0 +1,193 @@ +--- +title: hourly_usage +hide_title: false +hide_table_of_contents: false +keywords: + - hourly_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 hourly_usage resource. + +## Overview + + + + +
Namehourly_usage
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique ID of the response.
objectAttributes of hourly usage for a product family for an org for a time period.
stringType of usage data. (default: usage_timeseries, example: usage_timeseries)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[timestamp][start], filter[product_families], regionfilter[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.
+ +## Parameters + +Parameters can be passed 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 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`.
string (date-time)Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.
string(default: datadoghq.com)
booleanInclude breakdown of usage by subcategories where applicable (for product family logs only). Defaults to false.
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 child org usage in the response. Defaults to false.
string (date-time)Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.
stringComma 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`.
integer (int32)Maximum number of results to return (between 1 and 500) - defaults to 500 if limit not specified.
stringList following results with a next_record_id provided in the previous query.
+ +## `SELECT` examples + + + + +Get hourly usage by product family. + +```sql +SELECT +id, +attributes, +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] }}' +AND filter[include_breakdown] = '{{ filter[include_breakdown] }}' +AND filter[versions] = '{{ filter[versions] }}' +AND page[limit] = '{{ page[limit] }}' +AND page[next_record_id] = '{{ page[next_record_id] }}' +; +``` + + diff --git a/website/docs/services/organization/idp_metadata/index.md b/website/docs/services/organization/idp_metadata/index.md new file mode 100644 index 0000000..dd35d25 --- /dev/null +++ b/website/docs/services/organization/idp_metadata/index.md @@ -0,0 +1,105 @@ +--- +title: idp_metadata +hide_title: false +hide_table_of_contents: false +keywords: + - idp_metadata + - 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 idp_metadata resource. + +## Overview + + + + +
Nameidp_metadata
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
regionEndpoint for uploading IdP metadata for SAML setup.

Use this endpoint to upload or replace IdP metadata for SAML login 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
string(default: datadoghq.com)
+ +## Lifecycle Methods + + + + +Endpoint for uploading IdP metadata for SAML setup.

Use this endpoint to upload or replace IdP metadata for SAML login configuration. + +```sql +EXEC datadog.organization.idp_metadata.upload_id_pmetadata +@region='{{ region }}' --required +@@json= +'{ +"idp_file": "{{ idp_file }}" +}' +; +``` +
+
diff --git a/website/docs/services/organization/index.md b/website/docs/services/organization/index.md new file mode 100644 index 0000000..9ae1ffa --- /dev/null +++ b/website/docs/services/organization/index.md @@ -0,0 +1,68 @@ +--- +title: organization +hide_title: false +hide_table_of_contents: false +keywords: + - organization + - 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 +--- + +organization service documentation. + +:::info[Service Summary] + +total resources: __37__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/organization/invitations/index.md b/website/docs/services/organization/invitations/index.md new file mode 100644 index 0000000..a0f4f8b --- /dev/null +++ b/website/docs/services/organization/invitations/index.md @@ -0,0 +1,183 @@ +--- +title: invitations +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an invitations resource. + +## Overview + + + + +
Nameinvitations
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the user invitation.
objectAttributes of a user invitation.
objectRelationships data for user invitation.
stringUser invitations type. (default: user_invitations, example: user_invitations)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_invitation_uuid, regionReturns a single user invitation by its UUID.
region, dataSends emails to one or more users inviting them to join 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
string(default: datadoghq.com)
stringThe UUID of the user invitation.
+ +## `SELECT` examples + + + + +Returns a single user invitation by its UUID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.invitations +WHERE user_invitation_uuid = '{{ user_invitation_uuid }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## Lifecycle Methods + + + + +Sends emails to one or more users inviting them to join the organization. + +```sql +EXEC datadog.organization.invitations.send_invitations +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/organization/ip_allowlist/index.md b/website/docs/services/organization/ip_allowlist/index.md new file mode 100644 index 0000000..e1fa0d4 --- /dev/null +++ b/website/docs/services/organization/ip_allowlist/index.md @@ -0,0 +1,172 @@ +--- +title: ip_allowlist +hide_title: false +hide_table_of_contents: false +keywords: + - ip_allowlist + - 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 ip_allowlist resource. + +## Overview + + + + +
Nameip_allowlist
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the org.
objectAttributes of the IP allowlist.
stringIP allowlist type. (default: ip_allowlist, example: ip_allowlist)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionReturns the IP allowlist and its enabled or disabled state.
region, data__dataEdit the entries in the IP allowlist, and enable or disable 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
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Returns the IP allowlist and its enabled or disabled state. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.ip_allowlist +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `UPDATE` examples + + + + +Edit the entries in the IP allowlist, and enable or disable it. + +```sql +UPDATE datadog.organization.ip_allowlist +SET +data__data = '{{ data }}' +WHERE +region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/organization/lambda_traced_invocations_usage/index.md b/website/docs/services/organization/lambda_traced_invocations_usage/index.md new file mode 100644 index 0000000..992969b --- /dev/null +++ b/website/docs/services/organization/lambda_traced_invocations_usage/index.md @@ -0,0 +1,151 @@ +--- +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/observability_pipelines_usage/index.md b/website/docs/services/organization/observability_pipelines_usage/index.md new file mode 100644 index 0000000..aa17b01 --- /dev/null +++ b/website/docs/services/organization/observability_pipelines_usage/index.md @@ -0,0 +1,151 @@ +--- +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/permissions/index.md b/website/docs/services/organization/permissions/index.md new file mode 100644 index 0000000..614f184 --- /dev/null +++ b/website/docs/services/organization/permissions/index.md @@ -0,0 +1,139 @@ +--- +title: permissions +hide_title: false +hide_table_of_contents: false +keywords: + - permissions + - 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 permissions resource. + +## Overview + + + + +
Namepermissions
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the permission.
objectAttributes of a permission.
stringPermissions resource type. (default: permissions, example: permissions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionReturns a list of all permissions, including name, description, and 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(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Returns a list of all permissions, including name, description, and ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.permissions +WHERE region = '{{ region }}' -- required +; +``` + + diff --git a/website/docs/services/organization/projected_cost/index.md b/website/docs/services/organization/projected_cost/index.md new file mode 100644 index 0000000..222489d --- /dev/null +++ b/website/docs/services/organization/projected_cost/index.md @@ -0,0 +1,151 @@ +--- +title: projected_cost +hide_title: false +hide_table_of_contents: false +keywords: + - projected_cost + - 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 projected_cost resource. + +## Overview + + + + +
Nameprojected_cost
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique ID of the response.
objectProjected Cost attributes data.
stringType of cost data. (default: projected_cost, example: projected_cost)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionview, include_connected_accountsGet 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/).
+ +## Parameters + +Parameters can be passed 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)
booleanBoolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`.
stringString 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`.
+ +## `SELECT` examples + + + + +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/). + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.projected_cost +WHERE region = '{{ region }}' -- required +AND 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 new file mode 100644 index 0000000..e7ccc4f --- /dev/null +++ b/website/docs/services/organization/restriction_policies/index.md @@ -0,0 +1,214 @@ +--- +title: restriction_policies +hide_title: false +hide_table_of_contents: false +keywords: + - restriction_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a restriction_policies resource. + +## Overview + + + + +
Namerestriction_policies
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier, always equivalent to the value specified in the `resource_id` path parameter. (example: dashboard:abc-def-ghi)
objectRestriction policy attributes.
stringRestriction policy type. (default: restriction_policy, example: restriction_policy)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
resource_id, regionRetrieves the restriction policy associated with a specified resource.
resource_id, region, data__dataallow_self_lockoutUpdates 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`
resource_id, regionDeletes the restriction policy associated with a specified resource.
+ +## Parameters + +Parameters can be passed 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)
stringIdentifier, 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)
booleanAllows 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.
+ +## `SELECT` examples + + + + +Retrieves the restriction policy associated with a specified resource. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.restriction_policies +WHERE resource_id = '{{ resource_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `REPLACE` examples + + + + +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` + +```sql +REPLACE datadog.organization.restriction_policies +SET +data__data = '{{ data }}' +WHERE +resource_id = '{{ resource_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +AND allow_self_lockout = {{ allow_self_lockout}} +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..4626ab4 --- /dev/null +++ b/website/docs/services/organization/role_permissions/index.md @@ -0,0 +1,249 @@ +--- +title: role_permissions +hide_title: false +hide_table_of_contents: false +keywords: + - role_permissions + - 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 role_permissions resource. + +## Overview + + + + +
Namerole_permissions
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the permission.
objectAttributes of a permission.
stringPermissions resource type. (default: permissions, example: permissions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
role_id, regionReturns a list of all permissions for a single role.
role_id, regionAdds a permission to a role.
role_id, regionRemoves a permission from a role.
role_id, regionRemoves a user from a role.
+ +## Parameters + +Parameters can be passed 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 unique identifier of the role.
+ +## `SELECT` examples + + + + +Returns a list of all permissions for a single role. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.role_permissions +WHERE role_id = '{{ role_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Adds a permission to a role. + +```sql +INSERT INTO datadog.organization.role_permissions ( +data__data, +role_id, +region +) +SELECT +'{{ data }}', +'{{ role_id }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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 + description: Required parameter for the role_permissions resource. + - name: data + value: object + description: | + Relationship to permission object. +``` + + + + +## `DELETE` examples + + + + +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_users/index.md b/website/docs/services/organization/role_users/index.md new file mode 100644 index 0000000..5843865 --- /dev/null +++ b/website/docs/services/organization/role_users/index.md @@ -0,0 +1,233 @@ +--- +title: role_users +hide_title: false +hide_table_of_contents: false +keywords: + - role_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a role_users resource. + +## Overview + + + + +
Namerole_users
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. (default: users, example: users)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
role_id, regionpage[size], page[number], sort, filterGets all users of a role.
role_id, region, data__dataAdds a user to a role.
+ +## Parameters + +Parameters can be passed 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 unique identifier of the role.
stringFilter all users by the given string. Defaults to no filtering.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringUser 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`.
+ +## `SELECT` examples + + + + +Gets all users of a role. + +```sql +SELECT +id, +attributes, +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 }}' +AND filter = '{{ filter }}' +; +``` + + + + +## `INSERT` examples + + + + +Adds a user to a role. + +```sql +INSERT INTO datadog.organization.role_users ( +data__data, +role_id, +region +) +SELECT +'{{ data }}' /* required */, +'{{ role_id }}', +'{{ region }}' +RETURNING +data, +included, +meta +; +``` + + + +```yaml +# 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 + description: Required parameter for the role_users resource. + - name: data + value: object + description: | + Relationship to user object. +``` + + diff --git a/website/docs/services/organization/roles/index.md b/website/docs/services/organization/roles/index.md new file mode 100644 index 0000000..dcd9c19 --- /dev/null +++ b/website/docs/services/organization/roles/index.md @@ -0,0 +1,386 @@ +--- +title: roles +hide_title: false +hide_table_of_contents: false +keywords: + - roles + - 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 roles resource. + +## Overview + + + + +
Nameroles
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the role.
objectAttributes of the role.
objectRelationships of the role object returned by the API.
stringRoles type. (default: roles, example: roles)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the role.
objectAttributes of the role.
objectRelationships of the role object returned by the API.
stringRoles type. (default: roles, example: roles)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
role_id, regionGet a role in the organization specified by the role’s `role_id`.
regionpage[size], page[number], sort, filter, filter[id]Returns all roles, including their names and their unique identifiers.
region, data__dataCreate a new role for your organization.
role_id, region, data__dataEdit a role. Can only be used with application keys belonging to administrators.
role_id, regionDisables a role.
role_id, region, dataClone an existing role
+ +## Parameters + +Parameters can be passed 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 unique identifier of the role.
stringFilter all roles by the given string.
stringFilter all roles by the given list of role IDs.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringSort 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`.
+ +## `SELECT` examples + + + + +Get a role in the organization specified by the role’s `role_id`. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.roles +WHERE role_id = '{{ role_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Returns all roles, including their names and their unique identifiers. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.roles +WHERE region = '{{ region }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND sort = '{{ sort }}' +AND filter = '{{ filter }}' +AND filter[id] = '{{ filter[id] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new role for your organization. + +```sql +INSERT INTO datadog.organization.roles ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Edit a role. Can only be used with application keys belonging to administrators. + +```sql +UPDATE datadog.organization.roles +SET +data__data = '{{ data }}' +WHERE +role_id = '{{ role_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Disables a role. + +```sql +DELETE FROM datadog.organization.roles +WHERE role_id = '{{ role_id }}' --required +AND region = '{{ region }}' --required +; +``` + + + + +## Lifecycle Methods + + + + +Clone an existing role + +```sql +EXEC datadog.organization.roles.clone_role +@role_id='{{ role_id }}' --required, +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/organization/service_account_keys/index.md b/website/docs/services/organization/service_account_keys/index.md new file mode 100644 index 0000000..49e7402 --- /dev/null +++ b/website/docs/services/organization/service_account_keys/index.md @@ -0,0 +1,375 @@ +--- +title: service_account_keys +hide_title: false +hide_table_of_contents: false +keywords: + - service_account_keys + - 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 service_account_keys resource. + +## Overview + + + + +
Nameservice_account_keys
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the application key.
objectAttributes of a partial application key.
objectResources related to the application key.
stringApplication Keys resource type. (default: application_keys, example: application_keys)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the application key.
objectAttributes of a partial application key.
objectResources related to the application key.
stringApplication Keys resource type. (default: application_keys, example: application_keys)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
service_account_id, app_key_id, regionGet an application key owned by this service account.
service_account_id, regionpage[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__dataCreate an application key for this service account.
service_account_id, app_key_id, region, data__dataEdit an application key owned by this service account.
service_account_id, app_key_id, regionDelete an application key owned by this 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 application key.
string(default: datadoghq.com)
stringThe ID of the service account.
stringFilter application keys by the specified string.
stringOnly include application keys created on or before the specified date.
stringOnly include application keys created on or after the specified date.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringApplication 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.
+ +## `SELECT` examples + + + + +Get an application key owned by this service account. + +```sql +SELECT +id, +attributes, +relationships, +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 +; +``` + + + +List all application keys available for this service account. + +```sql +SELECT +id, +attributes, +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 }}' +AND filter = '{{ filter }}' +AND filter[created_at][start] = '{{ filter[created_at][start] }}' +AND filter[created_at][end] = '{{ filter[created_at][end] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an application key for this service account. + +```sql +INSERT INTO datadog.organization.service_account_keys ( +data__data, +service_account_id, +region +) +SELECT +'{{ data }}' /* required */, +'{{ service_account_id }}', +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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 + description: Required parameter for the service_account_keys resource. + - name: data + value: object + description: | + Object used to create an application key. +``` + + + + +## `UPDATE` examples + + + + +Edit an application key owned by this service account. + +```sql +UPDATE datadog.organization.service_account_keys +SET +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 +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete an application key owned by this service account. + +```sql +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 new file mode 100644 index 0000000..f518908 --- /dev/null +++ b/website/docs/services/organization/service_accounts/index.md @@ -0,0 +1,125 @@ +--- +title: service_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - service_accounts + - 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 service_accounts resource. + +## Overview + + + + +
Nameservice_accounts
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__dataCreate a service account 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
string(default: datadoghq.com)
+ +## `INSERT` examples + + + + +Create a service account for your organization. + +```sql +INSERT INTO datadog.organization.service_accounts ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. +``` + + diff --git a/website/docs/services/organization/team_links/index.md b/website/docs/services/organization/team_links/index.md new file mode 100644 index 0000000..9411ad0 --- /dev/null +++ b/website/docs/services/organization/team_links/index.md @@ -0,0 +1,325 @@ +--- +title: team_links +hide_title: false +hide_table_of_contents: false +keywords: + - team_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a team_links resource. + +## Overview + + + + +
Nameteam_links
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe team link's identifier (example: b8626d7e-cedd-11eb-abf5-da7ad0900001)
objectTeam link attributes
stringTeam link type (default: team_links, example: team_links)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe team link's identifier (example: b8626d7e-cedd-11eb-abf5-da7ad0900001)
objectTeam link attributes
stringTeam link type (default: team_links, example: team_links)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
team_id, link_id, regionGet a single link for a team.
team_id, regionGet all links for a given team.
team_id, region, data__dataAdd a new link to a team.
team_id, link_id, region, data__dataUpdate a team link.
team_id, link_id, regionRemove a link from a 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)
stringNone
+ +## `SELECT` examples + + + + +Get a single link for a team. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.team_links +WHERE team_id = '{{ team_id }}' -- required +AND link_id = '{{ link_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get all links for a given team. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.team_links +WHERE team_id = '{{ team_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Add a new link to a team. + +```sql +INSERT INTO datadog.organization.team_links ( +data__data, +team_id, +region +) +SELECT +'{{ data }}' /* required */, +'{{ team_id }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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 + description: Required parameter for the team_links resource. + - name: data + value: object + description: | + Team link create +``` + + + + +## `UPDATE` examples + + + + +Update a team link. + +```sql +UPDATE datadog.organization.team_links +SET +data__data = '{{ data }}' +WHERE +team_id = '{{ team_id }}' --required +AND link_id = '{{ link_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Remove a link from a team. + +```sql +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 new file mode 100644 index 0000000..135fd63 --- /dev/null +++ b/website/docs/services/organization/team_members/index.md @@ -0,0 +1,258 @@ +--- +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 new file mode 100644 index 0000000..5173be8 --- /dev/null +++ b/website/docs/services/organization/team_memberships/index.md @@ -0,0 +1,305 @@ +--- +title: team_memberships +hide_title: false +hide_table_of_contents: false +keywords: + - team_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a team_memberships resource. + +## Overview + + + + +
Nameteam_memberships
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Represents a user's association to a team + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of a user's relationship with a team (example: TeamMembership-aeadc05e-98a8-11ec-ac2c-da7ad0900001-38835)
objectTeam membership attributes
objectRelationship between membership and a user
stringTeam membership type (default: team_memberships, example: team_memberships)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
team_id, regionpage[size], page[number], sort, filter[keyword]Get a paginated list of members for a team
team_id, region, data__dataAdd a user to a team.
team_id, user_id, region, data__dataUpdate a user's membership attributes on a team.
team_id, user_id, regionRemove a user from a 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)
stringNone
stringNone
stringSearch query, can be user email or name
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringSpecifies the order of returned team memberships
+ +## `SELECT` examples + + + + +Get a paginated list of members for a team + +```sql +SELECT +id, +attributes, +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 }}' +AND filter[keyword] = '{{ filter[keyword] }}' +; +``` + + + + +## `INSERT` examples + + + + +Add a user to a team. + +```sql +INSERT INTO datadog.organization.team_memberships ( +data__data, +team_id, +region +) +SELECT +'{{ data }}' /* required */, +'{{ team_id }}', +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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 + description: Required parameter for the team_memberships resource. + - name: data + value: object + description: | + A user's relationship with a team +``` + + + + +## `UPDATE` examples + + + + +Update a user's membership attributes on a team. + +```sql +UPDATE datadog.organization.team_memberships +SET +data__data = '{{ data }}' +WHERE +team_id = '{{ team_id }}' --required +AND user_id = '{{ user_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Remove a user from a team. + +```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_permission_settings/index.md b/website/docs/services/organization/team_permission_settings/index.md new file mode 100644 index 0000000..a146d95 --- /dev/null +++ b/website/docs/services/organization/team_permission_settings/index.md @@ -0,0 +1,185 @@ +--- +title: team_permission_settings +hide_title: false +hide_table_of_contents: false +keywords: + - team_permission_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a team_permission_settings resource. + +## Overview + + + + +
Nameteam_permission_settings
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe team permission setting's identifier (example: TeamPermission-aeadc05e-98a8-11ec-ac2c-da7ad0900001-edit)
objectTeam permission setting attributes
stringTeam permission setting type (default: team_permission_settings, example: team_permission_settings)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
team_id, regionGet all permission settings for a given team.
team_id, action, region, data__dataUpdate a team permission setting for a given 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
stringNone
string(default: datadoghq.com)
stringNone
+ +## `SELECT` examples + + + + +Get all permission settings for a given team. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.team_permission_settings +WHERE team_id = '{{ team_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `REPLACE` examples + + + + +Update a team permission setting for a given team. + +```sql +REPLACE datadog.organization.team_permission_settings +SET +data__data = '{{ data }}' +WHERE +team_id = '{{ team_id }}' --required +AND action = '{{ action }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/organization/teams/index.md b/website/docs/services/organization/teams/index.md new file mode 100644 index 0000000..923de0f --- /dev/null +++ b/website/docs/services/organization/teams/index.md @@ -0,0 +1,397 @@ +--- +title: teams +hide_title: false +hide_table_of_contents: false +keywords: + - teams + - 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 teams resource. + +## Overview + + + + +
Nameteams
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)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
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
team_id, regionGet a single team using the team's `id`.
regionpage[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.
region, data__dataCreate a new team.
User IDs passed through the `users` relationship field are added to the team.
team_id, region, data__dataUpdate 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.
team_id, regionRemove a team using the team's `id`.
region, dataThis 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.
+ +## Parameters + +Parameters can be passed 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)
stringNone
arrayList of fields that need to be fetched.
stringSearch query. Can be team name, team handle, or email of team member
booleanWhen true, only returns teams the current user belongs to
arrayIncluded related resources optionally requested. Allowed enum values: `team_links, user_team_permissions`
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringSpecifies the order of the returned teams
+ +## `SELECT` examples + + + + +Get a single team using the team's `id`. + +```sql +SELECT +id, +attributes, +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. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.teams +WHERE region = '{{ region }}' -- required +AND page[number] = '{{ page[number] }}' +AND page[size] = '{{ page[size] }}' +AND sort = '{{ sort }}' +AND include = '{{ include }}' +AND filter[keyword] = '{{ filter[keyword] }}' +AND filter[me] = '{{ filter[me] }}' +AND fields[team] = '{{ fields[team] }}' +; +``` +
+
+ + +## `INSERT` examples + + + + +Create a new team.
User IDs passed through the `users` relationship field are added to the team. + +```sql +INSERT INTO datadog.organization.teams ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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 +``` + +
+ + +## `UPDATE` examples + + + + +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. + +```sql +UPDATE datadog.organization.teams +SET +data__data = '{{ data }}' +WHERE +team_id = '{{ team_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +Remove a team using the team's `id`. + +```sql +DELETE FROM datadog.organization.teams +WHERE team_id = '{{ team_id }}' --required +AND region = '{{ region }}' --required +; +``` + + + + +## Lifecycle Methods + + + + +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. + +```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 new file mode 100644 index 0000000..b089385 --- /dev/null +++ b/website/docs/services/organization/usage_application_security_monitoring/index.md @@ -0,0 +1,151 @@ +--- +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/user_organizations/index.md b/website/docs/services/organization/user_organizations/index.md new file mode 100644 index 0000000..bb3d74a --- /dev/null +++ b/website/docs/services/organization/user_organizations/index.md @@ -0,0 +1,151 @@ +--- +title: user_organizations +hide_title: false +hide_table_of_contents: false +keywords: + - user_organizations + - 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 user_organizations resource. + +## Overview + + + + +
Nameuser_organizations
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. (default: users, example: users)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_id, regionGet a user organization. Returns the user information and all organizations
joined by this 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
string(default: datadoghq.com)
stringThe ID of the user.
+ +## `SELECT` examples + + + + +Get a user organization. Returns the user information and all organizations
joined by this user. + +```sql +SELECT +id, +attributes, +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 new file mode 100644 index 0000000..95ef099 --- /dev/null +++ b/website/docs/services/organization/user_permissions/index.md @@ -0,0 +1,145 @@ +--- +title: user_permissions +hide_title: false +hide_table_of_contents: false +keywords: + - user_permissions + - 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 user_permissions resource. + +## Overview + + + + +
Nameuser_permissions
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the permission.
objectAttributes of a permission.
stringPermissions resource type. (default: permissions, example: permissions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_id, regionGet a user permission set. Returns a list of the user’s permissions
granted by the associated user's roles.
+ +## Parameters + +Parameters can be passed 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 user.
+ +## `SELECT` examples + + + + +Get a user permission set. Returns a list of the user’s permissions
granted by the associated user's roles. + +```sql +SELECT +id, +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_team_memberships/index.md b/website/docs/services/organization/user_team_memberships/index.md new file mode 100644 index 0000000..efbb9de --- /dev/null +++ b/website/docs/services/organization/user_team_memberships/index.md @@ -0,0 +1,153 @@ +--- +title: user_team_memberships +hide_title: false +hide_table_of_contents: false +keywords: + - user_team_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a user_team_memberships resource. + +## Overview + + + + +
Nameuser_team_memberships
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Represents a user's association to a team + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of a user's relationship with a team (example: TeamMembership-aeadc05e-98a8-11ec-ac2c-da7ad0900001-38835)
objectTeam membership attributes
objectRelationship between membership and a user
stringTeam membership type (default: team_memberships, example: team_memberships)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_uuid, regionGet a list of memberships for a 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
string(default: datadoghq.com)
stringNone
+ +## `SELECT` examples + + + + +Get a list of memberships for a user + +```sql +SELECT +id, +attributes, +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 new file mode 100644 index 0000000..dea3f62 --- /dev/null +++ b/website/docs/services/organization/users/index.md @@ -0,0 +1,361 @@ +--- +title: users +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a users resource. + +## Overview + + + + +
Nameusers
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. (default: users, example: users)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
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. (default: users, example: users)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_id, regionGet a user in the organization specified by the user’s `user_id`.
regionpage[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.
region, data__dataCreate a user for your organization.
user_id, region, data__dataEdit a user. Can only be used with an application key belonging
to an administrator user.
user_id, regionDisable a user. Can only be used with an application key belonging
to an administrator 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
string(default: datadoghq.com)
stringThe ID of the user.
stringFilter all 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)Size for a given page. The maximum allowed value is 100.
stringUser 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`.
stringDirection of sort. Options: `asc`, `desc`.
+ +## `SELECT` examples + + + + +Get a user in the organization specified by the user’s `user_id`. + +```sql +SELECT +id, +attributes, +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. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.users +WHERE region = '{{ region }}' -- 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] }}' +; +``` +
+
+ + +## `INSERT` examples + + + + +Create a user for your organization. + +```sql +INSERT INTO datadog.organization.users ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Edit a user. Can only be used with an application key belonging
to an administrator user. + +```sql +UPDATE datadog.organization.users +SET +data__data = '{{ data }}' +WHERE +user_id = '{{ user_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data, +included; +``` +
+
+ + +## Lifecycle Methods + + + + +Disable a user. Can only be used with an application key belonging
to an administrator user. + +```sql +EXEC datadog.organization.users.disable_user +@user_id='{{ user_id }}' --required, +@region='{{ region }}' --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 new file mode 100644 index 0000000..2d3f05f --- /dev/null +++ b/website/docs/services/remote_config/csm_threats_agent_policies/index.md @@ -0,0 +1,339 @@ +--- +title: csm_threats_agent_policies +hide_title: false +hide_table_of_contents: false +keywords: + - csm_threats_agent_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_threats_agent_policies resource. + +## Overview + + + + +
Namecsm_threats_agent_policies
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent policy (example: 6517fcc1-cec7-4394-a655-8d6e9d085255)
objectA Cloud Workload Security Agent policy returned by the API
stringThe type of the resource, must always be `policy` (default: policy, example: policy)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent policy (example: 6517fcc1-cec7-4394-a655-8d6e9d085255)
objectA Cloud Workload Security Agent policy returned by the API
stringThe type of the resource, must always be `policy` (default: policy, example: policy)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
policy_id, regionGet 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.
regionGet 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.
region, data__dataCreate 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.
policy_id, region, data__dataUpdate 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.
policy_id, regionDelete 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.
regionThe 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.
+ +## Parameters + +Parameters can be passed in 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 policy (example: 6517fcc1-cec7-4394-a655-8d6e9d085255)
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +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. + +```sql +SELECT +id, +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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.remote_config.csm_threats_agent_policies +WHERE region = '{{ region }}' -- required +; +``` +
+
+ + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.remote_config.csm_threats_agent_policies ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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 +``` + +
+ + +## `UPDATE` examples + + + + +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. + +```sql +UPDATE datadog.remote_config.csm_threats_agent_policies +SET +data__data = '{{ data }}' +WHERE +policy_id = '{{ policy_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +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. + +```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 new file mode 100644 index 0000000..5251659 --- /dev/null +++ b/website/docs/services/remote_config/csm_threats_agent_rules/index.md @@ -0,0 +1,320 @@ +--- +title: csm_threats_agent_rules +hide_title: false +hide_table_of_contents: false +keywords: + - csm_threats_agent_rules + - 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 a csm_threats_agent_rules resource. + +## Overview + + + + +
Namecsm_threats_agent_rules
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent rule (example: 3dd-0uc-h1s)
objectA Cloud Workload Security Agent rule returned by the API
stringThe type of the resource, must always be `agent_rule` (default: agent_rule, example: agent_rule)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent rule (example: 3dd-0uc-h1s)
objectA Cloud Workload Security Agent rule returned by the API
stringThe type of the resource, must always be `agent_rule` (default: agent_rule, example: agent_rule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
agent_rule_id, regionpolicy_idGet 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.
regionpolicy_idGet 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.
region, data__dataCreate 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.
agent_rule_id, region, data__datapolicy_idUpdate 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.
agent_rule_id, regionpolicy_idDelete 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.
+ +## Parameters + +Parameters can be passed in 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 rule (example: 3b5-v82-ns6)
string(default: datadoghq.com)
stringThe ID of the Agent policy (example: 6517fcc1-cec7-4394-a655-8d6e9d085255)
+ +## `SELECT` examples + + + + +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. + +```sql +SELECT +id, +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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.remote_config.csm_threats_agent_rules +WHERE region = '{{ region }}' -- required +AND policy_id = '{{ policy_id }}' +; +``` +
+
+ + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.remote_config.csm_threats_agent_rules ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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 +``` + +
+ + +## `UPDATE` examples + + + + +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. + +```sql +UPDATE datadog.remote_config.csm_threats_agent_rules +SET +data__data = '{{ data }}' +WHERE +agent_rule_id = '{{ agent_rule_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +AND policy_id = '{{ policy_id}}' +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +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. + +```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 new file mode 100644 index 0000000..8386bf5 --- /dev/null +++ b/website/docs/services/remote_config/index.md @@ -0,0 +1,36 @@ +--- +title: remote_config +hide_title: false +hide_table_of_contents: false +keywords: + - remote_config + - 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 +--- + +remote_config service documentation. + +:::info[Service Summary] + +total resources: __5__ + +::: + +## Resources + \ 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 new file mode 100644 index 0000000..fc28c38 --- /dev/null +++ b/website/docs/services/remote_config/observability_pipelines/index.md @@ -0,0 +1,355 @@ +--- +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/waf_custom_rules/index.md b/website/docs/services/remote_config/waf_custom_rules/index.md new file mode 100644 index 0000000..fa6c34b --- /dev/null +++ b/website/docs/services/remote_config/waf_custom_rules/index.md @@ -0,0 +1,311 @@ +--- +title: waf_custom_rules +hide_title: false +hide_table_of_contents: false +keywords: + - waf_custom_rules + - 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 a waf_custom_rules resource. + +## Overview + + + + +
Namewaf_custom_rules
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the custom rule. (example: 2857c47d-1e3a-4300-8b2f-dc24089c084b)
objectA WAF custom rule.
stringThe type of the resource. The value should always be `custom_rule`. (default: custom_rule, example: custom_rule)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the custom rule. (example: 2857c47d-1e3a-4300-8b2f-dc24089c084b)
objectA WAF custom rule.
stringThe type of the resource. The value should always be `custom_rule`. (default: custom_rule, example: custom_rule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
custom_rule_id, regionRetrieve a WAF custom rule by ID.
regionRetrieve a list of WAF custom rule.
region, data__dataCreate a new WAF custom rule with the given parameters.
custom_rule_id, region, data__dataUpdate a specific WAF custom Rule.
Returns the Custom Rule object when the request is successful.
custom_rule_id, regionDelete a specific WAF 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 ID of the custom rule. (example: 3b5-v82-ns6)
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Retrieve a WAF custom rule by ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.remote_config.waf_custom_rules +WHERE custom_rule_id = '{{ custom_rule_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Retrieve a list of WAF custom rule. + +```sql +SELECT +id, +attributes, +type +FROM datadog.remote_config.waf_custom_rules +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new WAF custom rule with the given parameters. + +```sql +INSERT INTO datadog.remote_config.waf_custom_rules ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `REPLACE` examples + + + + +Update a specific WAF custom Rule.
Returns the Custom Rule object when the request is successful. + +```sql +REPLACE datadog.remote_config.waf_custom_rules +SET +data__data = '{{ data }}' +WHERE +custom_rule_id = '{{ custom_rule_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..aec1275 --- /dev/null +++ b/website/docs/services/remote_config/waf_exclusion_filters/index.md @@ -0,0 +1,311 @@ +--- +title: waf_exclusion_filters +hide_title: false +hide_table_of_contents: false +keywords: + - waf_exclusion_filters + - 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 a waf_exclusion_filters resource. + +## Overview + + + + +
Namewaf_exclusion_filters
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the WAF exclusion filter. (example: 3dd-0uc-h1s)
objectAttributes describing a WAF exclusion filter.
stringType of the resource. The value should always be `exclusion_filter`. (default: exclusion_filter, example: exclusion_filter)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the WAF exclusion filter. (example: 3dd-0uc-h1s)
objectAttributes describing a WAF exclusion filter.
stringType of the resource. The value should always be `exclusion_filter`. (default: exclusion_filter, example: exclusion_filter)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
exclusion_filter_id, regionRetrieve a specific WAF exclusion filter using its identifier.
regionRetrieve a list of WAF exclusion filters.
region, data__dataCreate 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).
exclusion_filter_id, region, data__dataUpdate a specific WAF exclusion filter using its identifier.
Returns the exclusion filter object when the request is successful.
exclusion_filter_id, regionDelete a specific WAF exclusion filter using its 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 identifier of the WAF exclusion filter. (example: 3b5-v82-ns6)
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Retrieve a specific WAF exclusion filter using its identifier. + +```sql +SELECT +id, +attributes, +type +FROM datadog.remote_config.waf_exclusion_filters +WHERE exclusion_filter_id = '{{ exclusion_filter_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Retrieve a list of WAF exclusion filters. + +```sql +SELECT +id, +attributes, +type +FROM datadog.remote_config.waf_exclusion_filters +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +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). + +```sql +INSERT INTO datadog.remote_config.waf_exclusion_filters ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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. +``` + +
+ + +## `REPLACE` examples + + + + +Update a specific WAF exclusion filter using its identifier.
Returns the exclusion filter object when the request is successful. + +```sql +REPLACE datadog.remote_config.waf_exclusion_filters +SET +data__data = '{{ data }}' +WHERE +exclusion_filter_id = '{{ exclusion_filter_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +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/security/aws_on_demand_tasks/index.md b/website/docs/services/security/aws_on_demand_tasks/index.md new file mode 100644 index 0000000..f5c245e --- /dev/null +++ b/website/docs/services/security/aws_on_demand_tasks/index.md @@ -0,0 +1,250 @@ +--- +title: aws_on_demand_tasks +hide_title: false +hide_table_of_contents: false +keywords: + - aws_on_demand_tasks + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_on_demand_tasks resource. + +## Overview + + + + +
Nameaws_on_demand_tasks
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +OK. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the task. (example: 6d09294c-9ad9-42fd-a759-a0c1599b4828)
objectAttributes for the AWS on demand task.
stringThe type of the on demand task. The value should always be `aws_resource`. (default: aws_resource, example: aws_resource)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the task. (example: 6d09294c-9ad9-42fd-a759-a0c1599b4828)
objectAttributes for the AWS on demand task.
stringThe type of the on demand task. The value should always be `aws_resource`. (default: aws_resource, example: aws_resource)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
task_id, regionFetch the data of a specific on demand task.
regionFetches the most recent 1000 AWS on demand tasks.
region, data__dataTrigger the scan of an AWS resource with a high priority. Agentless scanning must be activated for the AWS account containing the resource to scan.
+ +## Parameters + +Parameters can be passed 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 UUID of the task. (example: 6d09294c-9ad9-42fd-a759-a0c1599b4828)
+ +## `SELECT` examples + + + + +Fetch the data of a specific on demand task. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.aws_on_demand_tasks +WHERE task_id = '{{ task_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Fetches the most recent 1000 AWS on demand tasks. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.aws_on_demand_tasks +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.security.aws_on_demand_tasks ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + diff --git a/website/docs/services/security/aws_scan_options/index.md b/website/docs/services/security/aws_scan_options/index.md new file mode 100644 index 0000000..90f2935 --- /dev/null +++ b/website/docs/services/security/aws_scan_options/index.md @@ -0,0 +1,309 @@ +--- +title: aws_scan_options +hide_title: false +hide_table_of_contents: false +keywords: + - aws_scan_options + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_scan_options resource. + +## Overview + + + + +
Nameaws_scan_options
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the AWS account. (example: 184366314700)
objectAttributes for the AWS scan options.
stringThe type of the resource. The value should always be `aws_scan_options`. (default: aws_scan_options, example: aws_scan_options)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the AWS account. (example: 184366314700)
objectAttributes for the AWS scan options.
stringThe type of the resource. The value should always be `aws_scan_options`. (default: aws_scan_options, example: aws_scan_options)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
account_id, regionFetches the Agentless scan options for an activated account.
regionFetches the scan options configured for AWS accounts.
region, data__dataActivate Agentless scan options for an AWS account.
account_id, region, data__dataUpdate the Agentless scan options for an activated account.
account_id, regionDelete Agentless scan options for an AWS 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 an AWS account. (example: 123456789012)
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Fetches the Agentless scan options for an activated account. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.aws_scan_options +WHERE account_id = '{{ account_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Fetches the scan options configured for AWS accounts. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.aws_scan_options +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Activate Agentless scan options for an AWS account. + +```sql +INSERT INTO datadog.security.aws_scan_options ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update the Agentless scan options for an activated account. + +```sql +UPDATE datadog.security.aws_scan_options +SET +data__data = '{{ data }}' +WHERE +account_id = '{{ account_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..96067b8 --- /dev/null +++ b/website/docs/services/security/cloud_workload_security_agent_rules/index.md @@ -0,0 +1,339 @@ +--- +title: cloud_workload_security_agent_rules +hide_title: false +hide_table_of_contents: false +keywords: + - cloud_workload_security_agent_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a cloud_workload_security_agent_rules resource. + +## Overview + + + + +
Namecloud_workload_security_agent_rules
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent rule (example: 3dd-0uc-h1s)
objectA Cloud Workload Security Agent rule returned by the API
stringThe type of the resource, must always be `agent_rule` (default: agent_rule, example: agent_rule)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent rule (example: 3dd-0uc-h1s)
objectA Cloud Workload Security Agent rule returned by the API
stringThe type of the resource, must always be `agent_rule` (default: agent_rule, example: agent_rule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
agent_rule_id, regionGet the details of a specific agent rule.

**Note**: This endpoint should only be used for the Government (US1-FED) site.
regionGet the list of agent rules.

**Note**: This endpoint should only be used for the Government (US1-FED) site.
region, data__dataCreate a new agent rule with the given parameters.

**Note**: This endpoint should only be used for the Government (US1-FED) site.
agent_rule_id, region, data__dataUpdate 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.
agent_rule_id, regionDelete a specific agent rule.

**Note**: This endpoint should only be used for the Government (US1-FED) site.
regionThe 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.
+ +## Parameters + +Parameters can be passed in 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 rule (example: 3b5-v82-ns6)
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get the details of a specific agent rule.

**Note**: This endpoint should only be used for the Government (US1-FED) site. + +```sql +SELECT +id, +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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.cloud_workload_security_agent_rules +WHERE region = '{{ region }}' -- required +; +``` +
+
+ + +## `INSERT` examples + + + + +Create a new agent rule with the given parameters.

**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 +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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 +``` + +
+ + +## `UPDATE` examples + + + + +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. + +```sql +UPDATE datadog.security.cloud_workload_security_agent_rules +SET +data__data = '{{ data }}' +WHERE +agent_rule_id = '{{ agent_rule_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` +
+
+ + +## `DELETE` examples + + + + +Delete a specific agent rule.

**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 new file mode 100644 index 0000000..6b44844 --- /dev/null +++ b/website/docs/services/security/csm_agents/index.md @@ -0,0 +1,163 @@ +--- +title: csm_agents +hide_title: false +hide_table_of_contents: false +keywords: + - csm_agents + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_agents resource. + +## Overview + + + + +
Namecsm_agents
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent. (example: fffffc5505f6a006fdf7cf5aae053653)
objectA CSM Agent returned by the API.
stringThe type of the resource. The value should always be `datadog_agent`. (default: datadog_agent, example: datadog_agent)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionpage, size, query, order_directionGet the list of all CSM Agents running on your hosts and containers.
+ +## Parameters + +Parameters can be passed 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 sort direction for results. Use `asc` for ascending or `desc` for descending.
integer (int32)The page index for pagination (zero-based).
stringA search query string to filter results (for example, `hostname:COMP-T2H4J27423`).
integer (int32)The number of items to include in a single page.
+ +## `SELECT` examples + + + + +Get the list of all CSM Agents running on your hosts and containers. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_agents +WHERE region = '{{ region }}' -- required +AND 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 new file mode 100644 index 0000000..47563cf --- /dev/null +++ b/website/docs/services/security/csm_cloud_accounts_coverage_analysis/index.md @@ -0,0 +1,139 @@ +--- +title: csm_cloud_accounts_coverage_analysis +hide_title: false +hide_table_of_contents: false +keywords: + - csm_cloud_accounts_coverage_analysis + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_cloud_accounts_coverage_analysis resource. + +## Overview + + + + +
Namecsm_cloud_accounts_coverage_analysis
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of your organization. (example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3)
objectCSM Cloud Accounts Coverage Analysis attributes.
stringThe type of the resource. The value should always be `get_cloud_accounts_coverage_analysis_response_public_v0`. (default: get_cloud_accounts_coverage_analysis_response_public_v0, example: get_cloud_accounts_coverage_analysis_response_public_v0)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionGet 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.
+ +## Parameters + +Parameters can be passed 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)
+ +## `SELECT` examples + + + + +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. + +```sql +SELECT +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 new file mode 100644 index 0000000..cc459c5 --- /dev/null +++ b/website/docs/services/security/csm_hosts_and_containers_coverage_analysis/index.md @@ -0,0 +1,139 @@ +--- +title: csm_hosts_and_containers_coverage_analysis +hide_title: false +hide_table_of_contents: false +keywords: + - csm_hosts_and_containers_coverage_analysis + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_hosts_and_containers_coverage_analysis resource. + +## Overview + + + + +
Namecsm_hosts_and_containers_coverage_analysis
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of your organization. (example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3)
objectCSM Hosts and Containers Coverage Analysis attributes.
stringThe type of the resource. The value should always be `get_hosts_and_containers_coverage_analysis_response_public_v0`. (default: get_hosts_and_containers_coverage_analysis_response_public_v0, example: get_hosts_and_containers_coverage_analysis_response_public_v0)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionGet 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.
+ +## Parameters + +Parameters can be passed 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)
+ +## `SELECT` examples + + + + +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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_hosts_and_containers_coverage_analysis +WHERE region = '{{ region }}' -- required +; +``` +
+
diff --git a/website/docs/services/security/csm_serverless_agents/index.md b/website/docs/services/security/csm_serverless_agents/index.md new file mode 100644 index 0000000..07af911 --- /dev/null +++ b/website/docs/services/security/csm_serverless_agents/index.md @@ -0,0 +1,163 @@ +--- +title: csm_serverless_agents +hide_title: false +hide_table_of_contents: false +keywords: + - csm_serverless_agents + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_serverless_agents resource. + +## Overview + + + + +
Namecsm_serverless_agents
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent. (example: fffffc5505f6a006fdf7cf5aae053653)
objectA CSM Agent returned by the API.
stringThe type of the resource. The value should always be `datadog_agent`. (default: datadog_agent, example: datadog_agent)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionpage, size, query, order_directionGet the list of all CSM Serverless Agents running on your hosts and containers.
+ +## Parameters + +Parameters can be passed 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 sort direction for results. Use `asc` for ascending or `desc` for descending.
integer (int32)The page index for pagination (zero-based).
stringA search query string to filter results (for example, `hostname:COMP-T2H4J27423`).
integer (int32)The number of items to include in a single page.
+ +## `SELECT` examples + + + + +Get the list of all CSM Serverless Agents running on your hosts and containers. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_serverless_agents +WHERE region = '{{ region }}' -- required +AND 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 new file mode 100644 index 0000000..acd2d60 --- /dev/null +++ b/website/docs/services/security/csm_serverless_coverage_analysis/index.md @@ -0,0 +1,139 @@ +--- +title: csm_serverless_coverage_analysis +hide_title: false +hide_table_of_contents: false +keywords: + - csm_serverless_coverage_analysis + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_serverless_coverage_analysis resource. + +## Overview + + + + +
Namecsm_serverless_coverage_analysis
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of your organization. (example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3)
objectCSM Serverless Resources Coverage Analysis attributes.
stringThe type of the resource. The value should always be `get_serverless_coverage_analysis_response_public_v0`. (default: get_serverless_coverage_analysis_response_public_v0, example: get_serverless_coverage_analysis_response_public_v0)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionGet 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.
+ +## Parameters + +Parameters can be passed 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)
+ +## `SELECT` examples + + + + +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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_serverless_coverage_analysis +WHERE region = '{{ region }}' -- required +; +``` +
+
diff --git a/website/docs/services/security/custom_frameworks/index.md b/website/docs/services/security/custom_frameworks/index.md new file mode 100644 index 0000000..725b358 --- /dev/null +++ b/website/docs/services/security/custom_frameworks/index.md @@ -0,0 +1,267 @@ +--- +title: custom_frameworks +hide_title: false +hide_table_of_contents: false +keywords: + - custom_frameworks + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a custom_frameworks resource. + +## Overview + + + + +
Namecustom_frameworks
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the custom framework. (example: handle-version)
objectFull Framework Data Attributes.
stringThe type of the resource. The value must be `custom_framework`. (default: custom_framework, example: custom_framework)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
handle, version, regionGet a custom framework.
region, data__dataCreate a custom framework.
handle, version, region, data__dataUpdate a custom framework.
handle, version, regionDelete a custom framework.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe framework handle
string(default: datadoghq.com)
stringThe framework version
+ +## `SELECT` examples + + + + +Get a custom framework. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.custom_frameworks +WHERE handle = '{{ handle }}' -- required +AND version = '{{ version }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a custom framework. + +```sql +INSERT INTO datadog.security.custom_frameworks ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `REPLACE` examples + + + + +Update a custom framework. + +```sql +REPLACE datadog.security.custom_frameworks +SET +data__data = '{{ data }}' +WHERE +handle = '{{ handle }}' --required +AND version = '{{ version }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a custom framework. + +```sql +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 new file mode 100644 index 0000000..bd845b9 --- /dev/null +++ b/website/docs/services/security/filters/index.md @@ -0,0 +1,313 @@ +--- +title: filters +hide_title: false +hide_table_of_contents: false +keywords: + - filters + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a filters resource. + +## Overview + + + + +
Namefilters
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the security filter. (example: 3dd-0uc-h1s)
objectThe object describing a security filter.
stringThe type of the resource. The value should always be `security_filters`. (default: security_filters, example: security_filters)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the security filter. (example: 3dd-0uc-h1s)
objectThe object describing a security filter.
stringThe type of the resource. The value should always be `security_filters`. (default: security_filters, example: security_filters)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
security_filter_id, regionGet 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.
regionGet the list of configured security filters with their definitions.
region, data__dataCreate 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.
security_filter_id, region, data__dataUpdate a specific security filter.
Returns the security filter object when the request is successful.
security_filter_id, regionDelete a specific security filter.
+ +## Parameters + +Parameters can be passed 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 security filter.
+ +## `SELECT` examples + + + + +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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.filters +WHERE security_filter_id = '{{ security_filter_id }}' -- required +AND region = '{{ region }}' -- required +; +``` +
+ + +Get the list of configured security filters with their definitions. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.filters +WHERE region = '{{ region }}' -- required +; +``` + +
+ + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.security.filters ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data, +meta +; +``` +
+ + +```yaml +# 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. +``` + +
+ + +## `UPDATE` examples + + + + +Update a specific security filter.
Returns the security filter object when the request is successful. + +```sql +UPDATE datadog.security.filters +SET +data__data = '{{ data }}' +WHERE +security_filter_id = '{{ security_filter_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data, +meta; +``` +
+
+ + +## `DELETE` examples + + + + +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/findings/index.md b/website/docs/services/security/findings/index.md new file mode 100644 index 0000000..722c9bb --- /dev/null +++ b/website/docs/services/security/findings/index.md @@ -0,0 +1,320 @@ +--- +title: findings +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a findings resource. + +## Overview + + + + +
Namefindings
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID for this finding. (example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==)
objectThe JSON:API attributes of the detailed finding.
stringThe JSON:API type for findings that have the message and resource configuration. (default: detailed_finding, example: detailed_finding)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID for this finding. (example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==)
objectThe JSON:API attributes of the finding.
stringThe JSON:API type for findings. (default: finding, example: finding)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
finding_id, regionsnapshot_timestampReturns a single finding with message and resource configuration.
regionpage[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_findingsGet 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.
region, dataMute or unmute findings.
+ +## Parameters + +Parameters can be passed in 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 finding.
string(default: datadoghq.com)
booleanReturn additional fields for some findings. (example: [true])
stringReturn only findings for the specified resource id.
stringReturn findings that were found on a specified date (Unix ms) or date range (using comparison operators). (example: >=1678721573794)
stringReturn only `pass` or `fail` findings.
stringReturn 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)
booleanSet to `true` to return findings that are muted. Set to `false` to return unmuted findings.
stringReturn only findings for the specified resource type.
stringReturn findings for the specified rule ID.
stringReturn findings for the specified rule.
stringReturn only findings with the specified status.
stringReturn findings that have these associated tags (repeatable). (example: filter[tags]=cloud_provider:aws&filter[tags]=aws_account:999999999999)
arrayReturn findings that match the selected vulnerability types (repeatable). (example: [misconfiguration])
stringReturn the next page of findings pointed to by the cursor. (example: eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0=)
integer (int64)Limit the number of findings returned. Must be <= 1000. (example: 50)
integer (int64)Return findings for a given snapshot of time (Unix ms). (example: 1678721573794)
+ +## `SELECT` examples + + + + +Returns a single finding with message and resource configuration. + +```sql +SELECT +id, +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.
+ +```sql +SELECT +id, +attributes, +type +FROM datadog.security.findings +WHERE region = '{{ region }}' -- required +AND page[limit] = '{{ page[limit] }}' +AND snapshot_timestamp = '{{ snapshot_timestamp }}' +AND page[cursor] = '{{ page[cursor] }}' +AND filter[tags] = '{{ filter[tags] }}' +AND filter[evaluation_changed_at] = '{{ filter[evaluation_changed_at] }}' +AND filter[muted] = '{{ filter[muted] }}' +AND filter[rule_id] = '{{ filter[rule_id] }}' +AND filter[rule_name] = '{{ filter[rule_name] }}' +AND filter[resource_type] = '{{ filter[resource_type] }}' +AND filter[@resource_id] = '{{ filter[@resource_id] }}' +AND filter[discovery_timestamp] = '{{ filter[discovery_timestamp] }}' +AND filter[evaluation] = '{{ filter[evaluation] }}' +AND filter[status] = '{{ filter[status] }}' +AND filter[vulnerability_type] = '{{ filter[vulnerability_type] }}' +AND detailed_findings = '{{ detailed_findings }}' +; +``` +
+
+ + +## Lifecycle Methods + + + + +Mute or unmute findings. + +```sql +EXEC datadog.security.findings.mute_findings +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/historical_jobs/index.md b/website/docs/services/security/historical_jobs/index.md new file mode 100644 index 0000000..b8848b2 --- /dev/null +++ b/website/docs/services/security/historical_jobs/index.md @@ -0,0 +1,332 @@ +--- +title: historical_jobs +hide_title: false +hide_table_of_contents: false +keywords: + - historical_jobs + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a historical_jobs resource. + +## Overview + + + + +
Namehistorical_jobs
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the job.
objectHistorical job attributes.
stringType of payload.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the job.
objectHistorical job attributes.
stringType of payload.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
job_id, regionGet a job's details.
regionpage[size], page[number], sort, filter[query]List historical jobs.
regionRun a historical job.
job_id, regionCancel a historical job.
job_id, regionDelete an existing job.
+ +## Parameters + +Parameters can be passed in 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 job.
string(default: datadoghq.com)
stringQuery used to filter items from the fetched list. (example: security:attack status:high)
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringThe order of the jobs in results. (example: status)
+ +## `SELECT` examples + + + + +Get a job's details. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.historical_jobs +WHERE job_id = '{{ job_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List historical jobs. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.historical_jobs +WHERE region = '{{ region }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND sort = '{{ sort }}' +AND filter[query] = '{{ filter[query] }}' +; +``` + + + + +## `INSERT` examples + + + + +Run a historical job. + +```sql +INSERT INTO datadog.security.historical_jobs ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Cancel a historical job. + +```sql +UPDATE datadog.security.historical_jobs +SET +-- No updatable properties +WHERE +job_id = '{{ job_id }}' --required +AND region = '{{ region }}' --required; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..75856d5 --- /dev/null +++ b/website/docs/services/security/index.md @@ -0,0 +1,59 @@ +--- +title: security +hide_title: false +hide_table_of_contents: false +keywords: + - security + - 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 +--- + +security service documentation. + +:::info[Service Summary] + +total resources: __28__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/security/monitoring_hist_signals/index.md b/website/docs/services/security/monitoring_hist_signals/index.md new file mode 100644 index 0000000..e3446ce --- /dev/null +++ b/website/docs/services/security/monitoring_hist_signals/index.md @@ -0,0 +1,353 @@ +--- +title: monitoring_hist_signals +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_hist_signals + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_hist_signals resource. + +## Overview + + + + +
Namemonitoring_hist_signals
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID of the security signal. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectThe object containing all signal attributes and their associated values.
stringThe type of event. (default: signal, example: signal)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID of the security signal. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectThe object containing all signal attributes and their associated values.
stringThe type of event. (default: signal, example: signal)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID of the security signal. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectThe object containing all signal attributes and their associated values.
stringThe type of event. (default: signal, example: signal)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
histsignal_id, regionGet a hist signal's details.
job_id, regionfilter[query], filter[from], filter[to], sort, page[cursor], page[limit]Get a job's hist signals.
regionfilter[query], filter[from], filter[to], sort, page[cursor], page[limit]List hist signals.
regionSearch hist signals.
regionConvert a job result to a 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 historical signal.
stringThe ID of the job.
string(default: datadoghq.com)
string (date-time)The minimum timestamp for requested security signals. (example: 2019-01-02T09:42:36.320Z)
stringThe search query for security signals. (example: security:attack status:high)
string (date-time)The maximum timestamp for requested security signals. (example: 2019-01-03T09:42:36.320Z)
stringA list of results using the cursor provided in the previous query. (example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==)
integer (int32)The maximum number of security signals in the response. (example: 25)
stringThe order of the security signals in results.
+ +## `SELECT` examples + + + + +Get a hist signal's details. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_hist_signals +WHERE histsignal_id = '{{ histsignal_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get a job's hist signals. + +```sql +SELECT +id, +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] }}' +AND sort = '{{ sort }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` + + + +List hist signals. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_hist_signals +WHERE region = '{{ region }}' -- required +AND filter[query] = '{{ filter[query] }}' +AND filter[from] = '{{ filter[from] }}' +AND filter[to] = '{{ filter[to] }}' +AND sort = '{{ sort }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` + + + + +## Lifecycle Methods + + + + +Search hist signals. + +```sql +EXEC datadog.security.monitoring_hist_signals.search_security_monitoring_histsignals +@region='{{ region }}' --required +@@json= +'{ +"filter": "{{ filter }}", +"page": "{{ page }}", +"sort": "{{ sort }}" +}' +; +``` + + + +Convert a job result to a signal. + +```sql +EXEC datadog.security.monitoring_hist_signals.convert_job_result_to_signal +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/monitoring_rules/index.md b/website/docs/services/security/monitoring_rules/index.md new file mode 100644 index 0000000..98a89a8 --- /dev/null +++ b/website/docs/services/security/monitoring_rules/index.md @@ -0,0 +1,538 @@ +--- +title: monitoring_rules +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_rules resource. + +## Overview + + + + +
Namemonitoring_rules
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + +
NameDatatypeDescription
+
+ + + + + + + + + + + + +
NameDatatypeDescription
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_id, regionGet a rule's details.
regionpage[size], page[number]List rules.
region, data__name, data__isEnabled, data__queries, data__options, data__cases, data__messageCreate a detection rule.
rule_id, regionUpdate 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).
rule_id, regionDelete an existing rule. Default rules cannot be deleted.
region, name, isEnabled, queries, options, cases, messageConvert a rule that doesn't (yet) exist from JSON to Terraform for datadog provider
resource datadog_security_monitoring_rule.
regionTest a rule.
region, name, isEnabled, queries, options, cases, messageValidate a detection rule.
rule_id, regionConvert an existing rule from JSON to Terraform for datadog provider
resource datadog_security_monitoring_rule.
rule_id, regionTest an existing 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(default: datadoghq.com)
stringThe ID of the rule.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
+ +## `SELECT` examples + + + + +Get a rule's details. + +```sql +SELECT +* +FROM datadog.security.monitoring_rules +WHERE rule_id = '{{ rule_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +List rules. + +```sql +SELECT +* +FROM datadog.security.monitoring_rules +WHERE region = '{{ region }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + + + +## `INSERT` examples + + + + +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 +) +SELECT +'{{ calculatedFields }}', +'{{ cases }}' /* required */, +'{{ filters }}', +'{{ groupSignalsBy }}', +{{ hasExtendedTitle }}, +{{ isEnabled }} /* required */, +'{{ message }}' /* required */, +'{{ name }}' /* required */, +'{{ options }}' /* required */, +'{{ queries }}' /* required */, +'{{ referenceTables }}', +'{{ schedulingOptions }}', +'{{ tags }}', +'{{ thirdPartyCases }}', +'{{ type }}', +'{{ region }}' +; +``` + + + +```yaml +# 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 + description: | + Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + - name: cases + value: array + description: | + Cases for generating signals. + - 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 + 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 + description: | + Whether the notifications include the triggering group-by values in their title. + - name: isEnabled + value: boolean + description: | + Whether the rule is enabled. + - name: message + value: string + description: | + Message for generated signals. + - name: name + value: string + description: | + The name of the rule. + - name: options + value: object + description: | + Options. + - name: queries + value: array + description: | + Queries for selecting logs which are part of the rule. + - name: referenceTables + value: array + description: | + Reference tables for the rule. + - name: schedulingOptions + value: object + 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. + - name: tags + value: array + description: | + Tags for generated signals. + - name: thirdPartyCases + value: array + description: | + Cases for generating signals from third-party rules. Only available for third-party rules. + - name: type + value: string + description: | + The rule type. + valid_values: ['api_security', 'application_security', 'log_detection', 'workload_security'] +``` + + + + +## `REPLACE` examples + + + + +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). + +```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 }} +WHERE +rule_id = '{{ rule_id }}' --required +AND region = '{{ region }}' --required; +``` +
+
+ + +## `DELETE` examples + + + + +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 +; +``` + + + + +## Lifecycle Methods + + + + +Convert a rule that doesn't (yet) exist from JSON to Terraform for datadog provider
resource datadog_security_monitoring_rule. + +```sql +EXEC datadog.security.monitoring_rules.convert_security_monitoring_rule_from_jsonto_terraform +@region='{{ region }}' --required +@@json= +'{ +"calculatedFields": "{{ calculatedFields }}", +"cases": "{{ cases }}", +"customMessage": "{{ customMessage }}", +"customName": "{{ customName }}", +"filters": "{{ filters }}", +"groupSignalsBy": "{{ groupSignalsBy }}", +"hasExtendedTitle": {{ hasExtendedTitle }}, +"isEnabled": {{ isEnabled }}, +"message": "{{ message }}", +"name": "{{ name }}", +"options": "{{ options }}", +"queries": "{{ queries }}", +"referenceTables": "{{ referenceTables }}", +"schedulingOptions": "{{ schedulingOptions }}", +"tags": "{{ tags }}", +"thirdPartyCases": "{{ thirdPartyCases }}", +"type": "{{ type }}" +}' +; +``` +
+ + +Test a rule. + +```sql +EXEC datadog.security.monitoring_rules.test_security_monitoring_rule +@region='{{ region }}' --required +@@json= +'{ +"rule": "{{ rule }}", +"ruleQueryPayloads": "{{ ruleQueryPayloads }}" +}' +; +``` + + + +Validate a detection rule. + +```sql +EXEC datadog.security.monitoring_rules.validate_security_monitoring_rule +@region='{{ region }}' --required +@@json= +'{ +"calculatedFields": "{{ calculatedFields }}", +"cases": "{{ cases }}", +"customMessage": "{{ customMessage }}", +"customName": "{{ customName }}", +"filters": "{{ filters }}", +"groupSignalsBy": "{{ groupSignalsBy }}", +"hasExtendedTitle": {{ hasExtendedTitle }}, +"isEnabled": {{ isEnabled }}, +"message": "{{ message }}", +"name": "{{ name }}", +"options": "{{ options }}", +"queries": "{{ queries }}", +"referenceTables": "{{ referenceTables }}", +"schedulingOptions": "{{ schedulingOptions }}", +"tags": "{{ tags }}", +"thirdPartyCases": "{{ thirdPartyCases }}", +"type": "{{ type }}" +}' +; +``` + + + +Convert an existing rule from JSON to Terraform for datadog provider
resource datadog_security_monitoring_rule. + +```sql +EXEC datadog.security.monitoring_rules.convert_existing_security_monitoring_rule +@rule_id='{{ rule_id }}' --required, +@region='{{ region }}' --required +; +``` +
+ + +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 }}", +"ruleQueryPayloads": "{{ ruleQueryPayloads }}" +}' +; +``` + +
diff --git a/website/docs/services/security/monitoring_signals/index.md b/website/docs/services/security/monitoring_signals/index.md new file mode 100644 index 0000000..0052367 --- /dev/null +++ b/website/docs/services/security/monitoring_signals/index.md @@ -0,0 +1,336 @@ +--- +title: monitoring_signals +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_signals + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_signals resource. + +## Overview + + + + +
Namemonitoring_signals
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID of the security signal. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectThe object containing all signal attributes and their associated values.
stringThe type of event. (default: signal, example: signal)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID of the security signal. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectThe object containing all signal attributes and their associated values.
stringThe type of event. (default: signal, example: signal)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
signal_id, regionGet a signal's details.
regionfilter[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.
regionReturns security signals that match a search query.
Both this endpoint and the GET endpoint can be used interchangeably for listing
security signals.
signal_id, region, dataModify the triage assignee of a security signal.
signal_id, region, dataChange the related incidents for a security signal.
signal_id, region, dataChange the triage state of a 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
string(default: datadoghq.com)
stringThe ID of the signal.
string (date-time)The minimum timestamp for requested security signals. (example: 2019-01-02T09:42:36.320Z)
stringThe search query for security signals. (example: security:attack status:high)
string (date-time)The maximum timestamp for requested security signals. (example: 2019-01-03T09:42:36.320Z)
stringA list of results using the cursor provided in the previous query. (example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==)
integer (int32)The maximum number of security signals in the response. (example: 25)
stringThe order of the security signals in results.
+ +## `SELECT` examples + + + + +Get a signal's details. + +```sql +SELECT +id, +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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_signals +WHERE region = '{{ region }}' -- required +AND filter[query] = '{{ filter[query] }}' +AND filter[from] = '{{ filter[from] }}' +AND filter[to] = '{{ filter[to] }}' +AND sort = '{{ sort }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` +
+
+ + +## Lifecycle Methods + + + + +Returns security signals that match a search query.
Both this endpoint and the GET endpoint can be used interchangeably for listing
security signals. + +```sql +EXEC datadog.security.monitoring_signals.search_security_monitoring_signals +@region='{{ region }}' --required +@@json= +'{ +"filter": "{{ filter }}", +"page": "{{ page }}", +"sort": "{{ sort }}" +}' +; +``` +
+ + +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 }}" +}' +; +``` + + + +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 }}" +}' +; +``` + + + +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 }}" +}' +; +``` + +
diff --git a/website/docs/services/security/monitoring_suppressions/index.md b/website/docs/services/security/monitoring_suppressions/index.md new file mode 100644 index 0000000..6e0e21a --- /dev/null +++ b/website/docs/services/security/monitoring_suppressions/index.md @@ -0,0 +1,343 @@ +--- +title: monitoring_suppressions +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_suppressions + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_suppressions resource. + +## Overview + + + + +
Namemonitoring_suppressions
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the suppression rule. (example: 3dd-0uc-h1s)
objectThe attributes of the suppression rule.
stringThe type of the resource. The value should always be `suppressions`. (default: suppressions, example: suppressions)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the suppression rule. (example: 3dd-0uc-h1s)
objectThe attributes of the suppression rule.
stringThe type of the resource. The value should always be `suppressions`. (default: suppressions, example: suppressions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
suppression_id, regionGet the details of a specific suppression rule.
regionGet the list of all suppression rules.
region, data__dataCreate a new suppression rule.
suppression_id, region, data__dataUpdate a specific suppression rule.
suppression_id, regionDelete a specific suppression rule.
region, dataValidate a suppression 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(default: datadoghq.com)
stringThe ID of the suppression rule
+ +## `SELECT` examples + + + + +Get the details of a specific suppression rule. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_suppressions +WHERE suppression_id = '{{ suppression_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get the list of all suppression rules. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_suppressions +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new suppression rule. + +```sql +INSERT INTO datadog.security.monitoring_suppressions ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update a specific suppression rule. + +```sql +UPDATE datadog.security.monitoring_suppressions +SET +data__data = '{{ data }}' +WHERE +suppression_id = '{{ suppression_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a specific suppression rule. + +```sql +DELETE FROM datadog.security.monitoring_suppressions +WHERE suppression_id = '{{ suppression_id }}' --required +AND region = '{{ region }}' --required +; +``` + + + + +## Lifecycle Methods + + + + +Validate a suppression rule. + +```sql +EXEC datadog.security.monitoring_suppressions.validate_security_monitoring_suppression +@region='{{ region }}' --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 new file mode 100644 index 0000000..97cb409 --- /dev/null +++ b/website/docs/services/security/resource_evaluation_filters/index.md @@ -0,0 +1,190 @@ +--- +title: resource_evaluation_filters +hide_title: false +hide_table_of_contents: false +keywords: + - resource_evaluation_filters + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a resource_evaluation_filters resource. + +## Overview + + + + +
Nameresource_evaluation_filters
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `data` `id`. (example: csm_resource_filter)
objectAttributes of a resource filter.
stringConstant string to identify the request type. (example: csm_resource_filter)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regioncloud_provider, account_id, skip_cacheList resource filters.
region, data__dataUpdate resource 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
string(default: datadoghq.com)
stringFilter resource filters by cloud provider account ID. This parameter is only valid when provider is specified.
stringFilter resource filters by cloud provider (e.g. aws, gcp, azure).
booleanSkip cache for resource filters.
+ +## `SELECT` examples + + + + +List resource filters. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.resource_evaluation_filters +WHERE region = '{{ region }}' -- required +AND cloud_provider = '{{ cloud_provider }}' +AND account_id = '{{ account_id }}' +AND skip_cache = '{{ skip_cache }}' +; +``` + + + + +## `REPLACE` examples + + + + +Update resource filters. + +```sql +REPLACE datadog.security.resource_evaluation_filters +SET +data__data = '{{ data }}' +WHERE +region = '{{ region }}' --required +AND data__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 new file mode 100644 index 0000000..e1d51a0 --- /dev/null +++ b/website/docs/services/security/rule_version_history/index.md @@ -0,0 +1,157 @@ +--- +title: rule_version_history +hide_title: false +hide_table_of_contents: false +keywords: + - rule_version_history + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rule_version_history resource. + +## Overview + + + + +
Namerule_version_history
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the rule.
objectResponse object containing the version history of a rule.
stringType of data.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_id, regionpage[size], page[number]Get a rule'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
string(default: datadoghq.com)
stringThe ID of the rule.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
+ +## `SELECT` examples + + + + +Get a rule's version history. + +```sql +SELECT +id, +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 new file mode 100644 index 0000000..743bb8f --- /dev/null +++ b/website/docs/services/security/sboms/index.md @@ -0,0 +1,257 @@ +--- +title: sboms +hide_title: false +hide_table_of_contents: false +keywords: + - sboms + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a sboms resource. + +## Overview + + + + +
Namesboms
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID for this SBOM (it is equivalent to the `asset_name` or `asset_name@repo_digest` (Image) (example: github.com/datadog/datadog-agent)
objectThe JSON:API attributes of the SBOM.
stringThe JSON:API type. (example: sboms)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID for this SBOM (it is equivalent to the `asset_name` or `asset_name@repo_digest` (Image) (example: github.com/datadog/datadog-agent)
objectThe JSON:API attributes of the SBOM.
stringThe JSON:API type. (example: sboms)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
asset_type, filter[asset_name], regionfilter[repo_digest]Get a single SBOM related to an asset by its type and name.
regionpage[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.
+ +## Parameters + +Parameters can be passed in 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 the asset for the SBOM request.
stringThe name of the asset for the SBOM request. (example: github.com/datadog/datadog-agent)
string(default: datadoghq.com)
stringThe name of the asset for the SBOM request. (example: github.com/datadog/datadog-agent)
stringThe type of the assets for the SBOM request.
stringThe software license name of the component that is a dependency of an asset. (example: Apache-2.0)
stringThe software license type of the component that is a dependency of an asset.
stringThe name of the component that is a dependency of an asset. (example: opentelemetry-api)
stringThe version of the component that is a dependency of an asset. (example: 1.33.1)
stringThe container image `repo_digest` for the SBOM request. When the requested asset type is 'Image', this filter is mandatory. (example: sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7)
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 single SBOM related to an asset by its type and name.
+ +```sql +SELECT +id, +attributes, +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] }}' +; +``` +
+ + +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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.sboms +WHERE region = '{{ region }}' -- required +AND 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[package_name] = '{{ filter[package_name] }}' +AND filter[package_version] = '{{ filter[package_version] }}' +AND filter[license_name] = '{{ filter[license_name] }}' +AND filter[license_type] = '{{ filter[license_type] }}' +; +``` +
+
diff --git a/website/docs/services/security/scanning_groups/index.md b/website/docs/services/security/scanning_groups/index.md new file mode 100644 index 0000000..0bef186 --- /dev/null +++ b/website/docs/services/security/scanning_groups/index.md @@ -0,0 +1,306 @@ +--- +title: scanning_groups +hide_title: false +hide_table_of_contents: false +keywords: + - scanning_groups + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a scanning_groups resource. + +## Overview + + + + +
Namescanning_groups
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the configuration.
objectAttributes of the Sensitive Data configuration.
objectRelationships of the configuration.
stringSensitive Data Scanner configuration type. (default: sensitive_data_scanner_configuration, example: sensitive_data_scanner_configuration)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionList all the Scanning groups in your organization.
regionCreate 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.
group_id, region, data__data, data__metaUpdate 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.
group_id, regionDelete a given group.
region, data, metaReorder the list of groups.
+ +## Parameters + +Parameters can be passed in 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 a group of rules.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +List all the Scanning groups in your organization. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.security.scanning_groups +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.security.scanning_groups ( +data__data, +data__meta, +region +) +SELECT +'{{ data }}', +'{{ meta }}', +'{{ region }}' +RETURNING +data, +meta +; +``` +
+ + +```yaml +# 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. + - name: meta + value: object + description: | + Meta payload containing information about the API. +``` + +
+ + +## `UPDATE` examples + + + + +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. + +```sql +UPDATE datadog.security.scanning_groups +SET +data__data = '{{ data }}', +data__meta = '{{ meta }}' +WHERE +group_id = '{{ group_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +AND data__meta = '{{ meta }}' --required +RETURNING +meta; +``` +
+
+ + +## `DELETE` examples + + + + +Delete a given group. + +```sql +DELETE FROM datadog.security.scanning_groups +WHERE group_id = '{{ group_id }}' --required +AND region = '{{ region }}' --required +; +``` + + + + +## Lifecycle Methods + + + + +Reorder the list of groups. + +```sql +EXEC datadog.security.scanning_groups.reorder_scanning_groups +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}", +"meta": "{{ meta }}" +}' +; +``` + + diff --git a/website/docs/services/security/scanning_rules/index.md b/website/docs/services/security/scanning_rules/index.md new file mode 100644 index 0000000..d0d9318 --- /dev/null +++ b/website/docs/services/security/scanning_rules/index.md @@ -0,0 +1,201 @@ +--- +title: scanning_rules +hide_title: false +hide_table_of_contents: false +keywords: + - scanning_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a scanning_rules resource. + +## Overview + + + + +
Namescanning_rules
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, data__metaCreate 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.
rule_id, region, data__data, data__metaUpdate 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.
rule_id, regionDelete a given 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(default: datadoghq.com)
stringThe ID of the rule.
+ +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.security.scanning_rules ( +data__data, +data__meta, +region +) +SELECT +'{{ data }}' /* required */, +'{{ meta }}' /* required */, +'{{ region }}' +RETURNING +data, +meta +; +``` +
+ + +```yaml +# 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. + - name: meta + value: object + description: | + Meta payload containing information about the API. +``` + +
+ + +## `UPDATE` examples + + + + +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. + +```sql +UPDATE datadog.security.scanning_rules +SET +data__data = '{{ data }}', +data__meta = '{{ meta }}' +WHERE +rule_id = '{{ rule_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +AND data__meta = '{{ meta }}' --required +RETURNING +meta; +``` +
+
+ + +## `DELETE` examples + + + + +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/signal_notification_rules/index.md b/website/docs/services/security/signal_notification_rules/index.md new file mode 100644 index 0000000..9ca293c --- /dev/null +++ b/website/docs/services/security/signal_notification_rules/index.md @@ -0,0 +1,314 @@ +--- +title: signal_notification_rules +hide_title: false +hide_table_of_contents: false +keywords: + - signal_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a signal_notification_rules resource. + +## Overview + + + + +
Namesignal_notification_rules
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Notification rule details. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of a notification rule. (example: aaa-bbb-ccc)
objectAttributes of the notification rule.
stringThe rule type associated to notification rules. (example: notification_rules)
+
+ + +The list of notification rules. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of a notification rule. (example: aaa-bbb-ccc)
objectAttributes of the notification rule.
stringThe rule type associated to notification rules. (example: notification_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
id, regionGet the details of a notification rule for security signals.
regionReturns the list of notification rules for security signals.
regionCreate a new notification rule for security signals and return the created rule.
id, regionPartially update the notification rule. All fields are optional; if a field is not provided, it is not updated.
id, regionDelete a notification rule for security signals.
+ +## Parameters + +Parameters can be passed 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 notification rule.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get the details of a notification rule for security signals. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.signal_notification_rules +WHERE id = '{{ id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Returns the list of notification rules for security signals. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.signal_notification_rules +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new notification rule for security signals and return the created rule. + +```sql +INSERT INTO datadog.security.signal_notification_rules ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Partially update the notification rule. All fields are optional; if a field is not provided, it is not updated. + +```sql +UPDATE datadog.security.signal_notification_rules +SET +data__data = '{{ data }}' +WHERE +id = '{{ id }}' --required +AND region = '{{ region }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..4ea7027 --- /dev/null +++ b/website/docs/services/security/standard_patterns/index.md @@ -0,0 +1,139 @@ +--- +title: standard_patterns +hide_title: false +hide_table_of_contents: false +keywords: + - standard_patterns + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a standard_patterns resource. + +## Overview + + + + +
Namestandard_patterns
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the standard pattern.
objectAttributes of the Sensitive Data Scanner standard pattern.
stringSensitive Data Scanner standard pattern type. (default: sensitive_data_scanner_standard_pattern, example: sensitive_data_scanner_standard_pattern)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionReturns all standard patterns.
+ +## Parameters + +Parameters can be passed 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)
+ +## `SELECT` examples + + + + +Returns all standard patterns. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.standard_patterns +WHERE region = '{{ region }}' -- 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 new file mode 100644 index 0000000..0b90d74 --- /dev/null +++ b/website/docs/services/security/suppressions_affecting_future_rule/index.md @@ -0,0 +1,209 @@ +--- +title: suppressions_affecting_future_rule +hide_title: false +hide_table_of_contents: false +keywords: + - suppressions_affecting_future_rule + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a suppressions_affecting_future_rule resource. + +## Overview + + + + +
Namesuppressions_affecting_future_rule
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__name, data__isEnabled, data__queries, data__options, data__cases, data__messageGet the list of suppressions that would affect a 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(default: datadoghq.com)
+ +## `INSERT` examples + + + + +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 +) +SELECT +'{{ calculatedFields }}', +'{{ cases }}' /* required */, +'{{ filters }}', +'{{ groupSignalsBy }}', +{{ hasExtendedTitle }}, +{{ isEnabled }} /* required */, +'{{ message }}' /* required */, +'{{ name }}' /* required */, +'{{ options }}' /* required */, +'{{ queries }}' /* required */, +'{{ referenceTables }}', +'{{ schedulingOptions }}', +'{{ tags }}', +'{{ thirdPartyCases }}', +'{{ type }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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 + description: | + Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + - name: cases + value: array + description: | + Cases for generating signals. + - 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 + 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 + description: | + Whether the notifications include the triggering group-by values in their title. + - name: isEnabled + value: boolean + description: | + Whether the rule is enabled. + - name: message + value: string + description: | + Message for generated signals. + - name: name + value: string + description: | + The name of the rule. + - name: options + value: object + description: | + Options. + - name: queries + value: array + description: | + Queries for selecting logs which are part of the rule. + - name: referenceTables + value: array + description: | + Reference tables for the rule. + - name: schedulingOptions + value: object + 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. + - name: tags + value: array + description: | + Tags for generated signals. + - name: thirdPartyCases + value: array + description: | + Cases for generating signals from third-party rules. Only available for third-party rules. + - name: type + value: string + description: | + The rule type. + valid_values: ['api_security', 'application_security', 'log_detection', 'workload_security'] +``` + + diff --git a/website/docs/services/security/suppressions_affecting_rule/index.md b/website/docs/services/security/suppressions_affecting_rule/index.md new file mode 100644 index 0000000..94628fe --- /dev/null +++ b/website/docs/services/security/suppressions_affecting_rule/index.md @@ -0,0 +1,145 @@ +--- +title: suppressions_affecting_rule +hide_title: false +hide_table_of_contents: false +keywords: + - suppressions_affecting_rule + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a suppressions_affecting_rule resource. + +## Overview + + + + +
Namesuppressions_affecting_rule
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the suppression rule. (example: 3dd-0uc-h1s)
objectThe attributes of the suppression rule.
stringThe type of the resource. The value should always be `suppressions`. (default: suppressions, example: suppressions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_id, regionGet the list of suppressions that affect a specific existing rule 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(default: datadoghq.com)
stringThe ID of the rule.
+ +## `SELECT` examples + + + + +Get the list of suppressions that affect a specific existing rule by its ID. + +```sql +SELECT +id, +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 new file mode 100644 index 0000000..d879e1a --- /dev/null +++ b/website/docs/services/security/vulnerabilities/index.md @@ -0,0 +1,397 @@ +--- +title: vulnerabilities +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a vulnerabilities resource. + +## Overview + + + + +
Namevulnerabilities
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID for this vulnerability. (example: 3ecdfea798f2ce8f6e964805a344945f)
objectThe JSON:API attributes of the vulnerability.
objectRelated entities object.
stringThe JSON:API type. (example: vulnerabilities)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionpage[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": {...}
}
```
+ +## Parameters + +Parameters can be passed 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)
stringFilter by advisory ID. (example: TRIVY-CVE-2023-0615)
stringFilter by asset architecture. (example: arm64)
stringFilter by asset environments. (example: staging)
stringFilter by asset name. (example: datadog-agent)
stringFilter by asset operating system name. (example: ubuntu)
stringFilter by asset operating system version. (example: 24.04)
stringFilter by the repository url associated to the asset. (example: github.com/DataDog/datadog-agent.git)
booleanFilter whether the asset has access to sensitive data or not. (example: false)
booleanFilter whether the asset is publicly accessible or not. (example: false)
booleanFilter whether the asset is in production or not. (example: false)
booleanFilter whether the asset is publicly accessible or not. (example: false)
booleanFilter whether the asset is under attack or not. (example: false)
stringFilter by asset teams. (example: compute)
stringFilter by asset type.
stringFilter by the first version of the asset this vulnerability has been detected on. (example: v1.15.1)
stringFilter by the last version of the asset this vulnerability has been detected on. (example: v1.15.1)
stringFilter by vulnerability file path. (example: src/Class.java:100)
stringFilter by vulnerability location. (example: com.example.Class:100)
stringFilter by method. (example: FooBar)
number (double)Filter by vulnerability base (i.e. from the original advisory) severity score. (example: 5.5)
stringFilter by vulnerability base severity.
stringFilter 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)
number (double)Filter by vulnerability Datadog severity score. (example: 4.3)
stringFilter by vulnerability Datadog severity.
stringFilter 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)
stringFilter by ecosystem. (example: Deb)
booleanFilter by fix availability. (example: false)
stringFilter by language. (example: ubuntu)
stringFilter by library name. (example: linux-aws-5.15)
stringFilter by library version. (example: 5.15.0)
stringFilter by origin. (example: agentless-scanner)
stringFilter by vulnerability `repo_digest` (when the vulnerability is related to `Image` asset). (example: sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7)
number (double)Filter by vulnerability [EPSS](https://www.first.org/epss/) severity score. (example: 0.00042)
stringFilter by vulnerability [EPSS](https://www.first.org/epss/) severity.
booleanFilter by public exploit availability. (example: false)
booleanFilter by exploitation probability. (example: false)
booleanFilter by POC exploit availability. (example: false)
stringFilter by the status of the vulnerability.
stringFilter by the tool of the vulnerability.
stringFilter by vulnerability type.
integer (int64)The page number to be retrieved. It should be equal 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 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": {...}
}
```
+ +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.security.vulnerabilities +WHERE region = '{{ region }}' -- required +AND 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`] }}' +AND filter[cvss.base.severity] = '{{ filter[cvss.base.severity] }}' +AND filter[cvss.base.vector] = '{{ filter[cvss.base.vector] }}' +AND filter[cvss.datadog.score][`$op`] = '{{ filter[cvss.datadog.score][`$op`] }}' +AND filter[cvss.datadog.severity] = '{{ filter[cvss.datadog.severity] }}' +AND filter[cvss.datadog.vector] = '{{ filter[cvss.datadog.vector] }}' +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[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] }}' +AND filter[risks.epss.score][`$op`] = '{{ filter[risks.epss.score][`$op`] }}' +AND filter[risks.epss.severity] = '{{ filter[risks.epss.severity] }}' +AND filter[language] = '{{ filter[language] }}' +AND filter[ecosystem] = '{{ filter[ecosystem] }}' +AND filter[code_location.location] = '{{ filter[code_location.location] }}' +AND filter[code_location.file_path] = '{{ filter[code_location.file_path] }}' +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[asset.name] = '{{ filter[asset.name] }}' +AND filter[asset.type] = '{{ filter[asset.type] }}' +AND filter[asset.version.first] = '{{ filter[asset.version.first] }}' +AND filter[asset.version.last] = '{{ filter[asset.version.last] }}' +AND filter[asset.repository_url] = '{{ filter[asset.repository_url] }}' +AND filter[asset.risks.in_production] = '{{ filter[asset.risks.in_production] }}' +AND filter[asset.risks.under_attack] = '{{ filter[asset.risks.under_attack] }}' +AND filter[asset.risks.is_publicly_accessible] = '{{ filter[asset.risks.is_publicly_accessible] }}' +AND filter[asset.risks.has_privileged_access] = '{{ filter[asset.risks.has_privileged_access] }}' +AND filter[asset.risks.has_access_to_sensitive_data] = '{{ filter[asset.risks.has_access_to_sensitive_data] }}' +AND filter[asset.environments] = '{{ filter[asset.environments] }}' +AND filter[asset.teams] = '{{ filter[asset.teams] }}' +AND filter[asset.arch] = '{{ filter[asset.arch] }}' +AND filter[asset.operating_system.name] = '{{ filter[asset.operating_system.name] }}' +AND filter[asset.operating_system.version] = '{{ filter[asset.operating_system.version] }}' +; +``` +
+
diff --git a/website/docs/services/security/vulnerability_notification_rules/index.md b/website/docs/services/security/vulnerability_notification_rules/index.md new file mode 100644 index 0000000..5f20fed --- /dev/null +++ b/website/docs/services/security/vulnerability_notification_rules/index.md @@ -0,0 +1,314 @@ +--- +title: vulnerability_notification_rules +hide_title: false +hide_table_of_contents: false +keywords: + - vulnerability_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a vulnerability_notification_rules resource. + +## Overview + + + + +
Namevulnerability_notification_rules
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Notification rule details. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of a notification rule. (example: aaa-bbb-ccc)
objectAttributes of the notification rule.
stringThe rule type associated to notification rules. (example: notification_rules)
+
+ + +The list of notification rules. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of a notification rule. (example: aaa-bbb-ccc)
objectAttributes of the notification rule.
stringThe rule type associated to notification rules. (example: notification_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
id, regionGet the details of a notification rule for security vulnerabilities.
regionReturns the list of notification rules for security vulnerabilities.
regionCreate a new notification rule for security vulnerabilities and return the created rule.
id, regionPartially update the notification rule. All fields are optional; if a field is not provided, it is not updated.
id, regionDelete a notification rule for security vulnerabilities.
+ +## Parameters + +Parameters can be passed 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 notification rule.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get the details of a notification rule for security vulnerabilities. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.vulnerability_notification_rules +WHERE id = '{{ id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Returns the list of notification rules for security vulnerabilities. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.vulnerability_notification_rules +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new notification rule for security vulnerabilities and return the created rule. + +```sql +INSERT INTO datadog.security.vulnerability_notification_rules ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Partially update the notification rule. All fields are optional; if a field is not provided, it is not updated. + +```sql +UPDATE datadog.security.vulnerability_notification_rules +SET +data__data = '{{ data }}' +WHERE +id = '{{ id }}' --required +AND region = '{{ region }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..be5acbb --- /dev/null +++ b/website/docs/services/security/vulnerable_assets/index.md @@ -0,0 +1,241 @@ +--- +title: vulnerable_assets +hide_title: false +hide_table_of_contents: false +keywords: + - vulnerable_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a vulnerable_assets resource. + +## Overview + + + + +
Namevulnerable_assets
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID for this asset. (example: Repository|github.com/DataDog/datadog-agent.git)
objectThe JSON:API attributes of the asset.
stringThe JSON:API type. (example: assets)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionpage[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.
+ +## Parameters + +Parameters can be passed 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)
stringFilter by architecture. (example: arm64)
stringFilter by environment. (example: staging)
stringFilter by name. (example: datadog-agent)
stringFilter by operating system name. (example: ubuntu)
stringFilter by operating system version. (example: 24.04)
stringFilter by the repository url associated to the asset. (example: github.com/DataDog/datadog-agent.git)
booleanFilter whether the asset (Host) has access to sensitive data or not. (example: false)
booleanFilter whether the asset (Host) has privileged access or not. (example: false)
booleanFilter whether the asset is in production or not. (example: false)
booleanFilter whether the asset (Host) is publicly accessible or not. (example: false)
booleanFilter whether the asset (Service) is under attack or not. (example: false)
stringFilter by teams. (example: compute)
stringFilter by type.
stringFilter by the first version of the asset since it has been vulnerable. (example: v1.15.1)
stringFilter by the last detected version of the asset. (example: v1.15.1)
integer (int64)The page number to be retrieved. It should be equal 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 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.
+ +```sql +SELECT +id, +attributes, +type +FROM datadog.security.vulnerable_assets +WHERE region = '{{ region }}' -- required +AND page[token] = '{{ page[token] }}' +AND page[number] = '{{ page[number] }}' +AND filter[name] = '{{ filter[name] }}' +AND filter[type] = '{{ filter[type] }}' +AND filter[version.first] = '{{ filter[version.first] }}' +AND filter[version.last] = '{{ filter[version.last] }}' +AND filter[repository_url] = '{{ filter[repository_url] }}' +AND filter[risks.in_production] = '{{ filter[risks.in_production] }}' +AND filter[risks.under_attack] = '{{ filter[risks.under_attack] }}' +AND filter[risks.is_publicly_accessible] = '{{ filter[risks.is_publicly_accessible] }}' +AND filter[risks.has_privileged_access] = '{{ filter[risks.has_privileged_access] }}' +AND filter[risks.has_access_to_sensitive_data] = '{{ filter[risks.has_access_to_sensitive_data] }}' +AND filter[environments] = '{{ filter[environments] }}' +AND filter[teams] = '{{ filter[teams] }}' +AND filter[arch] = '{{ filter[arch] }}' +AND filter[operating_system.name] = '{{ filter[operating_system.name] }}' +AND filter[operating_system.version] = '{{ filter[operating_system.version] }}' +; +``` +
+
diff --git a/website/docs/services/service_management/cases/index.md b/website/docs/services/service_management/cases/index.md new file mode 100644 index 0000000..d72faf6 --- /dev/null +++ b/website/docs/services/service_management/cases/index.md @@ -0,0 +1,421 @@ +--- +title: cases +hide_title: false +hide_table_of_contents: false +keywords: + - cases + - 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 cases resource. + +## Overview + + + + +
Namecases
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCase's identifier (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001)
objectCase resource attributes
objectResources related to a case
stringCase resource type (default: case, example: case)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
case_id, regionGet the details of case by `case_id`
region, data__dataCreate a Case
regionpage[size], page[number], sort[field], filter, sort[asc]Search cases.
case_id, region, dataArchive case
case_id, region, dataAssign case to a user
case_id, region, dataUpdate case attributes
case_id, region, dataUpdate case priority
case_id, region, dataUpdate case status
case_id, region, dataUnarchive case
case_id, region, dataUnassign 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)
string(default: datadoghq.com)
stringSearch query
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
booleanSpecify if order is ascending or not
stringSpecify which field to sort
+ +## `SELECT` examples + + + + +Get the details of case by `case_id` + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.cases +WHERE case_id = '{{ case_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a Case + +```sql +INSERT INTO datadog.service_management.cases ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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 +``` + + + + +## Lifecycle Methods + + + + +Search cases. + +```sql +EXEC datadog.service_management.cases.search_cases +@region='{{ region }}' --required, +@page[size]='{{ page[size] }}', +@page[number]='{{ page[number] }}', +@sort[field]='{{ sort[field] }}', +@filter='{{ filter }}', +@sort[asc]={{ sort[asc] }} +; +``` + + + +Archive case + +```sql +EXEC datadog.service_management.cases.archive_case +@case_id='{{ case_id }}' --required, +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Assign case to a user + +```sql +EXEC datadog.service_management.cases.assign_case +@case_id='{{ case_id }}' --required, +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Update case attributes + +```sql +EXEC datadog.service_management.cases.update_attributes +@case_id='{{ case_id }}' --required, +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Update case priority + +```sql +EXEC datadog.service_management.cases.update_priority +@case_id='{{ case_id }}' --required, +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Update case status + +```sql +EXEC datadog.service_management.cases.update_status +@case_id='{{ case_id }}' --required, +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Unarchive case + +```sql +EXEC datadog.service_management.cases.unarchive_case +@case_id='{{ case_id }}' --required, +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +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/downtimes/index.md b/website/docs/services/service_management/downtimes/index.md new file mode 100644 index 0000000..9d693ff --- /dev/null +++ b/website/docs/services/service_management/downtimes/index.md @@ -0,0 +1,350 @@ +--- +title: downtimes +hide_title: false +hide_table_of_contents: false +keywords: + - downtimes + - 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 downtimes resource. + +## Overview + + + + +
Namedowntimes
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe downtime ID. (example: 00000000-0000-1234-0000-000000000000)
objectDowntime details.
objectAll relationships associated with downtime.
stringDowntime resource type. (default: downtime, example: downtime)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe downtime ID. (example: 00000000-0000-1234-0000-000000000000)
objectDowntime details.
objectAll relationships associated with downtime.
stringDowntime resource type. (default: downtime, example: downtime)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
downtime_id, regionincludeGet downtime detail by `downtime_id`.
regioncurrent_only, include, page[offset], page[limit]Get all scheduled downtimes.
region, data__dataSchedule a downtime.
downtime_id, region, data__dataUpdate a downtime by `downtime_id`.
downtime_id, regionCancel 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.
+ +## Parameters + +Parameters can be passed 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 downtime to cancel.
string(default: datadoghq.com)
booleanOnly return downtimes that are active when the request is made.
stringComma-separated list of resource paths for related resources to include in the response. Supported resource paths are `created_by` and `monitor`.
integer (int64)Maximum number of downtimes in the response. (example: 100)
integer (int64)Specific offset to use as the beginning of the returned page.
+ +## `SELECT` examples + + + + +Get downtime detail by `downtime_id`. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.downtimes +WHERE downtime_id = '{{ downtime_id }}' -- required +AND region = '{{ region }}' -- required +AND include = '{{ include }}' +; +``` + + + +Get all scheduled downtimes. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.downtimes +WHERE region = '{{ region }}' -- required +AND current_only = '{{ current_only }}' +AND include = '{{ include }}' +AND page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` + + + + +## `INSERT` examples + + + + +Schedule a downtime. + +```sql +INSERT INTO datadog.service_management.downtimes ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update a downtime by `downtime_id`. + +```sql +UPDATE datadog.service_management.downtimes +SET +data__data = '{{ data }}' +WHERE +downtime_id = '{{ downtime_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +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. + +```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/events/index.md b/website/docs/services/service_management/events/index.md new file mode 100644 index 0000000..a7f5332 --- /dev/null +++ b/website/docs/services/service_management/events/index.md @@ -0,0 +1,336 @@ +--- +title: events +hide_title: false +hide_table_of_contents: false +keywords: + - events + - 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 events resource. + +## Overview + + + + +
Nameevents
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe event's ID. (example: )
objectEvent attributes.
stringEntity type. (example: event)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringthe unique ID of the event. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectThe object description of an event response attribute.
stringType of the event. (default: event, example: event)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
event_id, regionGet the details of an event by `event_id`.
regionfilter[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.
region, data__dataThis 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.
regionList 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.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UID of the event.
string(default: datadoghq.com)
stringMinimum timestamp for requested events, in milliseconds.
stringSearch query following events syntax.
stringMaximum timestamp for requested events, in milliseconds.
stringList following results with a cursor provided in the previous query. (example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==)
integer (int32)Maximum number of events in the response. (example: 25)
stringOrder of events in results.
+ +## `SELECT` examples + + + + +Get the details of an event by `event_id`. + +```sql +SELECT +id, +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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.events +WHERE region = '{{ region }}' -- required +AND filter[query] = '{{ filter[query] }}' +AND filter[from] = '{{ filter[from] }}' +AND filter[to] = '{{ filter[to] }}' +AND sort = '{{ sort }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` +
+
+ + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.service_management.events ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +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 +- 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'] +``` + +
diff --git a/website/docs/services/service_management/incident_attachments/index.md b/website/docs/services/service_management/incident_attachments/index.md new file mode 100644 index 0000000..82340cd --- /dev/null +++ b/website/docs/services/service_management/incident_attachments/index.md @@ -0,0 +1,199 @@ +--- +title: incident_attachments +hide_title: false +hide_table_of_contents: false +keywords: + - incident_attachments + - 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_attachments resource. + +## Overview + + + + +
Nameincident_attachments
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA unique identifier that represents the incident attachment. (example: 00000000-abcd-0001-0000-000000000000)
The attributes object for an attachment.
objectThe incident attachment's relationships.
stringThe incident attachment resource type. (default: incident_attachments, example: incident_attachments)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_id, regioninclude, filter[attachment_type]Get all attachments for a given incident.
incident_id, region, data__dataincludeThe bulk update endpoint for creating, updating, and deleting attachments for a given 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(default: datadoghq.com)
arraySpecifies which types of attachments are included in the response.
arraySpecifies which types of related objects are included in the response.
+ +## `SELECT` examples + + + + +Get all attachments for a given incident. + +```sql +SELECT +id, +attributes, +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] }}' +; +``` + + + + +## `UPDATE` examples + + + + +The bulk update endpoint for creating, updating, and deleting attachments for a given incident. + +```sql +UPDATE datadog.service_management.incident_attachments +SET +data__data = '{{ data }}' +WHERE +incident_id = '{{ incident_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + diff --git a/website/docs/services/service_management/incident_integrations/index.md b/website/docs/services/service_management/incident_integrations/index.md new file mode 100644 index 0000000..17fbd83 --- /dev/null +++ b/website/docs/services/service_management/incident_integrations/index.md @@ -0,0 +1,339 @@ +--- +title: incident_integrations +hide_title: false +hide_table_of_contents: false +keywords: + - incident_integrations + - 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_integrations resource. + +## Overview + + + + +
Nameincident_integrations
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe incident integration metadata's ID. (example: 00000000-0000-0000-1234-000000000000)
objectIncident integration metadata's attributes for a create request.
objectThe incident's integration relationships from a response.
stringIntegration metadata resource type. (default: incident_integrations, example: incident_integrations)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe incident integration metadata's ID. (example: 00000000-0000-0000-1234-000000000000)
objectIncident integration metadata's attributes for a create request.
objectThe incident's integration relationships from a response.
stringIntegration metadata resource type. (default: incident_integrations, example: incident_integrations)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_id, integration_metadata_id, regionGet incident integration metadata details.
incident_id, regionGet all integration metadata for an incident.
incident_id, region, data__dataCreate an incident integration metadata.
incident_id, integration_metadata_id, region, data__dataUpdate an existing incident integration metadata.
incident_id, integration_metadata_id, regionDelete an incident integration metadata.
+ +## Parameters + +Parameters can be passed in 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 UUID of the incident integration metadata.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get incident integration metadata details. + +```sql +SELECT +id, +attributes, +relationships, +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 +; +``` + + + +Get all integration metadata for an incident. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_integrations +WHERE incident_id = '{{ incident_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create an incident integration metadata. + +```sql +INSERT INTO datadog.service_management.incident_integrations ( +data__data, +incident_id, +region +) +SELECT +'{{ data }}' /* required */, +'{{ incident_id }}', +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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 + description: Required parameter for the incident_integrations resource. + - name: data + value: object + description: | + Incident integration metadata data for a create request. +``` + + + + +## `UPDATE` examples + + + + +Update an existing incident integration metadata. + +```sql +UPDATE datadog.service_management.incident_integrations +SET +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 +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete an incident integration metadata. + +```sql +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 new file mode 100644 index 0000000..b350f12 --- /dev/null +++ b/website/docs/services/service_management/incident_notification_rules/index.md @@ -0,0 +1,334 @@ +--- +title: incident_notification_rules +hide_title: false +hide_table_of_contents: false +keywords: + - incident_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_notification_rules resource. + +## Overview + + + + +
Nameincident_notification_rules
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The unique identifier of the notification rule. (example: 00000000-0000-0000-0000-000000000001)
objectThe notification rule's attributes.
objectThe notification rule's resource relationships.
stringNotification rules resource type. (example: incident_notification_rules)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The unique identifier of the notification rule. (example: 00000000-0000-0000-0000-000000000001)
objectThe notification rule's attributes.
objectThe notification rule's resource relationships.
stringNotification rules resource type. (example: incident_notification_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
id, regionincludeRetrieves a specific notification rule by its ID.
regionincludeLists all notification rules for the organization. Optionally filter by incident type.
region, data__dataCreates a new notification rule.
id, region, data__dataincludeUpdates an existing notification rule with a complete replacement.
id, regionincludeDeletes a notification rule 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 notification rule.
string(default: datadoghq.com)
stringComma-separated list of resources to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template`
+ +## `SELECT` examples + + + + +Retrieves a specific notification rule by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_notification_rules +WHERE id = '{{ id }}' -- required +AND region = '{{ region }}' -- required +AND include = '{{ include }}' +; +``` + + + +Lists all notification rules for the organization. Optionally filter by incident type. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_notification_rules +WHERE region = '{{ region }}' -- required +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a new notification rule. + +```sql +INSERT INTO datadog.service_management.incident_notification_rules ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. +``` + + + + +## `REPLACE` examples + + + + +Updates an existing notification rule with a complete replacement. + +```sql +REPLACE datadog.service_management.incident_notification_rules +SET +data__data = '{{ data }}' +WHERE +id = '{{ id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..a84e828 --- /dev/null +++ b/website/docs/services/service_management/incident_notification_templates/index.md @@ -0,0 +1,340 @@ +--- +title: incident_notification_templates +hide_title: false +hide_table_of_contents: false +keywords: + - incident_notification_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_notification_templates resource. + +## Overview + + + + +
Nameincident_notification_templates
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The unique identifier of the notification template. (example: 00000000-0000-0000-0000-000000000001)
objectThe notification template's attributes.
objectThe notification template's resource relationships.
stringNotification templates resource type. (example: notification_templates)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The unique identifier of the notification template. (example: 00000000-0000-0000-0000-000000000001)
objectThe notification template's attributes.
objectThe notification template's resource relationships.
stringNotification templates resource type. (example: notification_templates)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
id, regionincludeRetrieves a specific notification template by its ID.
regionfilter[incident-type], includeLists all notification templates. Optionally filter by incident type.
region, data__dataCreates a new notification template.
id, region, data__dataincludeUpdates an existing notification template's attributes.
id, regionincludeDeletes a notification template 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 notification template.
string(default: datadoghq.com)
string (uuid)Optional incident type ID filter.
stringComma-separated list of relationships to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type`
+ +## `SELECT` examples + + + + +Retrieves a specific notification template by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_notification_templates +WHERE id = '{{ id }}' -- required +AND region = '{{ region }}' -- required +AND include = '{{ include }}' +; +``` + + + +Lists all notification templates. Optionally filter by incident type. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_notification_templates +WHERE region = '{{ region }}' -- required +AND filter[incident-type] = '{{ filter[incident-type] }}' +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a new notification template. + +```sql +INSERT INTO datadog.service_management.incident_notification_templates ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Updates an existing notification template's attributes. + +```sql +UPDATE datadog.service_management.incident_notification_templates +SET +data__data = '{{ data }}' +WHERE +id = '{{ id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +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_services/index.md b/website/docs/services/service_management/incident_services/index.md new file mode 100644 index 0000000..2d6715d --- /dev/null +++ b/website/docs/services/service_management/incident_services/index.md @@ -0,0 +1,350 @@ +--- +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 new file mode 100644 index 0000000..fc95456 --- /dev/null +++ b/website/docs/services/service_management/incident_teams/index.md @@ -0,0 +1,350 @@ +--- +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_todos/index.md b/website/docs/services/service_management/incident_todos/index.md new file mode 100644 index 0000000..cf3041c --- /dev/null +++ b/website/docs/services/service_management/incident_todos/index.md @@ -0,0 +1,339 @@ +--- +title: incident_todos +hide_title: false +hide_table_of_contents: false +keywords: + - incident_todos + - 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_todos resource. + +## Overview + + + + +
Nameincident_todos
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe incident todo's ID. (example: 00000000-0000-0000-1234-000000000000)
objectIncident todo's attributes.
objectThe incident's relationships from a response.
stringTodo resource type. (default: incident_todos, example: incident_todos)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe incident todo's ID. (example: 00000000-0000-0000-1234-000000000000)
objectIncident todo's attributes.
objectThe incident's relationships from a response.
stringTodo resource type. (default: incident_todos, example: incident_todos)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_id, todo_id, regionGet incident todo details.
incident_id, regionGet all todos for an incident.
incident_id, region, data__dataCreate an incident todo.
incident_id, todo_id, region, data__dataUpdate an incident todo.
incident_id, todo_id, regionDelete an incident todo.
+ +## Parameters + +Parameters can be passed in 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(default: datadoghq.com)
stringThe UUID of the incident todo.
+ +## `SELECT` examples + + + + +Get incident todo details. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_todos +WHERE incident_id = '{{ incident_id }}' -- required +AND todo_id = '{{ todo_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get all todos for an incident. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_todos +WHERE incident_id = '{{ incident_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create an incident todo. + +```sql +INSERT INTO datadog.service_management.incident_todos ( +data__data, +incident_id, +region +) +SELECT +'{{ data }}' /* required */, +'{{ incident_id }}', +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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 + description: Required parameter for the incident_todos resource. + - name: data + value: object + description: | + Incident todo data for a create request. +``` + + + + +## `UPDATE` examples + + + + +Update an incident todo. + +```sql +UPDATE datadog.service_management.incident_todos +SET +data__data = '{{ data }}' +WHERE +incident_id = '{{ incident_id }}' --required +AND todo_id = '{{ todo_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete an incident todo. + +```sql +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_types/index.md b/website/docs/services/service_management/incident_types/index.md new file mode 100644 index 0000000..2ccaf4f --- /dev/null +++ b/website/docs/services/service_management/incident_types/index.md @@ -0,0 +1,329 @@ +--- +title: incident_types +hide_title: false +hide_table_of_contents: false +keywords: + - incident_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_types resource. + +## Overview + + + + +
Nameincident_types
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe incident type's ID. (example: 00000000-0000-0000-0000-000000000000)
objectIncident type's attributes.
objectThe incident type's resource relationships.
stringIncident type resource type. (default: incident_types, example: incident_types)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe incident type's ID. (example: 00000000-0000-0000-0000-000000000000)
objectIncident type's attributes.
objectThe incident type's resource relationships.
stringIncident type resource type. (default: incident_types, example: incident_types)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_type_id, regionGet incident type details.
regioninclude_deletedGet all incident types.
region, data__dataCreate an incident type.
incident_type_id, region, data__dataUpdate an incident type.
incident_type_id, regionDelete an incident 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 incident type.
string(default: datadoghq.com)
booleanInclude deleted incident types in the response.
+ +## `SELECT` examples + + + + +Get incident type details. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_types +WHERE incident_type_id = '{{ incident_type_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get all incident types. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_types +WHERE region = '{{ region }}' -- required +AND include_deleted = '{{ include_deleted }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an incident type. + +```sql +INSERT INTO datadog.service_management.incident_types ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Update an incident type. + +```sql +UPDATE datadog.service_management.incident_types +SET +data__data = '{{ data }}' +WHERE +incident_type_id = '{{ incident_type_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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/incidents/index.md b/website/docs/services/service_management/incidents/index.md new file mode 100644 index 0000000..f9f50c6 --- /dev/null +++ b/website/docs/services/service_management/incidents/index.md @@ -0,0 +1,406 @@ +--- +title: incidents +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incidents resource. + +## Overview + + + + +
Nameincidents
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe incident's ID. (example: 00000000-0000-0000-1234-000000000000)
objectThe incident's attributes from a response.
objectThe incident's relationships from a response.
stringIncident resource type. (default: incidents, example: incidents)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe incident's ID. (example: 00000000-0000-0000-1234-000000000000)
objectThe incident's attributes from a response.
objectThe incident's relationships from a response.
stringIncident resource type. (default: incidents, example: incidents)
+
+ + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectAttributes returned by an incident search.
stringIncident search result type. (default: incidents_search_results, example: incidents_search_results)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_id, regionincludeGet the details of an incident by `incident_id`.
regioninclude, page[size], page[offset]Get all incidents for the user's organization.
query, regioninclude, sort, page[size], page[offset]Search for incidents matching a certain query.
region, data__dataCreate an incident.
incident_id, region, data__dataincludeUpdates an incident. Provide only the attributes that should be updated as this request is a partial update.
incident_id, regionDeletes an existing incident from the users 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 incident.
stringSpecifies 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)
arraySpecifies 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.
stringSpecifies the order of returned incidents.
+ +## `SELECT` examples + + + + +Get the details of an incident by `incident_id`. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incidents +WHERE incident_id = '{{ incident_id }}' -- required +AND region = '{{ region }}' -- required +AND include = '{{ include }}' +; +``` + + + +Get all incidents for the user's organization. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incidents +WHERE region = '{{ region }}' -- required +AND include = '{{ include }}' +AND page[size] = '{{ page[size] }}' +AND page[offset] = '{{ page[offset] }}' +; +``` + + + +Search for incidents matching a certain query. + +```sql +SELECT +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] }}' +AND page[offset] = '{{ page[offset] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an incident. + +```sql +INSERT INTO datadog.service_management.incidents ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +Updates an incident. Provide only the attributes that should be updated as this request is a partial update. + +```sql +UPDATE datadog.service_management.incidents +SET +data__data = '{{ data }}' +WHERE +incident_id = '{{ incident_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +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 +; +``` + + diff --git a/website/docs/services/service_management/index.md b/website/docs/services/service_management/index.md new file mode 100644 index 0000000..f0b9249 --- /dev/null +++ b/website/docs/services/service_management/index.md @@ -0,0 +1,53 @@ +--- +title: service_management +hide_title: false +hide_table_of_contents: false +keywords: + - service_management + - 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 +--- + +service_management service documentation. + +:::info[Service Summary] + +total resources: __22__ + +::: + +## 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 new file mode 100644 index 0000000..a968993 --- /dev/null +++ b/website/docs/services/service_management/issues/index.md @@ -0,0 +1,270 @@ +--- +title: issues +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an issues resource. + +## Overview + + + + +
Nameissues
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringIssue identifier. (example: c1726a66-1f64-11ee-b338-da7ad0900002)
objectObject containing the information of an issue.
objectRelationship between the issue and an assignee, case and/or teams.
stringType of the object. (example: issue)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
issue_id, regionincludeRetrieve the full details for a specific error tracking issue, including attributes and relationships.
region, data__dataincludeSearch 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, dataUpdate the assignee of an issue by `issue_id`.
issue_id, region, dataUpdate the state of an issue by `issue_id`. Use this endpoint to move an issue between states such as `OPEN`, `RESOLVED`, or `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
stringThe identifier of the issue. (example: c1726a66-1f64-11ee-b338-da7ad0900002)
string(default: datadoghq.com)
arrayComma-separated list of relationship objects that should be included in the response.
+ +## `SELECT` examples + + + + +Retrieve the full details for a specific error tracking issue, including attributes and relationships. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.issues +WHERE issue_id = '{{ issue_id }}' -- required +AND region = '{{ region }}' -- required +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.service_management.issues ( +data__data, +region, +include +) +SELECT +'{{ data }}' /* required */, +'{{ region }}', +'{{ include }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. + - name: include + value: array + description: Comma-separated list of relationship objects that should be included in the response. +``` + + + + +## Lifecycle Methods + + + + +Update the assignee of an issue by `issue_id`. + +```sql +EXEC datadog.service_management.issues.update_issue_assignee +@issue_id='{{ issue_id }}' --required, +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ 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`. + +```sql +EXEC datadog.service_management.issues.update_issue_state +@issue_id='{{ issue_id }}' --required, +@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + 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 new file mode 100644 index 0000000..69ae2c2 --- /dev/null +++ b/website/docs/services/service_management/on_call_escalation_policies/index.md @@ -0,0 +1,279 @@ +--- +title: on_call_escalation_policies +hide_title: false +hide_table_of_contents: false +keywords: + - on_call_escalation_policies + - 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_escalation_policies resource. + +## Overview + + + + +
Nameon_call_escalation_policies
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringSpecifies the unique identifier of the escalation policy. (example: ab000000-0000-0000-0000-000000000000)
objectDefines the main attributes of an escalation policy, such as its name and behavior on policy end.
objectRepresents the relationships for an escalation policy, including references to steps and teams.
stringIndicates that the resource is of type `policies`. (default: policies, example: policies)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
policy_id, regionincludeGet an On-Call escalation policy
region, data__dataincludeCreate a new On-Call escalation policy
policy_id, region, data__dataincludeUpdate an On-Call escalation policy
policy_id, regionDelete an On-Call escalation 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 escalation policy
string(default: datadoghq.com)
stringComma-separated list of included relationships to be returned. Allowed values: `teams`, `steps`, `steps.targets`.
+ +## `SELECT` examples + + + + +Get an On-Call escalation policy + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.on_call_escalation_policies +WHERE policy_id = '{{ policy_id }}' -- required +AND region = '{{ region }}' -- required +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new On-Call escalation policy + +```sql +INSERT INTO datadog.service_management.on_call_escalation_policies ( +data__data, +region, +include +) +SELECT +'{{ data }}' /* required */, +'{{ region }}', +'{{ include }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. + - name: include + value: string + description: Comma-separated list of included relationships to be returned. Allowed values: `teams`, `steps`, `steps.targets`. +``` + + + + +## `REPLACE` examples + + + + +Update an On-Call escalation policy + +```sql +REPLACE datadog.service_management.on_call_escalation_policies +SET +data__data = '{{ data }}' +WHERE +policy_id = '{{ policy_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..227f7aa --- /dev/null +++ b/website/docs/services/service_management/on_call_page/index.md @@ -0,0 +1,196 @@ +--- +title: on_call_page +hide_title: false +hide_table_of_contents: false +keywords: + - on_call_page + - 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_page resource. + +## Overview + + + + +
Nameon_call_page
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
regionTrigger a new On-Call Page.
page_id, regionAcknowledges an On-Call Page.
page_id, regionEscalates an On-Call Page.
page_id, regionResolves an On-Call Page.
+ +## Parameters + +Parameters can be passed 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 page ID.
string(default: datadoghq.com)
+ +## `INSERT` examples + + + + +Trigger a new On-Call Page.
+ +```sql +INSERT INTO datadog.service_management.on_call_page ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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. +``` + +
+ + +## Lifecycle Methods + + + + +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 +; +``` +
+ + +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 +; +``` +
+ + +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 +; +``` +
+
diff --git a/website/docs/services/service_management/on_call_schedule/index.md b/website/docs/services/service_management/on_call_schedule/index.md new file mode 100644 index 0000000..c261bac --- /dev/null +++ b/website/docs/services/service_management/on_call_schedule/index.md @@ -0,0 +1,279 @@ +--- +title: on_call_schedule +hide_title: false +hide_table_of_contents: false +keywords: + - on_call_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_schedule resource. + +## Overview + + + + +
Nameon_call_schedule
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe schedule's unique identifier. (example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d)
objectProvides core properties of a schedule object such as its name and time zone.
objectGroups the relationships for a schedule object, referencing layers and teams.
stringSchedules resource type. (default: schedules, example: schedules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
schedule_id, regionincludeGet an On-Call schedule
region, data__dataincludeCreate a new On-Call schedule
schedule_id, region, data__dataincludeUpdate a new On-Call schedule
schedule_id, regionDelete an On-Call schedule
+ +## Parameters + +Parameters can be passed 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
stringComma-separated list of included relationships to be returned. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`.
+ +## `SELECT` examples + + + + +Get an On-Call schedule + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.on_call_schedule +WHERE schedule_id = '{{ schedule_id }}' -- required +AND region = '{{ region }}' -- required +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new On-Call schedule + +```sql +INSERT INTO datadog.service_management.on_call_schedule ( +data__data, +region, +include +) +SELECT +'{{ data }}' /* required */, +'{{ region }}', +'{{ include }}' +RETURNING +data, +included +; +``` + + + +```yaml +# 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. + - name: include + value: string + description: Comma-separated list of included relationships to be returned. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`. +``` + + + + +## `REPLACE` examples + + + + +Update a new On-Call schedule + +```sql +REPLACE datadog.service_management.on_call_schedule +SET +data__data = '{{ data }}' +WHERE +schedule_id = '{{ schedule_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +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_team_routing_rules/index.md b/website/docs/services/service_management/on_call_team_routing_rules/index.md new file mode 100644 index 0000000..0980075 --- /dev/null +++ b/website/docs/services/service_management/on_call_team_routing_rules/index.md @@ -0,0 +1,186 @@ +--- +title: on_call_team_routing_rules +hide_title: false +hide_table_of_contents: false +keywords: + - on_call_team_routing_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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an on_call_team_routing_rules resource. + +## Overview + + + + +
Nameon_call_team_routing_rules
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringSpecifies the unique identifier of this team routing rules record.
objectSpecifies relationships for team routing rules, including rule references.
stringTeam routing rules resource type. (default: team_routing_rules, example: team_routing_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
team_id, regionincludeGet a team's On-Call routing rules
team_id, regionincludeSet a team's On-Call routing 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
string(default: datadoghq.com)
stringThe team ID
stringComma-separated list of included relationships to be returned. Allowed values: `rules`, `rules.policy`.
+ +## `SELECT` examples + + + + +Get a team's On-Call routing rules + +```sql +SELECT +id, +relationships, +type +FROM datadog.service_management.on_call_team_routing_rules +WHERE team_id = '{{ team_id }}' -- required +AND region = '{{ region }}' -- required +AND include = '{{ include }}' +; +``` + + + + +## `REPLACE` examples + + + + +Set a team's On-Call routing rules + +```sql +REPLACE datadog.service_management.on_call_team_routing_rules +SET +data__data = '{{ data }}' +WHERE +team_id = '{{ team_id }}' --required +AND region = '{{ region }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + 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 new file mode 100644 index 0000000..3a5e9e5 --- /dev/null +++ b/website/docs/services/service_management/on_call_user_schedule/index.md @@ -0,0 +1,163 @@ +--- +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 new file mode 100644 index 0000000..848d698 --- /dev/null +++ b/website/docs/services/service_management/projects/index.md @@ -0,0 +1,289 @@ +--- +title: projects +hide_title: false +hide_table_of_contents: false +keywords: + - 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 Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a projects resource. + +## Overview + + + + +
Nameprojects
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Project's identifier (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001)
objectProject attributes
objectProject relationships
stringProject resource type (default: project, example: project)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Project's identifier (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001)
objectProject attributes
objectProject relationships
stringProject resource type (default: project, example: project)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
project_id, regionGet the details of a project by `project_id`.
regionGet all projects.
region, data__dataCreate a project.
project_id, regionRemove a project using the project'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
stringProject UUID (example: e555e290-ed65-49bd-ae18-8acbfcf18db7)
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Get the details of a project by `project_id`. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.projects +WHERE project_id = '{{ project_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Get all projects. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.projects +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a project. + +```sql +INSERT INTO datadog.service_management.projects ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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 +``` + + + + +## `DELETE` examples + + + + +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 new file mode 100644 index 0000000..c7c5e80 --- /dev/null +++ b/website/docs/services/service_management/service_definitions/index.md @@ -0,0 +1,382 @@ +--- +title: service_definitions +hide_title: false +hide_table_of_contents: false +keywords: + - service_definitions + - 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 service_definitions resource. + +## Overview + + + + +
Nameservice_definitions
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringService definition id.
objectService definition attributes.
stringService definition type.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringService definition id.
objectService definition attributes.
stringService definition type.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
service_name, regionschema_versionGet a single service definition from the Datadog Service Catalog.
regionpage[size], page[number], schema_versionGet a list of all service definitions from the Datadog Service Catalog.
region, data__schema-version, data__dd-serviceCreate or update service definition in the Datadog Service Catalog.
service_name, regionDelete a single service definition in the Datadog Service 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
string(default: datadoghq.com)
stringThe name of the service.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringThe schema version desired in the response.
+ +## `SELECT` examples + + + + +Get a single service definition from the Datadog Service Catalog. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.service_definitions +WHERE service_name = '{{ service_name }}' -- required +AND region = '{{ region }}' -- required +AND schema_version = '{{ schema_version }}' +; +``` + + + +Get a list of all service definitions from the Datadog Service Catalog. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.service_definitions +WHERE region = '{{ region }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND schema_version = '{{ schema_version }}' +; +``` + + + + +## `INSERT` examples + + + + +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 +) +SELECT +'{{ application }}', +'{{ ci-pipeline-fingerprints }}', +'{{ contacts }}', +'{{ dd-service }}' /* required */, +'{{ description }}', +'{{ extensions }}', +'{{ integrations }}', +'{{ languages }}', +'{{ lifecycle }}', +'{{ links }}', +'{{ schema-version }}' /* required */, +'{{ tags }}', +'{{ team }}', +'{{ tier }}', +'{{ type }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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 + 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 + description: | + A set of CI fingerprints. + - name: contacts + value: array + description: | + A list of contacts related to the services. + - name: dd-service + value: string + 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 + description: | + A short description of the service. + - name: extensions + value: object + description: | + Extensions to v2.2 schema. + - name: integrations + value: object + description: | + Third party integrations that Datadog supports. + - name: languages + value: array + description: | + The service's programming language. Datadog recognizes the following languages: `dotnet`, `go`, `java`, `js`, `php`, `python`, `ruby`, and `c++`. + - name: lifecycle + value: string + description: | + The current life cycle phase of the service. + - name: links + value: array + description: | + A list of links related to the services. + - name: schema-version + value: string + description: | + Schema version being used. + valid_values: ['v2.2'] + default: v2.2 + - name: tags + value: array + description: | + A set of custom tags. + - name: team + value: string + description: | + Team that owns the service. It is used to locate a team defined in Datadog Teams if it exists. + - name: tier + value: string + description: | + Importance of the service. + - name: type + value: string + description: | + The type of service. +``` + + + + +## `DELETE` examples + + + + +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_report_job/index.md b/website/docs/services/service_management/slo_report_job/index.md new file mode 100644 index 0000000..b7e1730 --- /dev/null +++ b/website/docs/services/service_management/slo_report_job/index.md @@ -0,0 +1,225 @@ +--- +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/team_on_call_users/index.md b/website/docs/services/service_management/team_on_call_users/index.md new file mode 100644 index 0000000..5b36cdc --- /dev/null +++ b/website/docs/services/service_management/team_on_call_users/index.md @@ -0,0 +1,151 @@ +--- +title: team_on_call_users +hide_title: false +hide_table_of_contents: false +keywords: + - team_on_call_users + - 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 team_on_call_users resource. + +## Overview + + + + +
Nameteam_on_call_users
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the on-call responder configuration.
objectRelationship objects linked to a team's on-call responder configuration, including escalations and responders.
stringRepresents 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)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
team_id, regionincludeGet a team's on-call users 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 team ID
stringComma-separated list of included relationships to be returned. Allowed values: `responders`, `escalations`, `escalations.responders`.
+ +## `SELECT` examples + + + + +Get a team's on-call users at a given time + +```sql +SELECT +id, +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 new file mode 100644 index 0000000..2e1587e --- /dev/null +++ b/website/docs/services/software_delivery/ci_app_pipeline_events/index.md @@ -0,0 +1,284 @@ +--- +title: ci_app_pipeline_events +hide_title: false +hide_table_of_contents: false +keywords: + - ci_app_pipeline_events + - 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 ci_app_pipeline_events resource. + +## Overview + + + + +
Nameci_app_pipeline_events
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique ID of the event. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectJSON object containing all event attributes and their associated values.
stringType of the event. (example: cipipeline)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionfilter[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.
regionSend 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.
regionUse this API endpoint to aggregate CI Visibility pipeline events into buckets of computed metrics and timeseries.
regionList 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.
+ +## Parameters + +Parameters can be passed 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)Minimum timestamp for requested events. (example: 2019-01-02T09:42:36.320Z)
stringSearch query following log syntax. (example: @ci.provider.name:github @ci.pipeline.name:Pull Request Labeler)
string (date-time)Maximum timestamp for requested events. (example: 2019-01-03T09:42:36.320Z)
stringList following results with a cursor provided in the previous query. (example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==)
integer (int32)Maximum number of events in the response. (example: 25)
stringOrder of events in results.
+ +## `SELECT` examples + + + + +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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.ci_app_pipeline_events +WHERE region = '{{ region }}' -- required +AND filter[query] = '{{ filter[query] }}' +AND filter[from] = '{{ filter[from] }}' +AND filter[to] = '{{ filter[to] }}' +AND sort = '{{ sort }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` +
+
+ + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.software_delivery.ci_app_pipeline_events ( +data__data, +region +) +SELECT +'{{ data }}', +'{{ region }}' +; +``` +
+ + +```yaml +# 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. +``` + +
+ + +## Lifecycle Methods + + + + +Use this API endpoint to aggregate CI Visibility pipeline events into buckets of computed metrics and timeseries. + +```sql +EXEC datadog.software_delivery.ci_app_pipeline_events.aggregate_ciapp_pipeline_events +@region='{{ region }}' --required +@@json= +'{ +"compute": "{{ compute }}", +"filter": "{{ filter }}", +"group_by": "{{ group_by }}", +"options": "{{ options }}" +}' +; +``` + + + +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. + +```sql +EXEC datadog.software_delivery.ci_app_pipeline_events.search_ciapp_pipeline_events +@region='{{ region }}' --required +@@json= +'{ +"filter": "{{ filter }}", +"options": "{{ options }}", +"page": "{{ page }}", +"sort": "{{ sort }}" +}' +; +``` +
+
diff --git a/website/docs/services/software_delivery/ci_app_test_events/index.md b/website/docs/services/software_delivery/ci_app_test_events/index.md new file mode 100644 index 0000000..aa2f7b6 --- /dev/null +++ b/website/docs/services/software_delivery/ci_app_test_events/index.md @@ -0,0 +1,283 @@ +--- +title: ci_app_test_events +hide_title: false +hide_table_of_contents: false +keywords: + - ci_app_test_events + - 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 ci_app_test_events resource. + +## Overview + + + + +
Nameci_app_test_events
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique ID of the event. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectJSON object containing all event attributes and their associated values.
stringType of the event. (example: citest)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
regionfilter[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.
regionList 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.
regionThe API endpoint to aggregate CI Visibility test events into buckets of computed metrics and timeseries.
+ +## Parameters + +Parameters can be passed 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)Minimum timestamp for requested events. (example: 2019-01-02T09:42:36.320Z)
stringSearch query following log syntax. (example: @test.name:test_foo @test.suite:github.com/DataDog/dd-go/model)
string (date-time)Maximum timestamp for requested events. (example: 2019-01-03T09:42:36.320Z)
stringList following results with a cursor provided in the previous query. (example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==)
integer (int32)Maximum number of events in the response. (example: 25)
stringOrder of events in results.
+ +## `SELECT` examples + + + + +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. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.ci_app_test_events +WHERE region = '{{ region }}' -- required +AND filter[query] = '{{ filter[query] }}' +AND filter[from] = '{{ filter[from] }}' +AND filter[to] = '{{ filter[to] }}' +AND sort = '{{ sort }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` +
+
+ + +## `INSERT` examples + + + + +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. + +```sql +INSERT INTO datadog.software_delivery.ci_app_test_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 +- 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. + - 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. + - name: page + value: object + description: | + Paging attributes for listing events. + - name: sort + value: string + description: | + Sort parameters when querying events. + valid_values: ['timestamp', '-timestamp'] +``` + +
+ + +## Lifecycle Methods + + + + +The API endpoint to aggregate CI Visibility test events into buckets of computed metrics and timeseries. + +```sql +EXEC datadog.software_delivery.ci_app_test_events.aggregate_ciapp_test_events +@region='{{ region }}' --required +@@json= +'{ +"compute": "{{ compute }}", +"filter": "{{ filter }}", +"group_by": "{{ group_by }}", +"options": "{{ options }}" +}' +; +``` + + diff --git a/website/docs/services/software_delivery/dora_deployments/index.md b/website/docs/services/software_delivery/dora_deployments/index.md new file mode 100644 index 0000000..d48f850 --- /dev/null +++ b/website/docs/services/software_delivery/dora_deployments/index.md @@ -0,0 +1,236 @@ +--- +title: dora_deployments +hide_title: false +hide_table_of_contents: false +keywords: + - dora_deployments + - 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_deployments resource. + +## Overview + + + + +
Namedora_deployments
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the event.
objectThe attributes of the event.
stringThe type of the event.
+
+ + + + + + + + + + + + + + + + + +
NameDatatypeDescription
arrayThe list of DORA events.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
deployment_id, regionUse this API endpoint to get a deployment event.
regionUse this API endpoint to get a list of deployment events.
region, data__dataUse this API endpoint to provide data about deployments for DORA metrics.

This is necessary for:
- Deployment Frequency
- Change Lead Time
- Change Failure 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
stringThe ID of the deployment event.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Use this API endpoint to get a deployment event. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.dora_deployments +WHERE deployment_id = '{{ deployment_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +Use this API endpoint to get a list of deployment events. + +```sql +SELECT +data +FROM datadog.software_delivery.dora_deployments +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Use this API endpoint to provide data about deployments for DORA metrics.

This is necessary for:
- Deployment Frequency
- Change Lead Time
- Change Failure Rate + +```sql +INSERT INTO datadog.software_delivery.dora_deployments ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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. +``` + +
diff --git a/website/docs/services/software_delivery/dora_failures/index.md b/website/docs/services/software_delivery/dora_failures/index.md new file mode 100644 index 0000000..c896963 --- /dev/null +++ b/website/docs/services/software_delivery/dora_failures/index.md @@ -0,0 +1,236 @@ +--- +title: dora_failures +hide_title: false +hide_table_of_contents: false +keywords: + - dora_failures + - 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_failures resource. + +## Overview + + + + +
Namedora_failures
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the event.
objectThe attributes of the event.
stringThe type of the event.
+
+ + + + + + + + + + + + + + + + + +
NameDatatypeDescription
arrayThe list of DORA events.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
failure_id, regionUse this API endpoint to get a failure event.
regionUse this API endpoint to get a list of failure events.
region, data__dataUse 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
stringThe ID of the failure event.
string(default: datadoghq.com)
+ +## `SELECT` examples + + + + +Use this API endpoint to get a failure event. + +```sql +SELECT +id, +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. + +```sql +SELECT +data +FROM datadog.software_delivery.dora_failures +WHERE region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +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_failures ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` +
+ + +```yaml +# 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. +``` + +
diff --git a/website/docs/services/software_delivery/dora_incidents/index.md b/website/docs/services/software_delivery/dora_incidents/index.md new file mode 100644 index 0000000..1aed4d1 --- /dev/null +++ b/website/docs/services/software_delivery/dora_incidents/index.md @@ -0,0 +1,124 @@ +--- +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/index.md b/website/docs/services/software_delivery/index.md new file mode 100644 index 0000000..b5dd7f4 --- /dev/null +++ b/website/docs/services/software_delivery/index.md @@ -0,0 +1,38 @@ +--- +title: software_delivery +hide_title: false +hide_table_of_contents: false +keywords: + - software_delivery + - 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 +--- + +software_delivery service documentation. + +:::info[Service Summary] + +total resources: __7__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/software_delivery/workflow_instances/index.md b/website/docs/services/software_delivery/workflow_instances/index.md new file mode 100644 index 0000000..a77e813 --- /dev/null +++ b/website/docs/services/software_delivery/workflow_instances/index.md @@ -0,0 +1,278 @@ +--- +title: workflow_instances +hide_title: false +hide_table_of_contents: false +keywords: + - workflow_instances + - 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 workflow_instances resource. + +## Overview + + + + +
Nameworkflow_instances
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectThe attributes of the instance response data.
+
+ + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the workflow instance
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
workflow_id, instance_id, regionGet 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, regionpage[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).
workflow_id, regionExecute 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, regionCancels 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).
+ +## Parameters + +Parameters can be passed in 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 workflow instance.
string(default: datadoghq.com)
stringThe ID of the workflow.
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 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). + +```sql +SELECT +attributes +FROM datadog.software_delivery.workflow_instances +WHERE workflow_id = '{{ workflow_id }}' -- required +AND instance_id = '{{ instance_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + +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). + +```sql +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] }}' +; +``` + + + + +## `INSERT` examples + + + + +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). + +```sql +INSERT INTO datadog.software_delivery.workflow_instances ( +data__meta, +workflow_id, +region +) +SELECT +'{{ meta }}', +'{{ workflow_id }}', +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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 + description: Required parameter for the workflow_instances resource. + - name: meta + value: object + description: | + Additional information for creating a workflow instance. +``` + + + + +## Lifecycle Methods + + + + +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). + +```sql +EXEC datadog.software_delivery.workflow_instances.cancel_workflow_instance +@workflow_id='{{ workflow_id }}' --required, +@instance_id='{{ instance_id }}' --required, +@region='{{ region }}' --required +; +``` + + diff --git a/website/docs/services/software_delivery/workflows/index.md b/website/docs/services/software_delivery/workflows/index.md new file mode 100644 index 0000000..52837dd --- /dev/null +++ b/website/docs/services/software_delivery/workflows/index.md @@ -0,0 +1,267 @@ +--- +title: workflows +hide_title: false +hide_table_of_contents: false +keywords: + - workflows + - 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 workflows resource. + +## Overview + + + + +
Nameworkflows
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Successfully got a workflow. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe workflow identifier
objectThe definition of `WorkflowDataAttributes` object.
objectThe definition of `WorkflowDataRelationships` object.
stringThe definition of `WorkflowDataType` object. (example: workflows)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
workflow_id, regionGet 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).
region, data__dataCreate 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__dataUpdate 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, regionDelete 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).
+ +## Parameters + +Parameters can be passed 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 workflow.
+ +## `SELECT` examples + + + + +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). + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.software_delivery.workflows +WHERE workflow_id = '{{ workflow_id }}' -- required +AND region = '{{ region }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +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). + +```sql +INSERT INTO datadog.software_delivery.workflows ( +data__data, +region +) +SELECT +'{{ data }}' /* required */, +'{{ region }}' +RETURNING +data +; +``` + + + +```yaml +# 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. +``` + + + + +## `UPDATE` examples + + + + +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). + +```sql +UPDATE datadog.software_delivery.workflows +SET +data__data = '{{ data }}' +WHERE +workflow_id = '{{ workflow_id }}' --required +AND region = '{{ region }}' --required +AND data__data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +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). + +```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 0257689..59e8682 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -7,8 +7,8 @@ import {themes as prismThemes} from 'prism-react-renderer'; // Provider configuration - change these for different providers -const providerName = "yourprovidername"; -const providerTitle = "Your Provider Title"; +const providerName = "Datadog"; +const providerTitle = "Datadog"; const providerDropDownListItems = [ { diff --git a/website/static/img/stackql-datadog-provider-featured-image.png b/website/static/img/stackql-datadog-provider-featured-image.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd8f5819d33500f9c78f81ddb03647159ca68fc GIT binary patch literal 33408 zcmeEu_dDDD_di2442_+)m^uF)+=kxgszCXQlT`n)VURUxw=XIXvJkH}ho<3@-D_vw{XQZK_x%g7~ zxfTu0*)kd$I+ye3sPAw`t#4C*owbyIB~L?B+9gFFu}1y-!aHR>7aAI-);~YAwQ;t1 z>YF!Q6?I*;9W7iv-a4Dp$eTHunDe}}e`{&3W&YO8%ju{26B?R8^2_J)U{4r+n&Ew# zdELRTZTCU^E63bnnez&(>4Wi^u4kXD4Cdx=UHXvy?)>??!|?13p6M5KbeAtH-@TyB z{OVq4?9AuszOBs!$1RT;-qhHNrF5*NI|cL!>t$IfBV)f(x7@rfkf3svx+3c9S78}N z>fg)Tbi)5!J&K|M{Bxzw_l@rFtM?=4saF4a{d)M{+o*2%uS5Qh2Acmy$lreW@0R)7 z4gXCJf4kwo$>G1r;s0-;R495#G5y==gXhparuxz~>XFN%Hgjxl`uA)@SqF;7yXh|| z3eDFa@A91toE>C6tNZueb|InKk(Q;yCwk~L5VFe3;&`A@zr=7j6C=cq(aiuqNr^2% zMYi!rghX6p)cdZjGNk!&U0c;{TSmaV`TBcF-hc3ct6q6nE~{UiN@Q~(rtyYQ)f;F! zYk`KCah1NC(3eqNZtW*uwQj|MA6|ppHY_f?wT5w3E&^)_^262iJmF|X9ez?BsGRAhUSYIR=4J3OU4{Yj-q#Gb1Jsc2YTyB0xNc_(P zg*8gCKJaD)@EW6+d;+}|?4CI-{IHxJT4JCO{_HY;`~~u+hLY8wlMnCc&e4`or zpv2GZ3&Bn@M*T?0{yX3V zf5o^;@+pjMsyf5{v1ew$wWqe1-_ZVXXWG>mbA1x)#8bizp^<=bo82^h5d+QAN%M;~ zx|}-MMf@dxP$l?|Lhcw;gPw0O)UuPZ%_L1Al$@CU&!S>IjL`>uhIygJ#nY2D-f;AR z9*wzpUar+6++0@#@^gvtDN%g^!wsn<0j#IN_-*I{XM3;&F7uSi5HKHA70ul>A zs6%}cR9L?RuF5`ID~nz9XSW1b>DoVW*0svFK8=0!-E9kzXBtk6-K6 zj5%JpJ&utDBC%Hev-AJ>!If@o(lU5x1sm-rZhru_7;jzzKy5J<=SpDHxzCSXw0`zu zCoSI^yv_xGH2eHzw9xAICcXVnPnEnOpaehE=WQar;SuzjD5S9VrALcb_WxNUZP{3} zVkOkNKLF}o;-|VY>J^BI;3pzVql${|&xJ~45dt>0CdaV`B)g=R5O$1*C;EU(;&}u2 zeO*~nQbB1Q2=)u*! z8|z=p}d}efJ|?uVnU4nbOA-b(1&t(u^k#R8e2$2)%cd*yI)k>5e0hT7Y;d6 zqOCgjPZ%v~R-+wwW#A6rqehHf3IcL;{gMqM(FqFz(l!tQlbJf zq!PDHYI&@T+a4MCUu$_7P>;86hiVgDG;_X6-7Syd7mCgo=y%xms2YcZ{5N?n z&Y%hc9`dC$H+OQ8tK26XGn-v74yQvBr|5b`E|a{QD$+hu8b4e4xrszA3;pYNT|=NGZUvhoB^=_&slC zw$7{uInBV@S3>;X?a>to3r1Yi=x7A}1WzGR-ENu{C{6F5mb9;4<_@Q_m^bXQD0Pdo zyrCD$tFV%S9B8aB_IMn|_)TXO*ju}4)F1ARpYYjo_?@aBA28RvniV~|P+lzJ`g5u@ z+?qx|?4M-joH=d*=VZNxjr9N&Z<4}u?n8+1WBaR+n75Y|Ra4FIk<~87a-L^a&KP)4 zP9cHqZEnZAIpL(vvC@2xI)!#Yzk~i;?d|KHW!FEcGzEHzZ@HJ6lkdR=JoB``b0BZJ`M~hp$znoKo|H-Pd5h;n!jg+w9 z)@n~Gx=pr*rocH^&$D z38)0x2_vft;liVs?+on6_)gzn*(_{|=KR$s01&k@$Vh++mwOq|Oa}eO`t2PX{?8XE z;4NJ^oL;d#?m?(({N&Lftls@3uKxJr_lNVzyr-5W_DR7E>xnOOAd|9d46xR7_SG_( z3NQT@3Y#Ynao-y+34*Wbc)ikXpL+n$Yq8XF%DeTk*SG9dS&EMN5PM$R{d7{KESk9G zcj6+6s(rZb*Fs$$F{XGnz^EbV*uflP3ptJZr3YABheVwU(v&E^r~eagj|V-J(ep(e zX%M0=QR|K`V^L#+YcIXQ8cHg91S_>&)cjqa^~cHYxbLI6-Yh=&5Il4F19@#J7M)Hv zY%s%G@5bSvP{3&nf}})jGTzF=2;u9`TmN!5mtH8C1>a`bUDnV;C(`Rdv&;k2{5VNC z+t5$oqPtqCy{{LHjwV_siG%Vfj$?F+FiFS1gJY40@0%NGcY1|t#gMDGMwHot}{S=H`{ZadC>Ge%}@r<$y;vmE9 zfmyvpzp18xI(5=d)Xb9IHjfKnT_qc`-eeB0QIm!mY)%(mbY3)~3j4?EmJPH0< z=jHVO5H;^bMN<-*52KV=)LDFFE}v@!Cfpi|t)8yTsOgz;ClU4stn0kQp=&>Jvm;(D zljERUWC=g-c`{`e@%2l5wKlBhnG|3&qS){C<%?7I5!|w#g#poxb8BNAmdn1)3TJ9o zm;LO<`zq*(K;#D?mj)1<05*N5fV4G57)=&-9ESiK;MTt+F^FPo(mSGY0ENZx_b?;> z@Hk~R$+6&Bb0s>UKWy5)HS+ibjnU^cp5wj{W~4DDd9?qrv(S=a*vEB7S`7F%1;fM8 zwuXT^mE*s$?Z%wVDH23!%<5(;1)QQ_o{QpQf7wKxen(W9I0esm`&S1%KOSqB*)RZ2 zykO)9TkIngIE;a)lmH{`TOLyjNdq8shVWt1ME)sgxg4EKwUR75;C0wmhkJr zcqqfe9A>p;Hl?06MBU6SQ6kvrc$y#oRigC(u6f%qcZK`p2dLhOZQA|4$sBxUvzSMZ z9{Rw~R3yDeJ>;purN3d()93^p^JQszUU6=fb=gc6rL?+|4mtlqrpIoo)a91U$s7#M zZjlE;@cVl$)gus%o5fqfcIO~JQq5T|8oaN{XYW}CW2Z_qfw>VdLCyovcVZ;l3)?Ai zrS%ZXG=?JVVb^RbCc&?R6dcOT+h>;`2lJmk=3tEulUQy{9|2VxmA9e;^li-^8s@gU z==?zn|0#9KHO)(@#TGUn?ao)XJ2W*Kk)xm38o(1By$_o&K3*i0JPhbi5lMz@aQ`g3 zp*^mCy~rh?uE5(-FIV$+QTDr!HMW`b`mBaTcKzIa2b_`=*|e(JZI=nLWnNi1RfXB| zYht`_iZN*+?QYC;raFU5na>u7FO&b1&|LRbO~B>E>)2E$e70=E_*X z*aO6|4(Q1|JUjT{pQa#|?@XAEP>Rh`EP_~8Ez2?E(6Afjw|LLd0qleK{bh0Ny6(%r zz|rgr$Fxf?%A{_Dx5zwAqO_brx1*ZKF4C~7N0n(!BvR?BMor_2U!$DN7U&x?NHy;Y z3^3~$@T47NxxggrC&VAg4&KD~U;hgi=X^v5EPG$g^Ecpse{)T$SY_8NN5Q^${z9l7 zD+CSnRvnl1tBsbn^`WF4$ea*LMv@S^e-cSRZdu6pxAt`g-09Bk4&J8of05tJUhrP1 z(>txR{Uq(-Q{teXrCg{R^-)^Ugr$CtuyW!eUcqH=0M%CcgWH{p+Ves2#j=@pa85!IX#%Zsz_$u-q9uVzuZAz}e;b~ol)HKo}>gVPhr&7Z2}y|slsZcm{QqLXx9z*UOtm`X}U!sbE0 zKi53OW9m+ah#d9yG00};0Rxq959+T`v7yxnTV{gv(91^=oN_RqvGhcI1`%$%OzNryrn zwUzvgRjH2sGQ6VH#$Qj$9w*G%axj&jv)5k0)7?1BaXaIKK$Wv~Fcr+J{?n~JWr7?E zTND2hCY{79=h=kacKvlBm82A`GmQl2L0&_YNUK=NVR=B+4yW__m^6Mp9gM32tI8!g zH2mVq|E9-mlX;o{lM49g$)cOjOR`rm%M!WtKh90?6!E*gG;W{KGXWL&p z4nWb!T(i&oF_UA=cE5NWi~UX9S37`Y`_s_Aq^@^YW<5;xvZv~Gh2eyCn3 zY}5KHKfIz;c1KosQ{j9S*MDNz%dI@Sox|4HAeCMKDoEIhG(J{xcC0M19iElQnzsst z`Bk`Fba8apGz~|-bOSQh_?P*=(Go1tZxapqpXN6juEXL5(G@X&J1isCd!Vs2Gl=)O z8)v6=_u5c+Y42`~yBtPV#qET$m2i5ulH-k%ay|uFYQLvJYbE%vJ@*0X!Z&RMQv)%& zY{Lnb7Ds=4#42HOWoUcO@8*6z?t3`xIT^|B zGg?`Hy2wUYOdmOM5pO<>^c%fiO0ZdXKOvl;D=g>7~_m>>UWqBoyZ&8##S>*P9@2ygN+&-gcy?L zYPM`Ab+5@C%2}=+$YLz5LL>N&GD6MAogUm6jt}i^rPB}ocP|vr{t26oYbum+Eoi8@ z%oX+DL;-|x3eF}SHs0LStG^||t_qcbDp9>RL1VLyN+(WPn>Bcz$B zF0;{o^PSU{n8pE_^_bF{vC&Pl?Q&W7mSM#9F36Q z$`{lty#iT19-(Y;|BRxqv}IvZYPzJ#Xg$*lNfBq%Eaoke%1Fic?c1R4m#f4P0s`vY zzOd#6%rw1VhTOWTecNy|;KkQmt%&><0b15U>3{38DLD+1r(^sU?Z46x%RVoJwu7oL zNBMjQu{I9O>KA6eOED(G!T8~Gl(b*HC+|{DkHQBCtHkZqz>E{sfW{-)rpHdz?CT4s zmS_3=Bz*9(#%x-`dIc5l&|LLf#xpC#8=7mOFOST|ogRU6+l|MLsYvPUzhRz?MzgSm zUvp?z57A@w)J5VJJ6nF+glP}TrByuT1rf?wYr^Ws`ZgvnahwY{Y%kr&ZaPIc2~dmz zPTC(f?fppd-Y+`xUYipm{9+k#9dG}9GQjkr>QS+Os!q{e!*yx`C~K^Y0x zPOh2RBUW`vjTskBp2A4XYk*?G{{wcT=@JaNIxnIsq zs+_U0upvqhkm%ES=T+(wx#_+HOWvfluJQIldf1_M4PlM!etkauT&xWBzAU}9&JB|I zvaO^FlRW0CUL^=PQW(0sIKQ3y;`HGsb5bF>@_ujL6j(|BgQ;+oX>ptQx!X=9B%& z%P(iv#v(dD*Y9<;6gfG?v43_`xjhbgFL#AXk20<8fo|qfAvYoB+)BZ$_lq8jFfg}q zq8$28W(Ci^qFRS^*Rm^U1mo~J&RKv|37@4_@ms7J2&y%v}J;4b<@*C?osV7 z`pMn9$9kiB;(WZwCwpF#xiNnkrar965C7;Tx5j604Rv?SpTQ3%AN$P~iHhxNw5olT z6e4@3uZ7YcBpY2GB+s$?JKh)Iuy7N`t&wK|l9QtPxp|@5}D_26LtQ5toF?20_8A(4By+p4|9Q&g>oO zt?YIcbpTp_BtOknz*$kbRcH1o0I}iiylL>Z%-mR;b>8~#9?)W}G zK5#58FSwbB91fsyg~d!0s_%gI^4PE9)BO_m&Y=XfU*aFzh?56uWyuRA;#9m=zmYwD zP31X@>R3UH866h@-tEKhx)0LlMyaJf(Wx=su{q8e9e1aliXFCsGl6^xUu3id2i$&C z8l8a(_uq?-$YwD%;z|XXi+lo+dz6VcHM1gLoCx~e-h;ePVs0RF`z8XG8-lZ=LonyAr?xCNx37JL?^=zlE8b#y#>y12QB`^l(vs}8M=jmHnJB*0U zZ$XDKTN#D41yi}7J7l+v*p3)WKlzD~z8*B;A556fIZaB|oiDuuqf9da95+2a(nsRH zx}_c(ejT7TxQCUqZx6_Lk1s}CG^@hr>|iC&5ihgc2Mj9ow2&hK0>rUd*7bs%49uP) z>r?bpNJGI||Gu&IU2A)PTk6VOa*mm)kSfcPGAjUcd#(Ci$W%t${~^Cri{rr!aYM`L ziUx0{kA<_6ukEW%KiZrt0E4eUwN0mx$BdyR`8iEBFE?@%G_!fv&<1o?H|UDhzrm&q zG+p~k7WSJ5C$0g8>}bsZai2>A+5jNUiQ;-OW%&TvaXn?%E&GM0&JdB|{TurBAB@86 z-n>bQ;z2HL)^{sVlGah)o#;fXrrxi2*m zq^lf;&0+L9HR+@Zl*}Br{sZwjJk52DNwPJ*JBP}@UYtTGG~9gj4Kyshdk0XeFOzpC zH$MK&iZS~6Lw4vRa>3m%&5Dz?GG+$+Bb3nL@sWA2v$}tp3YNP*w2mU)s7BQpcK4J@ zc~&@A=o0FJ_DM{TDL@+_B_oc!S>B24X~ooUR$O7VOBUfN*#mYV#(l&%KacNp&nTC% zHYs>r{V}m0N^cJp?BL){4@ci~3^?GdimZNGy?z?jd1sd$@f31+7vkh}o8j$8^fgJ( zO7s=t+gC>$H;r88pQpEUUadEyfc})| zPs;!TO}aZenIQ%rU6vv4X)MkTa(bJ)!+Hw{_)8a9Yjev|&*0+$z-Qs`2SpaYyQcD~&OO!xg6M$am_A5CGeV=QfU+37zm znyTn=3=C|F`=yWbQq}uqku>Yiw3V9voox+A@Tqw-u$)D0 zPs;`JAZg$UY)e&>1^4v?aIZ=q8Va_nj8;`Bf5Z$C4nKJZ_t>A)*+&S;z}QRF#s1=B zuYDHhzk6a;3M?wA#uaQ!OBiifx>>~$4yz+dsm%rxsnq_&Wp6vXfk_k5*x$gVZ!9|| z34P3VfzA5oO*-Msyz^y@%I-s>DG105Jl3hDa8NqHb8b2<^j`IKboy`U&vtOLtaE4k z^d{^ux>ZNl{5|2Ej~q)H(gVpi$4#G&TTA5~g2x9ognGvkyvkZ)3en6wtI z!qP^(R2Ap0VE+1W*AV-wPcI_m7As30MRX7G$?mXWUOAL)Y{DU!l^;WhSq<=SZty4k z;!P17X3A-<$zlI2)U;hG3h1%>)_|9`;x^zg%Dr8bGk{f>XxcZV#i&_(flayP)GlBO z#5}x?mHicj0T+{cE8m{b=m*gtpDvmVjSkt7P8G1XIERfETpE7ig#k7`#giw6{hIvP zG!dXk?8dr?oIteClfjiafYNqK%}%#NL;r!#4_%sms$u0TX?BlXx-V*6>bDC*k8(Xe zkk`KtcwQQqGI&=fJL?MGeS&BDw0l>2sZ+-Gw*v&Y4Tt@Pcd!6$vW^P^!m2(~N@dh%c_Gr~n<&^S8xzZsl8f-Q;o+lRYNHrIHM6$%`x_slSXgb= zy@|*;%y#EbVON>_PwH2LV5lyT2+wk057 z`XuIcz3uvLJ;_*LeM?GxwDb-qk{jeysNU$yc5yPl;jm6#dMiF1O+3ZG+LOk!bw%(l zQ#3}TMP>4Q-hJuq#3uAW`FBiH3q+>Ql(JAWc))P5gZQz>mj_q%OrsM~d=H_qE1$rI z88WYF=aAjcFB@?!!kQ5|T;6X-3_uMCap+5j50E4`bmq42D}rU#T|4^2Tl(W8nr z+od^TH&NoKX`>o7_7d%YiqvCfj~3E=HjWuwYvTr6eoN(AFs18_j-s^keBYeYntrW* zI)f6s{)`C8Dx-hatZ)Nxo^e;vU5Bx>Lip|~5PnHMTxU!!eP9P6u5%U@Lv9SwO*g3S z{xJPpvJWA;tpYN(WN03VSPP>yaMgZtxd(ew7|?O0PH4vlp3^@GBi)o41wkH(Qpi~m z{2MHNyZs?WUU(;AwS*FJHW_GNZYb;rOl3UXGv{gT*Oh0`sozD{`47=g;B3J zp&?KAOqO!PUpHr7g{M{5N&S{f+V8ge;HUje;b$)2N4{T==!C=dmQ>~R85$r7HZ7dt z4g`(ZVz>PI#vdU1B&-R~EFKx4-11E{w>ma6+?(wR!1RFm_faeVSTm=qr^N2@_VUuv z0AfM9r{lc6d5w`y`uG@2Ifro%cB6+10OpZUwMApMQZ2>EHpcK<)ESK4BWO!JEABv= zN^=zEDox?;-`6P#kpzg`sClegb(v1&vWnhP(k7j8-1xY&Fc(H~?MV}R4`Jl#2GdTLlf$-q!EKNYu7ai(O0^)IIO`aS0G zBc(y;2uL@ZL&NWNk*3N|@D9YD)#T2wvBxGKpM-Dc*VETD9Mk~03y3_<@Xeuey{x*} z$OWG80-S>Na8(MdYbYLgjbr9?h|ESR(C=@K5$SemS9r{!HVvzO-yqo85V2(YyJ?!C z=J9?tll5Es4f5@bVz;earx;R!bI+EJ{e|?BAP48;-J{V24cyH~r5dqsKSk0)2j}1- zOa)W!sB?!u$-gFj@m2r@GHz??!cDG?*qvtTSN}9_zwPO4Q zJL6hf>cOZ~OxJ*|Z)WV}H;;j<^k6xlzFoQ9eq=Gd-Lpu6RPy|MLzcXVoE`7sRIT`l zc4!}r$78YI95th(CZ|AW;F_@|Qvc#?MQmA*9X_*K@JDfI4>_lVjj-i~qSvK@Y2i(r zlddsE*+I`h6NU4~%iTLjICG}Xcyjw9&TkZW!{x}co9H4=3neW+_|{#~nLX_>pwYq# zTzq$DoEAEEpRf7=CbgAXAk|l&ZP4%adStd(=b3LF^>MbxIV*P0*DnwkPWY^1sBEUh zL018b7WgChbHKy9yey%r636o;u8S$SqfQ#T^WtSU%~`I>m-Fy&<8=>$b~-9w*lgt_ z`OJXPkU z>=kNWLJ1Ofx)F3PH(*#iWtW`fc^H_vm2}`HTvkqMnBJy_gVyp}H~WLMXPkCAZUZcehXKq1`6ST*qj9doG*KC| zAW`;Rf%L;Z0oN^un6);?QwT_Q>qa~Km;=kEY?+o{7=${hUFN=^)osgX_@HJ6bn%Vp z`LdfVV1xG1oWspnU?Nc@K`CnD3zm_-4OU!Tpwc-p-z00-nzG@sh-(woMk&xCuarXt z3Sr~6_05^t!)5~PTyxEPazAOt{%T|3wg-rKE+&hHINLahTrO`qA8b+ir7dDT zNAN8AGv$GH%aeU`qsD>H$3K%T2?eS7YfURjR&#{f^`wvls}CyWw?gOJRemVw-{(VI zXgM9EjN5K{js8mO{q`VBQ&)AF0R*_X`iW|)nHbX~2bWotEb%ENCwk~fSN%J}dCFbG z@tM}eYR?*6W7Foe^LScnPV6^?Msd5K4sC0_@VzodF^+dlMP)+{J^fs;sK)icr^s~& zIUlo`HX)al--3^e7^{9g$dFH)rr@0hzq~`|Z64QcHm{s$KfRMy4&-xRz*UJ2m#W$? z#8W%XX#W6)I^R=XL3)=zqfPW<6@@HtgjEBS^5}!& zsk6FJNR>Cl(Ac-47c}hVEA1A@ew7%(uj7NU5;3n)6xKufHA_r^Dyrj$tsLlt`7yd2 zgm<2qE>t1m4vSCu%*>HG^eD+bxZ#}|3HQSO*%`K(ivx;8NHeZivIAjP!J8-&YqxxP z4zi)kVbxqJ?qhehX-+|@Pu(!XFhm#pwr*ueNMqDgC%uq-6T930m91j#6TO~jsQ60E z9xjz`H!EU+hD7$TCESHKMA9v4{1FeUp%h zQV3_NNzM3zPI|(4iV|n5LWYY2z+K>FLx#t54y(bKiyWB_cpuU7&X<=kX?@cYSqmB3 zWz{){Q~Cp+WWLwE>j)AacVDPnS(!C_qVK}hH03jMW2)bsoN4wC+O0H4_$1`BnbsLZ z>)m@`I(dZx9(VffVL!f~kp0#+&{2;*@uF7E4P61l(~Fd@@zCG_)RUitfRFhh>pC5O zSe+260hQe>nR%O`7CzhJlKb5jK#3%K0lSz?AvOITgoK^Wk4# zxQ;xYU?Xg}R>*rOFDF^NxAn1H;HY5Ac^|7(<&zI{k!Kh_AB~(-+n@d|+~v%hRxZVf zdg2w}=Q*o*+{d4T9w{RZJm{4IR8*8C>zo{HgP%A&f0eP9_Lq|}U*5ag4UxkaevS-y zm+tojHzD{7gNn!MDtU20w+%LoL-=2W7{Bzs&Tjftoy605{RaW)fV1DiF1>Lx!Rj$R zRXtlCiKRDfmJ{#PSD0+rsj_K{_Fa)#wTbeP*^TxW-LRX3qvg-(S=)+~aNaL#;@@&}S(GM=eF7z(j)K5gLMa%>XH35qZ z%a1h5y*UhLh-t?;(**MD7Bb#J5dH!QzBaRSQfqbGNFA7no?tp=4ee~oXoP-W5;AYq zy_?Jbx1Pc7JZ)ldkZ%&!J%3(NTL0DumFN*EO?!!h(E}Zh=^NkP9aS?{d>PVbs1$FD z1yKvS9V{7g&MhGv<~dF&Bo_k*(TQVjde^zkgywQ-kia+tRG9d|ow;w?4$d~eNX=`V zA0cH_Z@0tfQ-z+*rq-C8+5gYuwO=s-NGxY|qUtqKSX-E|T zyyE@ltT`Bob8+A-rQ+bAD-L$Cp=tP%#j?<)Focv{nU9b0bAz2XA~%mLVp1~^hMUso zP0D2T#n|THeT*Aj5qVVAq{1J7LXMe?ktDS(I6qpLbnrdU9|lgy)l*DLgZlEIYCf;J zza4%$H30iG(1$sXzDQQHXe-y_7Qu9CFWU}nPWIj~>Rkg(8@2daR~=j*(P_sN5f~q7 zE1I7n*oU3Y2po*>f+jFB)x14y5_iXvdtbgczYM(%&aGdv1xkx}8rD6m)k}YBDNn_p zK2lGVt1G9fEvNHc964rrd1r4lH(y0=F2fFBtPWbe!WIO8;>j#Ebpw(|b-DGN56?a=@sBXJZ3)zYw@=YaF4f#gq z&imPR`L1dc2Wsv&^8V%1k_Feg3x~xnS-ect(&C?EY$6Xl_9k=$tbw*g4hGh|sY)NW zjsf@a(mPQ@wFS|`^d6f90LNJk5T*0-aX)010J8mlN?xW@yhapS4ze`%=pGR#M2b_2 zxVav}lDKyo{r7`)$S$;IRNQH^a`WQrYRPgwl=rvP>75*sfVVh!5RC4~h z&dP(;buXoEtF-apK8a2!cZE-t?EqKhS2#IgDLla#fKq^;dwNfh9p7KhF6S0AkaNA% zsY!su4tc9!<{i~i#%iU~CqsW*%LbehXEzIBwM*|d@Bi1zGx$oK9ZZ_IF5X) zr#$!kx$25rU&P~o@Yj!idk)j>DFaO32i2{i_k_rE28-B+(5f5mvhrXFv>C14b~3|j zy+>O^NhdLT3*`3-Fu+le19L}*+t^O`S-sb+U`6fb3H1Vbk;Y(e-<*ZI>r`eTu1Rn8 zPdGMo>EAC2!c!5fw03KvefyK8FoF8sZyq?FvZ^PDcT8uB^A~L}rFL3Qg(?((+rZOP zl7{Ozz4o=36$j4~ZbvUAjhUn70EEkLf-yk6fqwZz-vU(?N7b+{T}-HX+B12cwm6EW z=QXs?1Tf=U=FwsoXIWWM+&2ib!nSRr3i7qGFh8-8)<_#0W`o;RuC#U{u6Xl9jBj%) zCs^|yuxa(h=_0Uk5}fz8xsmNn*}4MHxW0VV?NpxNr?su^?<}ULe;Zz?*enk?EtG9! ztnNff52Zlo3krNE^UgKvj3(r=nbiTxKCwmTvP+mwYKfdysPq41Cwq=+Q>7iqO=xz& z6eZN*u}ek357~ga1*2D9_2!V;N=lQOTMv7am-&%NgLVgWMfBboMi$z{@6w2p?}$pf zIgca1t1XDZion#f`so^%Flr?!8)hY3@|zW2RLn=(5MXI&KHvszm0TI>X-elZ zvKHIy^=3v@Idf3JsL*RFp-q8vaqr5%Hd}u2a6J&{X>190T_*b2;^GvwOpCTCvo*w? zN*J^_YvFscn4Et0?CB0?-mT#-%8V;RAX>j!#u_y~GtLF2XS<*XxhAS@o!brg5z&^H zqA7e+$NDh0t^I=7j|Y2Z774yC z6_YbWF&n3rrk;}Mse0$^-h#8M#ZEpO9Gy_=$&rm7kNM+M|Eq*vKW@^>az?0*RQhSW z3OMgfGzX&WA}=l^9Ob9ojsR;%o+-A2KtAd~%;h03f1rXt#AoH+%5#D+pSQ)45r6cm zZtcP0>-|Lnt4U&9Nc`be>HNF8L&&B(W4MC;?%M@j09|AL};3=t+Vi?;+ov zece8qD5(Qz47$!PyA}5aX*Xu6XnzlYYxTQO<}5-jaw+Ig<|%UwDT#f3{up!U zykEag$oMqaiF&@pd78@A$?{Q?By2OvXhE<~lFpbE>BH+h&FD7}$? zxqhwgb-fFfCp}Hcac#wu)(R`DF{}*-P^wJuwwQ?6o`rD=7`PPr2GEj82e68!LDEbB z7?5;#&-Q&6PE9r62mInP*sSpwvWQf|T`U$6J^!XTwGSnjK+?Imy|-d0N)3Pf2Mv#5 z-ZrY%<_h>;FV7(=>RtYlU4as{R-|(ky#c7tX2D^2$fNC^idbsPp#NLZ{*LfR$ZDYN z%+3H{EP3B!I3Nc1>V649A!SlgaN28EsQ%!`%HK*-%ccI2L;pf!;|GdG&%ti5RP(^P zNt>ixhsPwvS0`j8Z^Chn>ptZ~8zg;VZB$0eaK-X2xZy&@*0v8RN>st&P%;BpELM>Uc(bsdg$l@3X$8d>8iUiYf zf!5mg4a~fl&QSsFb-H4@*UG%m#J)c1c?5&&j|qmNE@!n%7*%|Vx%qx(P~q3}-ea#( zn~M`Cx2vKRl;t(TFuJe_rAtoEH)w#rrCtQeES8U7ITSxY_4ziMCaEm03zU?3@a z5GaI2$4kR{P(6=&hDlzUwA|#n4={D@+~{1Zr(zJQ`r05oqZ}T#HDNSYcvzyJN0rSv z%B2`db)X9P_YEYixK@GGVa1Um!wXU2vX~B{cOk084-W<+%`XkvApD2a}`AW_t9v`+STpIwR3k z&2ZD$eSoTT(5v-el#Jwp4qf%VNb9t7NG~-p)lbQ#*4>*|2V=PhO`QYF-^H*y< zH!#uR#L?ZP?Mx&$cad?6TegG$+bVy;H{L&|x>i&97>e>e-fdKTky}#9HCc-pGwffA zgp#;v@1519?*Qt^9pU-u>s%5bJ-QOCk>8?Oo@3%6##q4k!6S045#0sTPTAvl%H>#@ zF$;IB-@s7;jjQ`cnE2-H1}A9i!75z9o5gM{;w8Po2H0IlU94OB&NrKW{dpJ%=sUIW z4b2z&AB^)=;R0DB2a<=NBpH@Kafr!W#cu}%V)F0h^KE?l~ zhw&4|DD>NHTLZ{v^nxA)VqMjps$<@8FF*ceUiJm}p_+9U%3OMfz$;A|^CPOZAlAPS zmYy6^1E9;Jdh{2*9!W1gi_7zw)e=+d?SEG3rHk&-m7?vVj#hbmUK0(E+Y`{&SSOjZ zp!dc15DXL5jlsI;_~~@zE{29u>>ZYL`tLn~iRJH>%gY74 zTr$e2mRpo09~wURatX;|lYa@o;qK}7|A7~oCStt{BHoJn&tv2@p^{`zAvrFAJs&TR<9=%69kjjHb* zLoqOe-AbeDw#NuS?Yn-mx@DGj*M0p;@R}ERB59ECu`50* z>!{2STeO2QhshXKZ?X}vnE%qwV$gbmYPh)zV_4FeR13#g!(Cj9Z9}Dl<+Zjux}i<> zS1QR^4^NJxOYt>^rSdFLhXtw&KIZlrN31Rs9eG7HZ)64k*^4$4Qb;rLZ<{^_R##O= zi+IabvIvk0XL*&++!;9>lnwgymX)jZR;8ega0W6YiSsyD6iXS9-cHr9+Ppuo`qKb3 z+P21e@O<==@fyS^#p==37k;GdbT<-m_5jh+U+)ycB<T2t!_7DZCI#Um%vP(Q1X0Ph-hDN$P!Af|=zLyJJ1?l%aU}V~@Yy_J&C? zA2oa6LI`UI1K3TQV`e0@4PYo;&Dhh%XS+r^91W#TTSmt_i0uMBgykPt@8y{o;;(_3 zL6MclLhcwZDCmi2qlI6s^2fz-p{Px1Yqe4DfVR1^wx757p-PxC;q2q~%MvBR@g|ZW z;o?8Svw7q&dRP>=*53hk&vK4 z&e7!tP<=r{Li%ULg<ndq7MbK}90k>|zR^zv_X_)fvkl~AzX%*^38Dj3_IhSh0F5F*jFj2A?qtjF_w2rvIVIeX<6f+EIX)o`HdSbG{vp8P?oCu`y&lQRCauIelH%F zNY7jqu$0&|@z;F%5LL;w8gQ+6gxQ)RV+tKQB#ge96=8OME90e43SapyG8S(eQxbjY z`9?{~wQu=MoV*|U?pD~XKCHikd|Jhr9au26*jJMsWcB_0ku!4Tn{#N++furs9Dcaw zbi^B25;L~BfGQS*5fkX4Gu#q_T9di!r-B!;d1^j>4J}fdRRZe2WN+sEVZl{AQ$uvYBD@sy{~y1tvDVISF2P zRtqq?gn8*s>B1;%2fYugV|Z;oW*7@{%sNLuQA;I?W_j&Bds1ARgWKYq;8DT)me0fL!!q1zzSo0B?4?DneflcU2 z)M|85=UTL2=SG;N(nbZvqfEWQ+ru&QII)2UHGfr35zE{1>v5ZpaUUWM+)O`}>fD%0 zJsg&b-pttw&Hx%h`4;*w$-~9c0xw=TL`Ni} z#T{*6-Zu#ubDtK02`tjpS7>(ITn)4+miRt1T}`hLyY1}wN#qu+g?N(!KE)3B{xdi2 zSKtDiGrBT5U;$WerR@vR=eGUHI3HS$?$yV<)r?jaa}M&nshgVHSMYr@sNUb8&EZU{ zEh|Co0jWOY&+= z?(51>Y(hi_A+<(*FQzI6&u$ewZm;a~fMulg4tEPw6N70y9aWRvS*U5+$hoV9_&#tm z-&Ab!CrF2Sv_YHDFCN)sbUg}^cyYGL5LCO(v;A-o^ExoJ)Ebs0v0cu+Hly0wt4hZ_{ zWmbdlqG^j9J6~aPkVS`lf3d|ABT@Ur1Di2&t_iec6l6XJ6e${w|6Gb z%1Ae^+t?f@_+zBU;x->7B)lMN<8}136JYONG>$z-en}?(9HtV5quc?+=@r2|7-8e|DkT*zb}O%sf0>$QCh}UgvyrfN-DC9v5hVJ zzHeiTq$pID%PzYyjBSi=7J}PgPA*3&8LFxcZp3@nd@7#>qFN z1bf$rTD2_j`T9Ys9e?D(!l$8rutojFErNFqCY5SL-ESye!Wbu!H};Dj#-UK;t7gmD zPT2JjkW|~`h_dNDGx)x=bdm;is8O;{m-Mp^9h-YI1S4iq=Xc+>>~n3Y^|s173YW@r z8c6efX|J+MCb>Aco>AdwC}T4WA%9}%;=Lf@U?UpaMa#f3yQaKMf4OW$uQJ{Tw23&D zKIWd_Grn9PGgK5kb1t&Xte2-TwCwV|lN7sWLMUzP5wW)@+FS5h!kNHwg&C6{2WxfG zJF_8tfyg|wS+6d8q>T6y&feMY@v1T+{d`GX7(DNFqGm@8{%#9~vMilH%z<1}=IC4) zSZX*neod}vnKK8yQu;p8P#h}%6}}8vNAXR%TIrR%zU&;C`h?Yo^@NcFHw@CdP?CpM$RKxD=-AQp*yv9q?>&n8{p9C^pndAQYs+vxa$B!p-`-q;2 z(7naOQ*XH;%=X~s&910&u+?1-QDxZ+fDY!Ypv`^9wPyd}y3XzMtRE(&>u_!&l^In0E51qn-*84FZyEv-x)Za_2DCzOq{v2J&a!UFLOQvLCoqUR!4ZHcc3d zt>NO8{m((C>CdFRLN!kXjCUbTX4W>BnIURQ9OYF)*`i~P0%f~7>>8?8QS#TnYL(p6 zE3k3IXxBT*F^uj|xsb`KB|Ev&2m??_(o^|ErHRXA6bajO zb4w3CamCdNPpC(K*wx`FOnw9Da3gji*+YvP6|?7G7B`a4^5+MG<56#*S>DXeI_7uY z$eFW$nBsE#-xJId{gPX6-*-nNEHJcwK~%JKnY+ZBV8Y5hj(xE@FOgr~8h~QeGf;i@ zg@-&-t-*Bz1aSTAr?o2q9`%VATe-Q#s$bqhLPm|8Nw1@3$(tj-^D2zdYje{;{O(i3 zABu9Hl`Un@sdR0+4JJmPfQ%Zjno01V;)|S8R!v_ z!L8rr!fW_K;)-G`_2se1_A=`tEfB&AEgZV1-CRm!BaL|Bda8>-y2DPh zH93hh#w>voS+!PG&uiln1HOjx6>>cO+P$Zx|FvJ{0<|8tR?>1N4_(ofM4Y}VXsCPn zx--oF7)c4HT_vzZ(Z(Kn7DRN}n9f|qY^mFu%$RZRn@xob*-izeEC#X~YT6Dtk!NJ# z8;AG&lS;-Eal^6w6?$5?K0b4tb=mb74*roQm*^y>4;?v=B)gBbCWeOg#0LGgXKX3w z*=ukQV;9OpLJ|#45>g$7?pbNnIB4TD1XvNky^~2{r?qi9!up%Y zZh+)7Gt(C)Us?Tq$OOo0Rj1AiuS(}kjxlXY)38EQkJs%kK*0VV1tQ#4;v&lahj?IZ zLJb9NW*%L8=QLn6_StcDpV|Gjn*IB#ph}gTmc$iq7a5U=muT9Q4rUhE$avJtdu?#F z&3%D8UPZu=&+MBKLn>eFTs4|Uy`O&?Sd$KCy?&4K@!G+)`k_3FdI0t#oh|%DSp1)5 zKbaxGd>=HgBYi=~E{v^k^emdJt?91tz#>Ipt40atY_)*+U?ht)X9U_;TE8Pl>i|y8 zdu9hHc0^2%p5z2oi#j*IeX4>@Hp*p+czkkKBCdXG{)rMCPSpq8mj*toqxy z9mkIxRYREEgQf5`o6^iJsBJ3eDOuSo^87Y+R}Ii|O+8geZXfw-X!I(_$;b;nJjs$8ogUDFs|K``%~_kbO$7S z3;9zr{1=R643vyYOQN{NPn}w;GG=jTK3*Fq1)RHBL-~p13>$J< zRTk6xi)qlueiqdKfrG4ictbRH$9Naj+S4E#M`G>FD$a2mroV?&&UGrl* zNanhjffKK=%*!z&Lq&3bb?i>t@$BJfWFL9JxNRZ$Im{IRJ2*oiWjGVj6bYlo2DmA* z3I*Ckj8(X`r>Sf_g8U7LOFwYVxm~p(#2yAiG$*VV@&P~f8p~p+{0Z#diq;y1t6{3J zI>4!?=#_XgsXb5v4t=kfjJOO+nXSQ?h5`9m%+!L(_5^Bx^cGYZXBj&N$VmK%3tq)E z%rWqnvUrTH)vKZ@N$+zu1U!mH?|>g8u4X;;_NV7~SB%T06Ku-dA8!EqjOxsfrHzuj z4ad^)w^HAWLcA+lfxvA%YF}F1p_oMLDMh?8HMpJSaImsyqA)PU+d5;h{U&$ze8D*3 zu7|6TWP7z8;J6c+|!G--qc zc}|-f9@{jdM!7$(I4k|OJ)5(t*7#9*g@)_dUFmcS9vgC0)T4Sgd`-+bXJZ9Y0(6pG zUdwXE@R*H|I!x45Y_w8KoOYst^&Y=ULh@&q2y^Ah8RF#nMP|Ha+Fj>(x& zj~^C1x*z$@01n`#g~fRCfN$qU*h4TQtzv?s&_u#}iuZAkfx$U^svM~VsPYtf`v;0) z25X6)bMDmt*ya#`ZEjxh4ZC*PPwr%jM-8mz2xOhaQd7ZzHgWl4yWR?qt0z=bI_hCYeZg)w~mCVtchzA^z zh<2e{wR^ROMHKTzaodzIK#1(X*a_)1k(K5Bi(p&*=! z31U;V8QoV?+XDTj<+2m3HJ0O5*;Cqm@QK{g_V=y3n@pe&w%pmHV`MKqbk%&4uLo#+ zov6u9?X5RN@YUNt8UWB4h?F%dX<^2_gdrce&=;bSgy$)T7Q@bs&p_qQSqfUmqqi@r z2+cr!UEc7`C)P2Q*tW;Nn9gZlOyzB-iXDgyqZ>{W&% z2UVL@{r6{e;BHpxAEr+iQnX60>lM6C^J$$Yt|sWqmjl5O$f8!-o^#I$RQ04&`?xQN z``M@UjddPA$Js^IJaogN$CYVLBQCcZ!Kpm%9*Zr$JkhudAm?GIzV`2U&5;??e9t09 zFSlqq>s~gC&-31|UIq!K40{4|FX$8^t=-&#n05RV?Z|Z}+mM3l!u5uDB#OgZE#Jd~^EHJ!kAX-xzl-0{a>C z3EF)ARo_=o?D#E%(fo}Wtbgxo8fv*()agPvs=hs)7VC zw*rBT2`BP>UxSm=vk5kfW6ft1I7vXj&A^!x zFA1&b<-M)8knE8J<#8%yvTQLRl8{QQ@#NjIWdo39vJs_mL)BOm4TV(ch~VNtYQe7i zPE|j4Se?R$au@p9K0Cr3SulRc&}ZIplk?iLhTCZe#(Zn!oAe)FZ~Bt|vB!M*#W-lQ zH@PSOR_jiQKQ?BE5#6MfTOn+6U-};;|7*7LOt?cAD_ZX9$E|P8_MoiMEfMGGw>1@# zSF~ngLK7UlD-f5RyHnQBVA-~!m~bj8Zu=V#O)Y;jmxM&XK~-OR%d7at#^WxWAVw%S zjI)oA0d^p7vC(Bvyak7W+#s^N6x=@J_Qx>S=f>dj1InHFp1>Nnk%1_GUU!YIxF#4+!HUN=l z{=+^Yz-=F>_D#*zsE|;xk?T=XJ6WoyOy7RvZ(g>p3qP(iX-2y$r$FCLez=lB^6k*^ z$4@*yGa`T#L}oKW5-AFmf6w+%ckrV6)`9irp#im_6&rs_M|9-yL%Q6?0ts%9NOPD) z#JNYC-YYUhDn7{TQzJ%N&J~mVOr`uuwQaedfD0Omcqv7^hf#O(s|;{DtM@)gJdP?D*olrKo=-gI) z(Gd~n^CmKiFWp+`EhpDZpp6bR*q;W-_GCM_C1*5_5MMLRE~X`7`up5*e9l{Q-ahSC zVIvs~vF$k2XpVRztnC-3wr*#jHo%QWoc&pupHSP*@6QUvZ7gQb*K~+ z+uv#$CJ)_7t9b~82EVtdTJX>(FXZ)^qhgtGcWa3j_V$3aqA=hUK}n@wtMO~gQSP4> z>xvgVQR-FW)M-{{Ihv(?da$1bwx(TA|1L2T_i`2{@uq?3mRoO)P9;$;@67vY$Ql*E z(aznq%@{zBc_Jk}L7?{#5Kr9wXUa1q+VHm7g-w%VrahB5m#$s6$CU90a_e(~oE<_l z1U+<!tml_&XGQC{pS1LV!E8Yl$>rQjNsuz=E87om$S6<7 zg+X6HQP*K2=mKf(kNFL{uR=0-;Pg$FW&4cFi^l6FNqJ!Tg&6T%*VV)R3%o{SL#ybl zwwH2!<&i)FK`FlmDo`eVAF}2}biL@qZ}Yf%@lM28dDJ*MxthHf&}nU!wyb$rcsd#k z<)Rh^UA3O%tD3GGmq@!$5S7n2G3rCPLKastlMGs&Sx$=xQ|UU>W71gqAmjZ9QE?rH z86X1xDg86#1C@sayS521Vpbxb#G)QHx0bFr8C@EWmXsVpVj1v$A}PLM{o5k>J3ZTh z5J6_M<)W`W*J#rakg5xT`t7F=e3eR?!VNR9H@;TkE}2eI2o8S)lNU`bCk|NCjfV-- zx6v$jX2Ew5LAQ!$Nm2LE-Mq!Mrq*X88V+T@skZc=<+UMJAr#L$Pmr7k>{a*!$BsWJ zJ=0r75uyojk9M3C5P{9qv_HT?9%6w!R>ot=B61l^+D3E0y`*<6MNR1>Rs1I=(E`B9 zuH|G+Jyc|)b$Zz|=4wX)F^D)FD*jFDR^q3QnZtKC4iB#}q-D#Ss=m?c5izBe5?^fO ztMcR}L!SV?P7%Gz9ek{4a4Axcp}mpK zgxO!FOx0Z{-*5_ZSsSKJq1nskZxjbY{pj;mwxT#*Gr^g#CzdUyO2&1LuJ$#yW!Wrn zm5nX?T^x7kyjw9WnI2bp={|1-EA&Y+*LS(bIG0sZzdQ2CYqGspaeVKAegS;)uhOoH zn1lNZ)m1f|o{g{OHd1!ue@(xA`DUfd8@&}#tX_2+^Uvv3Ni5Z9qxl|@@t(7ES$~0U zX81f&^E!aSw5v6ArcqyhQt+CPAk; z^rbs2tK2A;F8==2lY$zj{YiIo@)C3w#c4+vu*Dmnt!@if1x|GLMR#lYTx&H!qbwCD zJ%ZU^C+xpplcWivbcDbbwuG0$#Vr0W@N3!s8xPTXTqvPh-~M$AgRBhuW8GoueRhTcMAfLfAz%{Ti=jK#EPm7~4`Am|K6B z7-(+W*C>6Zu9Zav?bh#$pUF92azk>-=`C{0PD|u+3|}4S15F@t=$OwshvR#JkMSR8_^BHoo^W9+ILc@cH1-sJewb)xinx8v1G8(}dH1 z^MzsWah3074%Zv6rgPdAkzGfCmq63kWO3NtAqg*4d$)GZ@}+fBf3uY&Lo<}Vv2jLM zL9Ym)VqHFuiYWy70vxd20Vo!@ecFVU8}v9c(v_>pjcn7t%Qir=4Kv;{Ue$vH;J2wit4Z9g9gOI7rA;UxaAhq6FJGI7ZJB8g^7+i&U&z2M+sD__?tJ_UM;z1-_o=6>34<~}UTZnwR^ zjPctoRb`p~lrf-EoD7O@1|cOV@xLJVuZ;U6>4p9e$}%g2npH~|-t6os3hrfZ`W}}> z8Y&Ph^>LUxc89&=U~c+)r~U<`xUc2nS4+aPN~32no#Qp9{WkPhz?Nl>B7JLybqVZZ zKAwO`r`IlQA~s0$5<02^Gl-u0XRH2VElaxiSMg`nFFyEpdgI_x2+XaMe@rvFvz4@e zrtp!Lc>BlV4)UOc+6}8OV2Y>n7nXP;rSi^1`M_Vyj9s(J&8v{;&} ziUF?oz~Nn?0=YnL23}psjz z)iR4c^asV+MGsQevk7PE^qm36cr4}6oN$q&5^-MaEfX$lZlK<`34QEM<*H8)X_1vT zj)g4$4P1XX#cJuwiSmRtZ3yyc@gmXSemK(L$_R2sp<8*_vw6=UwIg$s5y1Z6Ihdo7XYBIb4l1dW6aKBjwm=T5vp+;xSWj`zR?}ifjF1RxzUyZ{e%g$gDui z^mn6fmGK7<@wFgHCXbmz8qWj!?r*1L<4&t65IQd!L>08NU&{VOhf~dtN+I zxWtokOB9IC3&+4w#(S9~vmy|%Y)BtP#-2CW4toM9O-eKarl!xR>LMCfNLQ^2pO+Y3 z#;?Ic;sn+OpU<%Qg_)JyXymdn-yk$qR!yIx|J;9x897Rn1Mu5Pkrbh1OsW)R^tcHo zy$mcB2ip-*+-ZFiJ!?uVM{P2PJ0I@m+(ZQ#eHP(r85CV-4rbVDogARmEdSdvwkv${2p-27gx`C z7B?b3--L{-b`_?F|CKCgnwN!wRosS6NKU#;V{w};GU){z_L=-4v~j!zjD zc8Lb+B+vD3o)bVh57*A=E`(_rj+l2 z-8Laoj`Kmp1+kNtn!HN@C%w?&$2hsoT|vi#GKQhp&<_^5g<;s4K?)3s$s-+E3nZ2A zKd!XF0QJ@mC7*xz!pjEc~MQ+UNvMSI|==VaKmsDh3u87sx z4hW33lDS-~&*e(~(0sW{tuM$_ESc3X zj^Jj0-O34j-0M@5z+0nPPz{3RAfA^vL{e!|BeexBEJDGgrPk z!MZYE;``j)DE$I+R3fMMOb`PE4IqY2?*rz*XCpHfaD1l@9^nY2$w7#>{dE+6=f030 zpcg_?sMN|OWM6;5iYUh-Q2m-=zDS3s^|}>lUeEp1QyfG_jwZM^ILA%}Imbd_B^wD^ z3=4EWiLV(kU|u%j zQ_nI@&XG5z$+YYPTslvZNfEWHm762njk@@$An&?_7K6K!WjJCWMm# z9l8R~)0rE0HDZL}OS-v-Y7LHiaZ{M71Gs-n@ z{RHnJ0BcD!$s8^?y{OGUdqha8hZVubG0C~I)scHbFKZrmCE zy3IKR+WQwVt{Z0-vwq`Ev0x0kNbzS>r*(8}p1O68pz~DAm|8Eg8vvKNt>SF&nuWp2Mo_a>3io6KlYYKD$B3e??7%D>Pzi` zrh(@!i>Pt|7>!#CU>=^w2FCgbB{ldxA6nMrunCj@NIV2F40F$KcNYtDQEly=8w=n>LDNH z@3BHsJxY|h-lS6ljSKTNW(MS;+V59G;ep?xHKDD2+Zn@Vv{g1 z*x86>+)h4uDMtCqg5a?R-Xq9n0-r43Y6h`GeoW87H8MV4@m-H7Q-A$Joqdf%kliin zn}Q3cQUY4~;@EaakAUQY8yB${ubAmTH&3b*QtzHY?$%W+QiV2QVn}kB z$ccvioPmw2BA=f(EOh6|c*ORuwE&04?dJX0t($t1UwdAI$C)oul<@o>zTwlU zq~S0qqE+O9cfs~<<@0mG$NVqeELoiiikfTRr+_u!z|La_`Ss{y65?^Lzu4PvOn z@da1GR!voo7qIgN zz0))2jj=4hZwAlnpV8~gXvBn-ABi;K#l`BT8`JuKI)o5!j3w0g=Re}@x>>lfT~IiB*#>73!mItK^mhQb3MyA( zuWaOq+XTHIbb=JY#Qui!9%KK~0M2AdR(4Q<`;*cAPx~*wyk{|gY<|b+aaMgM!+8Jh ze)n=v7uS?aN{ay3YPq+&IjpnESJ{3sFKB6Pb(b>W+Q{jMGUuf}X*V zv9~Yjl-$>Yd(?Gtj7tfDKl^9aBIyI={*4srF@19uF!iNmPSr-<>z~~_yE+{_ac{t8 z=XIZG7)&*!z!$%=lP_7f7!*)V9?9fu$zYz+ksOw4M{zJ*KP!t`0{JN8IEj$u3P#Va z<^AnaM)$vxb_nAKr=;vHGCi^?hEC@^YRCKO9;o0o-zOty zC>jXaG8KQzuMwZJWi}Kr#^0xy9J~!#U&v0syPap-u>NbY zDZ9nwDh5ivsxYeTKLYsl?`=mGP|*-D$_P-Kjlv6#EIEKUDA$9!uM{$669Iolo9STw z%GrG)vX4j`#)nX`z2q#%jq25D+II&{5s`CXKT$*Q#tvCIM~@E7;Kpw)GQUZlQaZS} z=F`^g9L%5bjv)Ge$422~oLjs$cK*PFszGIGF?yt55JThG9|=k_H7A*uF7y+~x=GPN z&c4C*kZ$hV>?L)%no~iEaC{Dk^NL|vUv0@yj%!dcV=&JBZX+2cxx8KCJ1y~=_qxDt z8_9R+lIi}U-M7m>8$6K8q8aalwhQ6Zo4#$;d30~QEbTK7b$}L2&ITqpHcS#9!{Q6K zNOIh+ezm~6VB2=x`B=>(WC0j#!D0ZkjB5EYNeYowSITnGyMIOR8#BB|80;^p``m)# zr0D1jsQArT@x~xKG8c|%6kwkCFZtJF@TDB4%p+GbvbJ>C&eR|ORa`9JOYYYG;j1uR zm%ve?_+WDC40iF6E7o6`@m)q@a#cqQA+e+51kpSZ?!-HJKyn71xk(c{wLFMmP$05z6 z?8aJ)jD4NHU>It*o^bXk^67)g;79W;`k^e~TfZ`^3o(*~9`{4s?jb(KRG?uNyP@+d zW7zNf@0C2ZFOvmLO4jM31Ps^G^`jLAd|Y|sZ~C^#F^WB^jGlM1CTTP}F1Zy@XX$JJ z^1k+Q2d3n9n8_OIGQgfh>b|pSO;-e7R^}GehU+Wje}3H7GM0BG#a>%WQfwYYIl61VM~ow9?mI>vU!1GV2X+Vj4HW^b zw{Upt>^kqCE?!Lb;?NhR#DVl*r1Sr1wl}>T@_6T`7%=#^|I->MgL>v#6Z8K7p$9d@ zQXxpWtn_(6x9y1R#}E8XS91b&uiYq405V)o&k%zp5K`9ub*7VN|ATS%IR~DKB@aY1 z$^-?;8GtJ4OIXc(vP3anfUhZ6ejpp6E{5m;Iw0w$2lE&Lo!Z*^Crri^FCxzT6##(t z{`66~K7JO@MG4a@F{*@9-_&%TQ$x|Z`tAiZt{>VXTnQ0D7+R|W=5Xg($mXn`M%%oT z)+kIGSv3nb)|DfFS18Cn-0bRAW)2VkFNL44I#?G|{&2+@oKJ;IG#fnM4B|;rH!wK| zWUVSc36+!xm2^!0EmN)yI7>DcOl3s)6E*D?pifG6D)lx3uw}W_&ADszIi|CJb`2(` zr3jakG|rpY;*NRUcKy2rdQYNM&mnU`iAu^zhmxsU`HXKEWxt1_mn958f~`eX@BK85 zBwHvG+mzXuy#C7$Z>X3#_yOP*2LeItNm|SEUr?+;U%*sl$!d1O?_X~Ly=#=3uH>jz zlr?bIl?++DDG!j=SKSp)g#YzFqk=RxsYoizs%4&&J>kd$TlJ3dFUUKWQ zUSPZw=Tu>|-y{}GxgS)ah08m{vW9>EzwLHg4`=?YZ>I3i|6NS~e;W$^`%jM^|G(XB z|183PyW9SG4F7hw{qq?9ca#4&BK_MOor&q+;P7v7_;;iHvj+ZO-i5Y&23JVfG|#bE S+0>&id!nJOUao2x@qYl#Hl`N< literal 0 HcmV?d00001 diff --git a/website/static/img/stackql-digitalocean-provider-featured-image.png b/website/static/img/stackql-digitalocean-provider-featured-image.png deleted file mode 100644 index b141ec71bded7a195b6bdf0d5dc5ba03747b69a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23974 zcmeGEcUM#2_XP@L!-gOqL^>!aD7^?sS5Z)DDkSvYq=W#G8j6ZSlq$UiL==>SUIQU0 zASE;bLkmSpi1ZR5gb=s~zt3~u#Qpuj2q)tV_S$Rjz1G}wt;xG5hPoHd@t$L1V!H6? z;r(Y!Oef2jn2y8FFazHR#V)P^A17V!8r)@KD(z4{^?m_(KI{F^9LB`N+IsYJEJcEq z5BQSj#RIb!#!#0R0rtMmOn0524$fB|LF`?fpE=t*1^IM3t1~fKi#)o2*CfzpW#Vl1 zXHbyLfvfbDim%UO&U>3DpS){+N#yw@6IpKiEAu)^JXkqNQOSH!uZxOpEW-2R5s8S8 z2ka?7=Xfu3y!$ABIIr4^Nr_ zFY0G|gk9c13Oxv+79b?TcsGh|?}vQx^ns81N)CM5H#PpdovEpGCJA&#!Wt+Y7zZ@oQcU!GIVDVQCW((jR{#h3Fa{& zDZL-ff#-plExwpGc8Ri=j)*!8LqwEDuN)rxCHgPrIf_Ivhpk7mw})0QkDJ$^Ll!}1 zJ%zYC9#LXC*x*8hR#+rn@_97Vc_yZpi^X-KGb>yVtjuujEnQ&k=ZZ*{%2jFNCxr6a zC7*SQiSrMuvjA{l`a0BP#lDf*ci$?FqpZ}r<|zxC=b-fjq_c({N^3z#2@)H*%{2Z^ zx(GI1E6l1A9utAOtAbrGLA2xuZlr1mD}~&rI@r1V^RS7CDTkFWxYgA6`VW5b+p9ka zA6Y8G1U6PDL~JT8sls-I|GhSCK)%l(;O3_9;H~(#7ZEGSv+*ueIEV3hUf#~)-)Qq7 zur(yq-EI77O_ZOs#ci+Hz*(5cWO+a(oBpGhrp%%tD%SZEt zH7Spiuq`kC4H7fH5}=EnJHgI%_;DFM*ywq;q13Y}Zg(z>J$!3x^}%=OnIjKye>>U~ zYGNrmhR<;>WZ_`1cwi)!n{V#^vqNXT(o}bOZ+ZaOROkIV{uGV#l()~blZ6JBPyFwN z+2upT2z7bDtf`^z@i^zkoUX1F=9a@mb!L~{v45dS_JxoQ`v#u!SUXS=M!oM@Wz!1M z6H$^i;y$1KZ@KdRv+22OxQYX}LZDCH{cLt=l>;o(rpTC{DV@It2j-!^tuc|pXP@^E z1j$}fv8U^4+3+@_FgG=*OJSTFiEOv%WlaB;^!bFMmIs*cl1;T^4`;RAw!FbJ%yphP(6mm%!3{(wx_XJsa7}Sc|1aE0y7$Q>fVu$@1SzR zpSAwfl8#kupi>reDz@k2EVLYIr{V(VIfQd|I}q(?zKya&_VU%11}z+8m|Y8}IOFO} zcgHYt_a51p)vz=S-LRa@<-J$zOD{3wEoZa=wlMv3oCPK4yoilujagxXmdvWSC9`Qf zB5+oTT_*T(tFcndNZE2}iRCI{cPCz0njY4w+r+*>$ily6ldwExKLpXW%t&~v{m)1V z+!g~t-gk8CZpWIMU-xqz#jk}?*B)R48xX}gzi5w8UVETc*CtM%v0-6pY>idIv4Iei z%n6S2zRT>cjh{xN&Wimzl)ZxKRQKPRf7~nE?_;TKB0J*+@QoYe-g>QCHvB&0TzEsU zGfC-j!2N9MX8)vXy3GG}>N3bxCwo73fZG`Xb8Xd$j|n^!r0~tm$+iR>z*~K6#nn90 zAj#V2*WTByKv}LkZT?%P^rTXT?94)!o}-EO>8v6YsX>>2`}OJr#g6yr2+hkr8*KRA zuk%a|5;GkuB8DO6m24c3|Lyy1&kZX36dmLi^Jx<}JJw3?cX#hrW+jJS(hLr2O+2*Z z#neyVi0fQop9-~BVT*_C*dHg9G2H-ml%se{<{ATiOXt#WENzrMR|`A2E-p~#*jj62 z%p0WdtJrD}4{XgngbhZX{c`*$keFM((5K124=VMFy}kBvBeP6htR}qkw6HYp+cFEC zJ7pI3a{#fT?6qUx{Pmv?!ILoiLGBuO{d9L-aZMTr%C&kVu`n5_){u6gr=Go3v(T;O z&@n@h7rB6qfV>(g8w4C zg8vUrQdb#R5UVlsi6J~>jT+6hTRTkJbT;FtPouzwOf!}A&;0Mzn&mE1SLTF2YBhSq zF&e?;HM(q6r(4RkvC5UwCVLO<8x}{m0G9FUzg5xks=Gb|*8--$b!{!?_VgD6_^ZGk zFJQ2u(N#p9XdmbQ|L<1JEN(i-dNqKk_xUl}t(SrA!<9f%OOt8&+AL09NVJmrPxQ^d zpv9xIrbgIIQ~G7G=`y??%F5w&wxPtK1>2(`kYry#ZNv52+(uWl{rmM_BltIU}W=sRk& zOH+qFQycp1E~&U_wW?Gmt+=}&9&R$KgwQPpuBl=## z#aWC~%fPX4-0vTFPFdLqC5?EQ#ckO4XvWAL8#;++oz|7vv&aq@B@~|qD||rC{#1jQ ztKzeMDj5)ltQvRI<6o$5-yip1wagsacUubKuUqo>*&JvD=CZWkRVv*#y!Ile5^@TR zN_+*@G~!y@N*;l=(@>+(rSe--ebFHk6O6xu78m$sEW<{ykvu#W$N*XZek!T7me;KK zvCMOgkWyruXm{ry+E3DcA3=`3_MdLrg^%FqgOU(TEzzr|n6$QAKJl)bs~$)rfiG}h z+~7B+dD*FleuI&6qTe&G2+@~^XG6(0ngeldMRSFnQEQEkl9L-ZVT*_}WnqpuwMB^E z?_gZ$;=n0$pM>e}kH|Kc3vIWyKfDDGc9uDHmJoaN>}1a#8F4?zC zjPK&LfhlyWI+O~`l4Qn9FrN*NOWIxi`$mGtu39Bz9fuIp5}wIya^K-Gd>Clj+7m8N z{zDaT?9HS)qnFE`o}ugSeEyy#n{e8EK{LS_H@RBDr)A<9aT*O2(cFzxLMX(YzUQ9y zgJ9p)x1cU2@13)@E>41U5EE-}LM`r!tDsG(ZJFzgJ;!`4Oe>u zZ!Uis|ZNr4^L`Tj4Y@eibBus<`&<1ucHqSg=QoNuV*092P##jX!P^}@!KL3iz zL!Tvo@Ya+s?ci&O_7Z0CTvuwel0Gxno(|JRGQg5Gdp zHji`|s4-ANjJTo@*Db4RS14782S?-2^OCwQichE>yB32vx@=}Wc6Rj{C{j@h9cSJs zHja1S0T);L+D8kt`}h+vP&bSGB+Bhr;X6I7j7~kO*G^m4HSnVneK2b^JFaSbTyTdX z+=5by=zOXmYqFwVbzinpCZF;y`BN=@Ok1Py#F~HDUGDl?iB&H{ z_8o_n5UzF+t!xSF>e?jZ_k zYcf=|9ZwFN_Ls1oDPTE+7d+0Dr8CWcFB&O}40955--xsHZ~0aT8MCT)=MfKSeDS*! zyVLH|saz7zIaTKcCfMgn3)B&4jh*~vO>%gZvU!i){*9<*!6=!M@N_qDUAOMTguZE( zoLb`k26By2g544G(F?M1`Kr{t*i+M-ZbANzH?#()S34(96O{3eS4>HK)swTn57C;5{j(cfa19S9R7f0tvGF-|v5jKkM*jGy>)IG4QG6fk_=dI(2;D=em8Wrs;B%#N)2^Z`L$hO^ zu_B29qvk!6-lSP~r92q;m-VxpT(Y(QHu?nlTNO{+Z*IG40UKxXdIc#e*6BFusV3Bw zUS~DY#0OJ+KPv-F#r~w3hRQS?9A@2D;-^_5LS1k^tq7l$ znz|yxHr<(pI8PKUgm=fIlF7p>lE-d)4(9V8 zc$UxqC83gRXz4$xtQl}$DDzm;MmLGwmiEA{N+o8!7m+o^U;gUdI1dciR3>2ks_PLi zpR%;$mET~{2L`TK97V12eSs}5sGCsB%|?-XQD)1WSB-z^Xog$~$#D|fQ4_Kn3(~A6 z^yBdnEGH`~AVp-dewBa?!DYM!g+9mc5|~0hBo<1qs56fRTg`7f*(JqOL&n+kB0tZ! zSd45cHiRqU&?lXO$!XNQ#TB9Z+?Lk^=TxMh`-+B@4q$ub@!D1)5R>AuGYGCI9lA4&;bMeaJg zhTza8T1{zMtMo5jWqEw&e<*)@L?Xe5(*%zH9EYa5k!~%X0VSSE)z` zd3Tk5TD!DVDLJjSAr!J2E!@|sW%CSIWgVLGI6j;n3jjnF;6CEfP}wu*kuRUuv?#9q z0Ry&o))gjGGoX;t_qT=Y+l%ICs!M-EbydmzAsxTSzep=3*D~TMG;Zdx9hivNlfG%V zVkh|#A0eAzs2Xr!YaCdn;Xf{a;5T}g@K%AxiBQ99i_>g6{MtCvreHG_G%@NF*Ro9< z;Cr8OH#IMvWzd?M+|-a8W9I7>P1Jf2vYI*1)g8e?nxvBk%qknEGU>wpqrmm_G6SrAZoMK}f zDM3-}49)6`MPt?I>7iMT_1L8ZuD&3{#xTg~fvUnG?*bqUuvEC8aoyC8QeLTrg;0`3 zW*K_a_YmdWVCj~pT~|;*_Kg+V58#Yv(KURLLwF4FqWqo9{^G!0JDr2jnyml-88~Uh zD$4;uJNWNTvLO}3qTX~@&t?$bP-vY2L;|l+`X5e)yOP^9h&95qazH7ns<-{kio%E5 zrMb&d|M^EEcot2nGg~rPDuPiPglEplDerC7rxSK-olk>|f28(RW}8;F<)uGKLgRv0 z%8sMqA~sbZfU39xoUyE2c{1K)^0NX5#Kc!JqhM??{lvTtWD9p$G%dGS3B?2ZYX^;! z)p6yX2K92Krrf2F^0`8b-FmFSr-qb1`#p)AhOl0@>URKLZvlDSP7?ahtLktAWUzZM zzNy}Mt_GUpYf|{SIQ7vKJ<1_$(O2Z;$0?s&Y1`GM8p~S4Rl-s}n`kQU^iMxz<%!Clp~1pZ#9l>W7* zy=3?1j1VOLTn+#G3{FpY&3bL!g~q&eKB0AK4qW9&fvs|YZZhAuW~Z-JeKF|4+aI@-OR z0tq|!$rJ&bFG>*vk)7bb<9>=BFmC&-Xa(8e>PUqnj^*_K5`vY%?Icc5SFBsE;VDbj zpXj{T#Y1`NvgZKS9H2oTJ3iFdj1?3(;*MDXnhN}7%nSo@-b|vS>qp%dI?L^Y1{09j z{i9h|4rW#G`~waw5nn@ zU?3hY4eVP>T|5z|}Ni~@mp)%oLlY;2-or&$pY8Sm{42;47wPBZ2ln5$3CEveGkH#W zlXbkfb5KWdaIt$SSzBYw%$X8Owi>F6MD?`8iIg$9M*cYY&S{Xv-ye&;QX08qnYuB1 zTTu!sMqsIFeJ~Hk75toomD5mSMRIH9Di0 z>#V1yZbg!E5F!DH5j!)2wQT&R^Bdr5)f8z64f9P0sWM)Hp&faTl-o^n8kAIND78{! zKFV;F+`_*8_%lH|geUD$MY}alT1stp#-&tXP1T87)Qn0l?SgO*+xZcDh^Qw!Kf33- zsK(WA6{_*W^=P|>jhNv8a4_0A@T&fMa_*%KLM}j)!lwfs0Hk}t1rD8;AWVP&7S2hz zy|pCdyW7f`Ts3}vT#3Y7nJ%nD7HJ&wkcvWoY&np{+pucIn`4W9B{kd`=|D2LpXzi3hc?(=vGv)jgs{;0MtuEGM4VeGKmx|1rvD)BcF%bu{6678{ z?fh3G{~hv}TUW1R39}MkRIO~2Wv{h@bbRTB5WLn4AlN-))m0C_C&n&FT}-NZZO?&` z@odh>047@bTFNxoSwGJZ~!3V1vOV|!^q7A7q;{l5z{d# zPNvclBS+8(INSX1zrBuqyVxQjEXddaip)>^hZbyIrR;lJ__)ql9rlA6&5%9eppqPC)#Poan-K7K}rzc&P6}%Xt$7lCU;ZchE*YH zx;vwNnV3O+m(q1KQV_t)zA=-$p7?NmB6`!dDv~t76f&@Ds)vPX*JSPc+%IV^;4~ma)#pJj&I}!m)K}F z)%)WWTGSvV9ubug$T7^k>xBJl%l**Sf-d37FmsG7{C7TU$upH5qcHu}DQTd_bqqjn z2`ncjgVtAl26;-?^mlUX!96MFDj#+=zld}^$F61XpI1}niIbjOxY=W)w&|m4I$GWV zk|EZ7bKc9iC-zdy|KRxUiiMSiceaH6sdFsa;ERj{l+ima^?4B=fS6KFlTTrx+4#+1 z?%_@?udZY~L?9%_}k7A@tjq*C+yj+!3)gXlY7)&fqTA`IirwgT9j zC?yC}n~NKbo0Q&@D{M>q6q-*!>-&~WCCQ7?t1_8N9O7y>fHFwQi}g}3=Y#wjf$)x1 zpWPWu6gTXH_Uogw*fY6I5~HbTna3)PAMUC&VY)ksMmF^UmBTqoUY3#7=I=%dY6Q6! zjxMC#7n&nT&8&(z>7LfI95#jWNtyu~IT)63*y za#cTP_6VC+Du>C>(W78Z{H8W)`)sbh_}AgZTcMon%2Ss&Pz_l~9t&73f*PhYqo?I5 zo&I)P2z(H>!sXM~*mFv%gXlLzVlUNbT1JCvBq?UeS~u~1s(F?MUxaFPtX_Dxo|ii4 zJf45t<5&kC&4Q3O!>o+gz9_2PH1L&b5ls!00Us+r zt?hRa8CBSxb8UJhynP9g3#5ec5U-vnrO3$wPDftB8lK>Dsaz%dFJ&YUN@It+z58Hs zL_ylx;H1y|`;pz30e+EZ;)xsv*9CVfx54i1)m+wj zE^)>Q>$JXqMDF$lZJ(ZTl2E2j9v6jza&2rE%@MzKMWUiO{)UWfMF z6U6=tHMKMOykkj7gbdRAd8Kl2lKPvnVtT5;yn#g~hr76nkqI9(1|}DQR`t}g)E@Ue zD9g@`JIzPB*sOk9rPQ1VOC)WFkt6hGKP<(0F%K_4l=g6YP*szw(2|;R#b|sD*)us_ zrO5L8V)GtpRum-)OaBvMB(KS;eMVuf%Uec>Na?)T+__bxAYypn;@0gVjn1yyXJ;SY z2USjeinq2nkPa!jH4n2vrC=l+;(LU9wLSw~3(v2ThxPND?k(xM;_?)9ALBZO<`*MJ z^Qwx5y{ibFJy(NyZn1cHEE!Kwk!sY=MLJ~oS-a+%Em5040~5li|1)CxqNawcwgc7x z*Q3bwm}GHQ3JFx68&Q(*2iY0mLZBZw?_=&w@)EBA@(+q;qGkbr~WZuZ}}klCE+U-uGo%W8QdYj`eI zX|#UGSa@q{?wnle<|^`)k2kQ6GVW^6RUp%oNuCROFx+X{Ky$qsRT1(p;3>?5!7xpsp)QLL%mOx1vpJUSCH`-+F^H3UH^@GXD}sH@;(HdJeNiOsiyH| zG^?Q|@`b#DxuPm4N=}AP=i*_#u{8JS=hf%{cPK57WvVUj94hwI&EPThuAED_orH{#Lm5^v!|4$AAR{XMU)!sA=T z^ZV$^>G*U-z8B1Cvpv`30T*6lG2b!w2UjYqXQ{6~EoSznWj5@aG!HXWvVe!M2rxQYpOpP}6QSjW}q zx#m`OJ2_WK==;WBqI^OH6luC4C-fQFIPwgnNB6gY&WH^sI4A4rN&d{Z)RRjH#Daz9J^$QzIXDMqXvfLb-1h8xcW$^s4=8sfXy zl~G&R6Xeil-usr2DzY>7&8=GGMBLcxPs{60erCPM)LIBXsue7TUF;k#v&txgnD^gW zp8f=1t#d|6w7AsO)B6iSeybF@(RpE^(RVfuyMIPH78}r4#-1O}sQl`l0F(EuD6Z?do^l6DrUjm9~sm9}HO3 zZO2MpntiQk8J|~|n??744t?vMTB2~Wx<@Uv+Z$OM$;lr;=Y;mHbb3uJK*TUVuU3uJ?2R*tDyGP;( zyqkpjJzQc?C1ptkGKPtZ$YL^cVB&k95-It!YeAm&qyf+T;u(ZKc zd$fhAcC|6CWGl*4L-ELxX+ozSS;@S0Iy%5J^r4OaHP|juHs0Q!g@|r`46uh3>T1C9 zD3Yw3wHc8pvg1{onYc3-bi~(=n_mUeoqI-7vGUdmz<${he$@g8Yz%DsW^vBSv{nbZ zVa`r%QUrPi8n{kKhTOkPzt_WhMYP{%y<&eyJ>6&d#7RM|B`sl zoH969b0Y3H%AeOS#aZT>+34Iz_4KsY4Fp`71hCx6vWwk|8G`@6H!SY`T3|Jmo{?FVo5 z;?oJCUJ!MUB3uW`SSCq6zY5aHtm8WwxD%0h*TvEans3rJioT^=x3>QEB{ZOBeAlW_#@Si&z;el_`l97(@ zV&SZqRrd^v*(^_u$J98dSb+PVTqgpnJO3S3e*# zLgO`1)ymm@a0@!J^zF62aAFHY^k-0-^@IgkZ7Q2Bf9yI5b`zBs$zw<^+?LUt7eNx{ z!DLL%6u9w^FRG_Rifp^utCODPP2&c+DX`*0nt4kct&kGQGvRdXrc@LCpC< z2$zlx+)1j}Iu4%tM2{{oaNfMYSY%Z*#||2+b}`6Qdt63`;krGkrdrWF5NsQ|@J2hU zv482sq8>SqT=L4W2Z6ZPc^d3)rsN z?Lw)AXDT6A!TvrC4N_qhypPTJjE_nEL9DrjcoK`;P4E8a8b3 z8W@~Xr1Jf-ib-Ly{eT9~i0j+ovK-g^Gp6uOpNw$VP0iv(p9}(=5#MDGKo$HA%`0w8 z(1$W*B|Xd}Xp1cQR%SetgivV^7B*SnQzV#K$|QjrY`Z=eF`8-olE7uLvN4B<$mQ8M zZ4_-5P~2c z1zP^1hc6z@mH__p5SIb~|f8W>% z^sSgX&(r&=Lm0h3H6yJFRpLBeJyb{sxlLALGB|QWxk0q$fT)CLl88X%Q>QS5rc?R1 zfTvt7p7mJEj?UihE>`&a;@gmxoVeregJ;WnrD6|?zOj6*s2!){bXr+SeR!Bs zOyH^ud*8^o)3WSiQJ>OZ_cCMDv?kOX){vPRE+VLxV`oY$BAz)0ri}4EOFDL+i2S^N zNekt6`4h`Y*u&Y+U947y36rQ79(uhXMYJJYGYytLb1#+ibv3R)P8CT0101X?`rTfW z1u0!exeR^);jk(HrM}2MF&!SIp*Yh45t-aaBS;MovbP5idTgbn&PQEtkwp{LS;x31@w@opLUhgE{7v1T^!PEo1k5>=ccIYj2Yq~(D>Q1~ z-9Ah}P}hbpdn<|A?+&IZw^sc?rr`b+>P^bZHbFozCt0B~st=W{f*5 z1-j!AJ{Y_^xx!M7C+tSDb4z}{C?Oti8XZ;U7r(N}}uylB}w& zHNXnfgys|=d{uW^mCYK^S3H|HQvU8w$b?tQ`ld^J2_Ckbq13JxZ1c@dU6_bWd@ zU~|SLel&OrlcrdV`G(mmas@iQYKP7Wfm0kK%~VSJuXR1Hd&_OJ?F7;#-gRb$^aM>t zUYFpeWE%t{Qm8UyCk`7ab)wh7o70gv#?KkoZ_76CLUQJo%pya~k)m@a?6QFolTZwU zdX~~i%$xmt{qt6CQEQ+>bthV2CuxtE0E#nTxy_<-Gr<3om>kg7x9Ti5q|$$Q!+AHS z{gVOBs`u2f$m@OPB|Bp~DZ}69*SL;O@LXCet3_QGiQ}TRhCwCC3uWQi0-R|x7orW(;!jvA_-vtYh z&c)?4OvrAd^NDOXVTxV+m(?YM8YuiV8Z5pzl1I9opS|1`WWM4!r8}P*War?|#O(?& zm`E!!NjprKR=TV2D?EnNsb;&1u(luj^EGOKy=>@R`7 z)*_QIhg9Sgx+C+Ap-%7lWC1&5jQ`yIIY@U(YJ9N|pYPyMh;`6@q>2+tOwDRa)6dQ0 z2l0k;T}DeUOIM}^a}lI;GcCR=H1z`X88v60FA4U?>HC=f_0b!Fp3?jP0&9FX+8Cd1 zqnXAw<)Mp`IWAicv?g@k=%{ip0lu$fGE8f?+UpYJYZl$sn570`oRfoMix6*xQ#1Xc6 zfi)C{D@+4Gfy2%bC@?8Jb~L1;@D$ehblq_OR|W^=fVE8d*^27nCTeyscXD94r-vOr ztQABz87peW&jxmahJlW!G=YlD2=pXH3Fb*~ z7#nW87a)Ybz)d+cR zyb3q$xeb`nOI44d(P6u^_}&n0)DKX}pU2jM)dwv?>FF9#xQz5r(x%_oVlCwC#5J4Bv3Iyw-reQ`AZj(R0lFlzTQ=xKlivODNQ$QW=gsm%3TtYc^Jo z{APUWRvYroQLCf^ml>ZtHe;dz~f+U$=k4ba()S#gR-)R;+p4K;Jpp|YNYZYKMAs1!6x)EtB?orsO54zjfJ0> zE%dc#c%JtH9m>b_UH?p(sEPk)p!uiWhhgOPj*}GY=l`{2{~$gqx7QHtJ|{LqOi^ag zH1vkWoL~R4+Fn|MscX7L_{KyA=~pO>g6rf~QHSah6;He2j}Z% zeACvrHlg5qk){*B8dmJeikq%h^X^P3F}=*VXeV`t0XrCfqI!kL_X0l73u>06T=FF9 z!28;XMcc`}KOdb2+g*S43$)D#b$y+)vgTpEpnV{9R6i$Q`a_z+w%}LzSg@3OShX#n zg^B>W!PArMBh6^`c)8Qd6=SGTm+P|tj204Ve7@JY4r8s)wmr}Eau1L_yj0?gGf0c=8_4oqRgW*atBCFJ3po6IbgCN8LO( zMheO^H%G#^>k(^d^n?7vxVn{+)u4&}rxT7F-3COJ_J4|_mw6qJ2$laW;nxo9FrU55 z-};SiwiF<*3EDaT({Cs|o}HdxfGpG;(%K&^V;{A8Sr&)wCjID-*0kbnOqiQQNW{gA zgw48ypUlCi&qyezv}HOspvDg&BAOMSDf!}%5UbW$Ety!wdiusv#o-R(f>8f*-}li& z_KjYd`yq;lRitf6apGY|?yXe`OBJrC!K3hGSa5gAQ4bke>^uL_I^}gsdIY~OcG@{kh2M;g@}s(5Yl%aj!GCu|A_4$i*~ocUFsAY^#2~-W zYFLM)8n)Z!65gTd@7DT?oT?K}7%pb#65!uxmdaw_m)CO;r7rf~GT!wfGi{D8m+e9q z=)n6W__tDfLL^$SCgBCIi_SJ#;CIjy`al85Tu%6cqTjq!wU)vJ= zd-TnahVdGYu$?~;EB@_w|HMPL?#{-*`)O-K@pWbVNwEhtmS0YH=Ky<~yS{~MZG#IZ-fW@mi7r{@iZX}q&3Q4hU`&# zgdZgrdYn_+ou6Q)N*nK7zucXwa%5;1=$vi9;whkcvcgq1nCFv#^`iu4{m7{9SAMq2 z=-|V!o`XxcofbqT?mwULv@XNc%X3bD8Gy#?mtMVnzscrd_-fXda-G(h71yRulb$4e zbgm?oz6fY|9A^<)!NHV>o07rSv;otf$;XDOOQHTcPJZ*>RX1SldNMa+e|#+7&$T{q zZB;w)CM8wo9>)3__TG$TsbD5QXi%Ja|0N&kEhPHtC|oJ0S^0%Z0_Ecmr_7I(7Q5dE z8jEk8sq!iUZaqFO72>wccS{*$L{byjpZP=*Q6y|5)n()lH(w#sQsgF7DOA^ug>?|C z=s?pGjsudp)(P{UemjIO{kA_rf_(Yez&LNOz5z6fozw6m9N-#;J`pfcq98_)o%18F zbxd8y9(PYdvATR2YEaS>Ah(**-d8Ox}OerE-&T6G^yuEYeMy z(~Keb?E3Gz!(xN{jcHDHF>ChnFoorHQ=r2EMnz22tgae~LCG6wIw9A!QHu3x4|dLU zZ68rU(6C2<%8tWluIYh#fw}X#SO8FmeT_H~u)JExa>G9~yj5f`vc1@L>_|L$N#)pH zv4J;i!>B9m6+IdDW_y2T6_K9@V5zp3H@1*04Bh0)aiJ#{JDJ>3OA%izjIn3b;iY|%-Y0#(LA>Ny-f zzA9_Tpc!T_vTa)XY?0v7KWW#KYM_a;#R&RtDLk<;4k1y>cyuJ|QCq3{5zH13Q4S9& zL~5T@2HMJt&@VrDNPOR0Ca^bz)!o{Q`fpOu=jR8u9EAl9uKU=XnStl`3ee+wbGX4M zHl9n%o39W{VNd<#2Zhcgsmgnb*B*8hi%e#<@W5fd69OA~Tv~zBB`jrv4COEVC=>j5 zhsM)v(Zt<41Rqo)cHi2V0jL{-R~HO@4{M{d7&_od?BByBu%rRJ!FY0~q7hDA&@Rh3 zX@+_H$3x4MH}uux`jx+4U&cM1Q;368mb{FX{|axHGAi(kFXQi9g=mj<&Z5_*>YTZHrLm7z!zi#Iv;V4*iVX4&gqcjzCSeT~(=5RtQc*G+f0{2} zj@7}NfMy(4BZAWW1&hUA7%5aYtZa^b>sTMf!*qw!H+}jj_PP#ikN2tv=k`ANKAB2y z%q2B(+8mqpEM&RD9Ic}#c2LBZ<==#U+$m@c&C)3>`g;hdo9&-5I}S34qE$g_AcKa0 zMjE_e;E>)0vGVv6tVZX#!(w&ta`F&4PgcSDEK%=|r?>Qj{Q)OTT9MWi*r6(=@P5zi zBnoIdN;Kes5bWHni#Sh(W@wPxoHq_gET*ZjM2=abn}^|0iS{{oe8#{xh11`U_AUAO zFu!Fqm5!IBc@9>Q|Ne1Jm0{Ed0J>q{8&fZ_YnHiBcpER4+pcAks6S@w!&(!=7r`fX zy6`B&>sH}ck`I+j#p3P5gaWaoodNVo{sd0rh8zoCl~!NBUOgIB@35M$yEqk_J7`TF zV=uHF6}a5lEW7&xn2VjD2B|hv$7rE?Vt2{_uGlCSrRZ`-mRsqPirc;`Ys_uv;pUpW zRcC@-eVN;3o4Tj1f?3H@Q5_d-)_B=Qwlb+P#l={-HEiCy zJ!N1z`m=Q*oaY4Kg&Ym9#!crd>$IQHf`hE`ENFD#TAE%y5ATSNk+KQ?(KM{&YxWs< zA4C|Cz6WT2jrDzKrgs(Gdzg|`A0X=A)Cf24b0H~_KL2f$GPPgMZIY1aFQK6TRj{O* z!P{T8HiL~wHE6#;Vj4w*bPyyXqqWAS^jLb1<;ka`42n z2a)6&Y=fsYt&}!UTu8LA>C}m({a(+%B6XaOlc@>0$<1^m=MXAqlW0?shiGKEnY&dgE1_b^eI?}nJ~zWGG`5&X zXk(>jGTXAvW@fv-7w5woHC7Uz5OR&!+MB()fV)t^6A^c5|{u~nyre4np) zyA21m500`uNU+IwbuZT*k&!s`j)9s;c*u)l`kkz|!vPQ;Qu;L(rR~i5 zeX_ZtY06^nFt#P>om~&$-FH62%0{qPMq27$YP-@DfA90nUGus5>i62CJpv{93h%4lVa(&-KZNArK^Fd`AtZ zAX|EQLFArw9PGa^Of0MBdeAZ+|CMd-*HkME)Z{5$yM*AzTd60&ka9kbqb08hLsc*! zG^LHHvwI}dtQ~D71rA5)1boZ3SZVv$<+L;kvxVgzj%MG*y5<74f9vKdTE~^t7xmZ; zXtynZL}q)9PKW8J5779{pSj@TTDf)13Kqgwu}k{t#cCm)rRj>LuLzqDdf8e%8F<-s zN6kic^;7;PeRKOkUX;D}5rie^;E=r+q>kEn{^8@AD<`T|avSx=>OChnYVTQ&n`w|j zVH1bz8e_w(yWl75UkX=i%ZdlQVL{#{tNMcVvu6L%Rq!QXU*&1B^=x55c z5EpLNoN0Hb7U-&%f0ql>VX{c3MiXpOJMJj;#Jq+(@60b(BY}akK-S@%v3+UkRVj+o zfqvb61PlY9JquD&U+Q!=qRnOhyvCjx_r&}Bs+1KhUm(* zv4H8Z=a`uGuR6|D&aJ67=e%^;zJwPj$CLeq>HO^mxj=y~Erar@Sf{Z-RT9V;TrCII z-!Z^Qrq@^PTo^4+*=31_XLb%WQ3E>OSNX{7-0xWimt}@n>3vKKySa26!nKh@3lBx1 zL=jWXz0xiHn|@z*vD>eM9BGTyE|)Z0Px47-{NZ}>9~>7vf^k-}c*$u9b@vPQCDRCL z8$5*b`fO^vS`JCQyC6V2vVi{DwuWGkrvR3(^JBfbj@Lc;8gH12f=%`W5Z~Bu`|yo@ zKZphcQf}BAA{}9R* z|DS$>< zjx-^CB=Qg4stErL<(=XR3CbzaiC9=lqs{gAG8ICX=3MuKGX0Q9a(~<|9Vrgq$h+AGO zxCM1eOWBkAi%hscO@r5FH8~qZTbF=11~yDBiHdADf!e<-4No##{OMM>K1%WsWB-ui z#pr7U`(y87{uV!AzPm%o<5rP6*A`=$zlbetFYKdYOYgo3fRDghmBxh zUnwk}*Mr}SVyqkA^R&_bZwctkN}AYSGrv(Y1PGHiTICP;a{4MX>FBLB;_ZDZqg)l0 zL-%d+h-VLO(*K~y#_UXEUVQ8b8qoxdJD;`P!6L!UdNw%OiJsSfBGv%~*5uQSHwog% z3f;LO?HN79GaOrF9;==@jO_{XE=yyZQ?yTm%E$$_(6KG9?HtvOTVp!5u1=l(_?kxFcuD ztV&Z7aM1ty;uIT}tgUKrTI+bh0IWY2xX z$A9P3B9QVc@v&ptmT2Q0D^*nRq*eFe8KoUK{cFOoxyOkOst$9a`V~y7rP3W~cg;AV zW~B1Z-Bvj_e}Qg&;{H*M&qC=ercZPtq@X2m&BvQe%A;&-L&8Z5I=$b*y$54LR`=rZ+`aFi)Mi>|UPfEk&++Uo^FmrOM&W!ZXYj z9zE67T3e);pk{ut@UY_9tNW?n^3H;D_!a^CW%`O&;9&&JC?RpM8UIF2lf6ifu>RuI z_SCy?SbJ**Il$lK{*wz&MtyW8v!ZXE-MNV)VCs#%${p8TSS2aV5-Li zyL^DgCO&fqgmk8-6hD_Gz|aiKp^*K_6yA&yXl-xhm(ecDB2h)Buod*5E1xQ#AD{*_qag{(@&5s?2kUs(&^j-VUM5N)Jnx>|#6O@>spd_LoE={qfNQ-ZQe=G>PmM%!zt3b0 zyWtd|dZ=*5lHfRdS-UJ|&lWnB{s}khzTP*xM^#gk?vVT4e%Jc82sXYKqbWV&f zXwZKg{7!fAn)1;2r&5n_GY5+R`v=}AG=|e6JnLwjP8kh=BsI+)(B$&OfUU}dqpmBpy}C6WsXpdt#$)C?t%IhdbbAmrvkH zDD4_22%a~7r{reGlCI;O8|*lT#(O~stwndv(PtL{;mqymW+I!IT8LU`ru@q->0#o% zt=w?!)*^Grgmmi36u(^_QoK7Q%VY~lUcs5m64%YAa5}=j`blsobDZCp5U};o725!~ zm@Gb5F7*6E&p^p&7(|&_hV0Y=?aJVX#-?L8k7w#i5N9Otmf;h18_gEy*4m&TD6}N6q7=}YlquwGT6xjX>pw)bm zN}jp1&3&nYkW1r#Qz}|3DXT(^-)8do{0y>?2PZ6081ySG4ZGSoTY3zLU$UX_SLYlv zv?}opEFg$3BuS?PG(1_+M9?+Q9T(CziUFRJriH4O1Ta$xqc3!Z0v_|cbE%hh4^{a9 z*=~F55Q>QrRlf!efPK?Zs*=KoQ06>qM-2n{8tSVmS*GMX zvA3EH9wP5gc8Zi)hoN3F!4TUuM+N&GuziFW!QF+~!3g)^R@^WL~S=%bmfj|bNt#ah|#`)};Y$|F(kch21I z`1xh-GP`Hh^-@<0kv4d-s&vottFL-`c?EB@s&oZU_v7}*Y%Isdk6`$b8b4NsW#Z?L jT==m~{QoX_K@)(l-Gr^O