diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 32fbca19..826af923 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -132,7 +132,7 @@ jobs: # - name: "[PUBLISH] configure aws credentials" - uses: aws-actions/configure-aws-credentials@v1 + uses: aws-actions/configure-aws-credentials@v4 if: env.REG_EVENT == 'push' with: aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} diff --git a/providers/src/datadog/v00.00.00000/provider.yaml b/providers/src/datadog/v00.00.00000/provider.yaml new file mode 100644 index 00000000..77917f68 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/provider.yaml @@ -0,0 +1,436 @@ +id: datadog +name: datadog +version: v00.00.00000 +providerServices: + apm_retention_filters: + id: 'apm_retention_filters:v00.00.00000' + name: apm_retention_filters + preferred: true + service: + $ref: datadog/v00.00.00000/services/apm_retention_filters.yaml + title: Datadog API V2 Collection - Apm Retention Filters + version: v00.00.00000 + description: APM Retention Filters + audit: + id: 'audit:v00.00.00000' + name: audit + preferred: true + service: + $ref: datadog/v00.00.00000/services/audit.yaml + title: Datadog API V2 Collection - Audit + version: v00.00.00000 + description: Search Your Audit Logs Events Over HTTP. + authn_mappings: + id: 'authn_mappings:v00.00.00000' + name: authn_mappings + preferred: true + service: + $ref: datadog/v00.00.00000/services/authn_mappings.yaml + title: Datadog API V2 Collection - Authn Mappings + version: v00.00.00000 + description: AuthN Mappings + ci_visibility: + id: 'ci_visibility:v00.00.00000' + name: ci_visibility + preferred: true + service: + $ref: datadog/v00.00.00000/services/ci_visibility.yaml + title: Datadog API V2 Collection - Ci Visibility + version: v00.00.00000 + description: CI Visibility Pipelines + cloudflare_integration: + id: 'cloudflare_integration:v00.00.00000' + name: cloudflare_integration + preferred: true + service: + $ref: datadog/v00.00.00000/services/cloudflare_integration.yaml + title: Datadog API V2 Collection - Cloudflare Integration + version: v00.00.00000 + description: Cloudflare Integration + cloud_workload_security: + id: 'cloud_workload_security:v00.00.00000' + name: cloud_workload_security + preferred: true + service: + $ref: datadog/v00.00.00000/services/cloud_workload_security.yaml + title: Datadog API V2 Collection - Cloud Workload Security + version: v00.00.00000 + description: Cloud Workload Security + confluent_cloud: + id: 'confluent_cloud:v00.00.00000' + name: confluent_cloud + preferred: true + service: + $ref: datadog/v00.00.00000/services/confluent_cloud.yaml + title: Datadog API V2 Collection - Confluent Cloud + version: v00.00.00000 + description: Confluent Cloud + containers: + id: 'containers:v00.00.00000' + name: containers + preferred: true + service: + $ref: datadog/v00.00.00000/services/containers.yaml + title: Datadog API V2 Collection - Containers + version: v00.00.00000 + description: Container Images + dashboard_lists: + id: 'dashboard_lists:v00.00.00000' + name: dashboard_lists + preferred: true + service: + $ref: datadog/v00.00.00000/services/dashboard_lists.yaml + title: Datadog API V2 Collection - Dashboard Lists + version: v00.00.00000 + description: Dashboard Lists + dora_metrics: + id: 'dora_metrics:v00.00.00000' + name: dora_metrics + preferred: true + service: + $ref: datadog/v00.00.00000/services/dora_metrics.yaml + title: Datadog API V2 Collection - Dora Metrics + version: v00.00.00000 + description: DORA Metrics + downtimes: + id: 'downtimes:v00.00.00000' + name: downtimes + preferred: true + service: + $ref: datadog/v00.00.00000/services/downtimes.yaml + title: Datadog API V2 Collection - Downtimes + version: v00.00.00000 + 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. + events: + id: 'events:v00.00.00000' + name: events + preferred: true + service: + $ref: datadog/v00.00.00000/services/events.yaml + title: Datadog API V2 Collection - Events + version: v00.00.00000 + description: |- + The Events Service Allows You To Programmatically Post Events To The Event Stream + And Fetch Events From The Event Stream. Events Are Limited To 4000 Characters. + If An Event Is Sent Out With A Message Containing More Than 4000 Characters, Only The + First 4000 Characters Are Displayed. + fastly_integration: + id: 'fastly_integration:v00.00.00000' + name: fastly_integration + preferred: true + service: + $ref: datadog/v00.00.00000/services/fastly_integration.yaml + title: Datadog API V2 Collection - Fastly Integration + version: v00.00.00000 + description: Fastly Integration + gcp_integration: + id: 'gcp_integration:v00.00.00000' + name: gcp_integration + preferred: true + service: + $ref: datadog/v00.00.00000/services/gcp_integration.yaml + title: Datadog API V2 Collection - Gcp Integration + version: v00.00.00000 + description: GCP Integration + incidents: + id: 'incidents:v00.00.00000' + name: incidents + preferred: true + service: + $ref: datadog/v00.00.00000/services/incidents.yaml + title: Datadog API V2 Collection - Incidents + version: v00.00.00000 + description: Manage Incident Response. + ip_allowlist: + id: 'ip_allowlist:v00.00.00000' + name: ip_allowlist + preferred: true + service: + $ref: datadog/v00.00.00000/services/ip_allowlist.yaml + title: Datadog API V2 Collection - Ip Allowlist + version: v00.00.00000 + description: IP Allowlist + key_management: + id: 'key_management:v00.00.00000' + name: key_management + preferred: true + service: + $ref: datadog/v00.00.00000/services/key_management.yaml + title: Datadog API V2 Collection - Key Management + version: v00.00.00000 + description: Key Management + logs: + id: 'logs:v00.00.00000' + name: logs + preferred: true + service: + $ref: datadog/v00.00.00000/services/logs.yaml + title: Datadog API V2 Collection - Logs + version: v00.00.00000 + description: Search Your Logs And Send Them To Your Datadog Platform Over HTTP. + log_archives: + id: 'log_archives:v00.00.00000' + name: log_archives + preferred: true + service: + $ref: datadog/v00.00.00000/services/log_archives.yaml + title: Datadog API V2 Collection - Log Archives + version: v00.00.00000 + description: Logs Archives + log_metrics: + id: 'log_metrics:v00.00.00000' + name: log_metrics + preferred: true + service: + $ref: datadog/v00.00.00000/services/log_metrics.yaml + title: Datadog API V2 Collection - Log Metrics + version: v00.00.00000 + description: Logs Metrics + metrics: + id: 'metrics:v00.00.00000' + name: metrics + preferred: true + service: + $ref: datadog/v00.00.00000/services/metrics.yaml + title: Datadog API V2 Collection - Metrics + version: v00.00.00000 + description: |- + The Metrics Endpoint Allows You To: + + - Post Metrics Data So It Can Be Graphed On Datadog’S Dashboards + - Query Metrics From Any Time Period (Timeseries And Scalar) + - Modify Tag Configurations For Metrics + - View Tags And Volumes For Metrics + + **Note**: A Graph Can Only Contain A Set Number Of Points + And As The Timeframe Over Which A Metric Is Viewed Increases, + Aggregation Between Points Occurs To Stay Below That Set Number. + + The Post, Patch, And Delete `Manage Tags` API Methods Can Only Be Performed By + A User Who Has The `Manage Tags For Metrics` Permission. + monitors: + id: 'monitors:v00.00.00000' + name: monitors + preferred: true + service: + $ref: datadog/v00.00.00000/services/monitors.yaml + title: Datadog API V2 Collection - Monitors + version: v00.00.00000 + 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/). + okta_integration: + id: 'okta_integration:v00.00.00000' + name: okta_integration + preferred: true + service: + $ref: datadog/v00.00.00000/services/okta_integration.yaml + title: Datadog API V2 Collection - Okta Integration + version: v00.00.00000 + description: Okta Integration + opsgenie_integration: + id: 'opsgenie_integration:v00.00.00000' + name: opsgenie_integration + preferred: true + service: + $ref: datadog/v00.00.00000/services/opsgenie_integration.yaml + title: Datadog API V2 Collection - Opsgenie Integration + version: v00.00.00000 + description: Opsgenie Integration + organizations: + id: 'organizations:v00.00.00000' + name: organizations + preferred: true + service: + $ref: datadog/v00.00.00000/services/organizations.yaml + title: Datadog API V2 Collection - Organizations + version: v00.00.00000 + description: 'Create, Edit, And Manage Your Organizations. Read More About [Multi-Org Accounts](Https://Docs.Datadoghq.Com/Account Management/Multi Organization).' + powerpack: + id: 'powerpack:v00.00.00000' + name: powerpack + preferred: true + service: + $ref: datadog/v00.00.00000/services/powerpack.yaml + title: Datadog API V2 Collection - Powerpack + version: v00.00.00000 + 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. + processes: + id: 'processes:v00.00.00000' + name: processes + preferred: true + service: + $ref: datadog/v00.00.00000/services/processes.yaml + title: Datadog API V2 Collection - Processes + version: v00.00.00000 + description: The Processes API Allows You To Query Processes Data For Your Organization. + restriction_policies: + id: 'restriction_policies:v00.00.00000' + name: restriction_policies + preferred: true + service: + $ref: datadog/v00.00.00000/services/restriction_policies.yaml + title: Datadog API V2 Collection - Restriction Policies + version: v00.00.00000 + description: Restriction Policies + roles: + id: 'roles:v00.00.00000' + name: roles + preferred: true + service: + $ref: datadog/v00.00.00000/services/roles.yaml + title: Datadog API V2 Collection - Roles + version: v00.00.00000 + 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). + rum: + id: 'rum:v00.00.00000' + name: rum + preferred: true + service: + $ref: datadog/v00.00.00000/services/rum.yaml + title: Datadog API V2 Collection - Rum + version: v00.00.00000 + description: Search Or Aggregate Your RUM Events Over HTTP. + security_monitoring: + id: 'security_monitoring:v00.00.00000' + name: security_monitoring + preferred: true + service: + $ref: datadog/v00.00.00000/services/security_monitoring.yaml + title: Datadog API V2 Collection - Security Monitoring + version: v00.00.00000 + description: Security Monitoring + sensitive_data_scanner: + id: 'sensitive_data_scanner:v00.00.00000' + name: sensitive_data_scanner + preferred: true + service: + $ref: datadog/v00.00.00000/services/sensitive_data_scanner.yaml + title: Datadog API V2 Collection - Sensitive Data Scanner + version: v00.00.00000 + description: Sensitive Data Scanner + service_accounts: + id: 'service_accounts:v00.00.00000' + name: service_accounts + preferred: true + service: + $ref: datadog/v00.00.00000/services/service_accounts.yaml + title: Datadog API V2 Collection - Service Accounts + version: v00.00.00000 + description: Service Accounts + service_definition: + id: 'service_definition:v00.00.00000' + name: service_definition + preferred: true + service: + $ref: datadog/v00.00.00000/services/service_definition.yaml + title: Datadog API V2 Collection - Service Definition + version: v00.00.00000 + description: Service Definition + service_scorecards: + id: 'service_scorecards:v00.00.00000' + name: service_scorecards + preferred: true + service: + $ref: datadog/v00.00.00000/services/service_scorecards.yaml + title: Datadog API V2 Collection - Service Scorecards + version: v00.00.00000 + description: Service Scorecards + spans: + id: 'spans:v00.00.00000' + name: spans + preferred: true + service: + $ref: datadog/v00.00.00000/services/spans.yaml + title: Datadog API V2 Collection - Spans + version: v00.00.00000 + description: Search And Aggregate Your Spans From Your Datadog Platform Over HTTP. + span_metrics: + id: 'span_metrics:v00.00.00000' + name: span_metrics + preferred: true + service: + $ref: datadog/v00.00.00000/services/span_metrics.yaml + title: Datadog API V2 Collection - Span Metrics + version: v00.00.00000 + description: Spans Metrics + synthetics: + id: 'synthetics:v00.00.00000' + name: synthetics + preferred: true + service: + $ref: datadog/v00.00.00000/services/synthetics.yaml + title: Datadog API V2 Collection - Synthetics + version: v00.00.00000 + description: |- + Datadog Synthetics Uses Simulated User Requests And Browser Rendering To Help You Ensure Uptime, + Identify Regional Issues, And Track Your Application Performance. Datadog Synthetics Tests Come In + Two Different Flavors, [API Tests](Https://Docs.Datadoghq.Com/Synthetics/Api Tests/) + And [Browser Tests](Https://Docs.Datadoghq.Com/Synthetics/Browser Tests). You Can Use Datadog’S API To + Manage Both Test Types Programmatically. + + For More Information About Synthetics, See The [Synthetics Overview](Https://Docs.Datadoghq.Com/Synthetics/). + teams: + id: 'teams:v00.00.00000' + name: teams + preferred: true + service: + $ref: datadog/v00.00.00000/services/teams.yaml + title: Datadog API V2 Collection - Teams + version: v00.00.00000 + description: View And Manage Teams Within Datadog. + usage_metering: + id: 'usage_metering:v00.00.00000' + name: usage_metering + preferred: true + service: + $ref: datadog/v00.00.00000/services/usage_metering.yaml + title: Datadog API V2 Collection - Usage Metering + version: v00.00.00000 + description: Usage Metering + users: + id: 'users:v00.00.00000' + name: users + preferred: true + service: + $ref: datadog/v00.00.00000/services/users.yaml + title: Datadog API V2 Collection - Users + version: v00.00.00000 + description: 'Create, Edit, And Disable Users.' +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/providers/src/datadog/v00.00.00000/services/apm_retention_filters.yaml b/providers/src/datadog/v00.00.00000/services/apm_retention_filters.yaml new file mode 100644 index 00000000..cf075ced --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/apm_retention_filters.yaml @@ -0,0 +1,1387 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - apm_retention_filters + description: APM_Retention_Filters +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + type: string + x-enum-varnames: + - SPANS_SAMPLING_PROCESSOR + - SPANS_ERRORS_SAMPLING_PROCESSOR + - SPANS_APPSEC_SAMPLING_PROCESSOR + RetentionFilterCreateRequest: + description: The body of the retention filter to be created. + properties: + data: + $ref: '#/components/schemas/RetentionFilterCreateData' + required: + - data + type: object + RetentionFilterResponse: + description: The retention filters definition. + properties: + data: + $ref: '#/components/schemas/RetentionFilter' + 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 + 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 + 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 + 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 + 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 + 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 + 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 + RetentionFilterUpdateRequest: + description: The body of the retention filter to be updated. + properties: + data: + $ref: '#/components/schemas/RetentionFilterUpdateData' + required: + - data + type: object + RetentionFilterUpdateData: + description: The body of the retention filter to be updated. + properties: + attributes: + $ref: '#/components/schemas/RetentionFilterCreateAttributes' + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + apm_retention_filters: + id: datadog.apm_retention_filters.apm_retention_filters + name: apm_retention_filters + title: Apm 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 + _list_apm_retention_filters: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1retention-filters/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _get_apm_retention_filter: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1retention-filters~1{filter_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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/apm_retention_filters/methods/get_apm_retention_filter' + - $ref: '#/components/x-stackQL-resources/apm_retention_filters/methods/list_apm_retention_filters' + insert: + - $ref: '#/components/x-stackQL-resources/apm_retention_filters/methods/create_apm_retention_filter' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/apm_retention_filters/methods/delete_apm_retention_filter' +paths: + /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 + post: + description: |- + Create a retention filter to index spans in your organization. + Returns the retention filter definition when the request is successful. + 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/RetentionFilterResponse' + 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 + /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 + '/api/v2/apm/config/retention-filters/{filter_id}': + delete: + description: Delete a specific retention filter from your organization. + 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 + 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 + put: + description: Update a retention filter from your organization. + 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 diff --git a/providers/src/datadog/v00.00.00000/services/audit.yaml b/providers/src/datadog/v00.00.00000/services/audit.yaml new file mode 100644 index 00000000..607fd5fd --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/audit.yaml @@ -0,0 +1,1237 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - audit + description: Search your Audit Logs events over HTTP. +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + audit_logs: + id: datadog.audit.audit_logs + name: audit_logs + title: Audit Logs + methods: + list_audit_logs: + operation: + $ref: '#/paths/~1api~1v2~1audit~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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: [] +paths: + /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 + /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 diff --git a/providers/src/datadog/v00.00.00000/services/authn_mappings.yaml b/providers/src/datadog/v00.00.00000/services/authn_mappings.yaml new file mode 100644 index 00000000..74343d00 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/authn_mappings.yaml @@ -0,0 +1,1517 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - authn_mappings + description: AuthN_Mappings +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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' + ResponseMetaAttributes: + description: Object describing meta attributes of response. + properties: + page: + $ref: '#/components/schemas/Pagination' + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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' + 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 + 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 + 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 + 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 + 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 + 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 + 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 + RelationshipToPermissions: + description: Relationship to multiple permissions objects. + properties: + data: + description: Relationships to permission objects. + items: + $ref: '#/components/schemas/RelationshipToPermissionData' + type: array + type: object + RelationshipToPermissionData: + description: Relationship to permission object. + properties: + id: + description: ID of the permission. + type: string + type: + $ref: '#/components/schemas/PermissionsType' + type: object + PermissionsType: + default: permissions + description: Permissions resource type. + enum: + - permissions + example: permissions + type: string + x-enum-varnames: + - PERMISSIONS + 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 + 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 + 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 Role. + properties: + role: + $ref: '#/components/schemas/RelationshipToRole' + type: object + AuthNMappingUpdateRequest: + description: Request to update an AuthN Mapping. + properties: + data: + $ref: '#/components/schemas/AuthNMappingUpdateData' + required: + - data + 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 + 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 Role. + properties: + role: + $ref: '#/components/schemas/RelationshipToRole' + type: object + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + mappings: + id: datadog.authn_mappings.mappings + name: mappings + title: Mappings + methods: + listauthn_mappings: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _listauthn_mappings: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + createauthn_mapping: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings/post' + response: + mediaType: application/json + openAPIDocKey: '200' + deleteauthn_mapping: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + getauthn_mapping: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _getauthn_mapping: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + updateauthn_mapping: + 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/mappings/methods/getauthn_mapping' + - $ref: '#/components/x-stackQL-resources/mappings/methods/listauthn_mappings' + insert: + - $ref: '#/components/x-stackQL-resources/mappings/methods/createauthn_mapping' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/mappings/methods/deleteauthn_mapping' +paths: + /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 + 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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List all AuthN Mappings + tags: + - AuthN Mappings + x-permission: OPEN() + 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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Create an AuthN Mapping + tags: + - AuthN Mappings + x-codegen-request-body-name: body + x-permission: OR(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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Delete an AuthN Mapping + tags: + - AuthN Mappings + x-permission: OR(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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get an AuthN Mapping by UUID + tags: + - AuthN Mappings + x-permission: OPEN() + 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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Edit an AuthN Mapping + tags: + - AuthN Mappings + x-codegen-request-body-name: body + x-permission: OR(USER_ACCESS_MANAGE) diff --git a/providers/src/datadog/v00.00.00000/services/ci_visibility.yaml b/providers/src/datadog/v00.00.00000/services/ci_visibility.yaml new file mode 100644 index 00000000..767a65a1 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/ci_visibility.yaml @@ -0,0 +1,2685 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - ci_visibility + description: CI_Visibility_Pipelines +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + CIAppCreatePipelineEventRequest: + description: Request object. + properties: + data: + $ref: '#/components/schemas/CIAppCreatePipelineEventRequestData' + type: object + HTTPCIAppErrors: + description: Errors occurred. + properties: + errors: + description: Structured errors. + items: + $ref: '#/components/schemas/HTTPCIAppError' + type: array + type: object + CIAppCreatePipelineEventRequestData: + description: Data of the pipeline event to create. + properties: + attributes: + $ref: '#/components/schemas/CIAppCreatePipelineEventRequestAttributes' + type: + $ref: '#/components/schemas/CIAppCreatePipelineEventRequestDataType' + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + CIAppCreatePipelineEventRequestAttributes: + description: Attributes of the pipeline event to create. + properties: + env: + description: The Datadog environment. + 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 + 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' + CIAppPipelineEventPipeline: + description: 'Details of the top level pipeline, build, or workflow of your CI.' + properties: + end: + description: Time when the pipeline run finished. It cannot be older than 18 hours in the past from the current time. The time format must be RFC3339. + example: '2023-05-31T15:30:00Z' + format: date-time + type: string + error: + $ref: '#/components/schemas/CIAppCIError' + git: + $ref: '#/components/schemas/CIAppGitInfo' + is_manual: + description: Whether or not the pipeline was triggered manually by the user. + example: false + nullable: true + type: boolean + is_resumed: + description: Whether or not the pipeline was resumed after being blocked. + example: false + nullable: true + type: boolean + level: + $ref: '#/components/schemas/CIAppPipelineEventPipelineLevel' + metrics: + $ref: '#/components/schemas/CIAppPipelineEventMetrics' + name: + description: Name of the pipeline. All pipeline runs for the builds should have the same name. + example: Deploy to AWS + type: string + node: + $ref: '#/components/schemas/CIAppHostInfo' + parameters: + $ref: '#/components/schemas/CIAppPipelineEventParameters' + parent_pipeline: + $ref: '#/components/schemas/CIAppPipelineEventParentPipeline' + partial_retry: + description: |- + Whether or not the pipeline was a partial retry of a previous attempt. A partial retry is one + which only runs a subset of the original jobs. + example: false + type: boolean + pipeline_id: + description: |- + Any ID used in the provider to identify the pipeline run even if it is not unique across retries. + If the `pipeline_id` is unique, then both `unique_id` and `pipeline_id` can be set to the same value. + example: '#023' + type: string + previous_attempt: + $ref: '#/components/schemas/CIAppPipelineEventPreviousPipeline' + queue_time: + description: 'The queue time in milliseconds, if applicable.' + example: 1004 + format: int64 + minimum: 0 + nullable: true + type: integer + start: + description: Time when the pipeline run started (it should not include any queue time). The time format must be RFC3339. + example: '2023-05-31T15:30:00Z' + format: date-time + type: string + status: + $ref: '#/components/schemas/CIAppPipelineEventPipelineStatus' + tags: + $ref: '#/components/schemas/CIAppPipelineEventTags' + unique_id: + description: |- + UUID of the pipeline run. The ID has to be unique across retries and pipelines, + including partial retries. + example: 3eacb6f3-ff04-4e10-8a9c-46e6d054024a + type: string + url: + description: The URL to look at the pipeline in the CI provider UI. + example: 'https://my-ci-provider.example/pipelines/my-pipeline/run/1' + type: string + required: + - level + - unique_id + - name + - url + - start + - end + - status + - partial_retry + type: object + CIAppPipelineEventStage: + description: Details of a CI stage. + properties: + 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 + 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 + format: email + 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 + format: email + 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 + CIAppPipelineEventPipelineLevel: + default: pipeline + description: 'Used to distinguish between pipelines, stages, jobs, and steps.' + enum: + - pipeline + example: pipeline + type: string + x-enum-varnames: + - PIPELINE + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + 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. + 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 + 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 + 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' + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + CIAppTestLevel: + description: Test run level. + enum: + - session + - module + - suite + - test + example: test + type: string + x-enum-varnames: + - SESSION + - MODULE + - SUITE + - TEST + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + app_pipeline_events: + id: datadog.ci_visibility.app_pipeline_events + name: app_pipeline_events + title: App Pipeline Events + methods: + create_ci_app_pipeline_event: + operation: + $ref: '#/paths/~1api~1v2~1ci~1pipeline/post' + response: + mediaType: application/json + openAPIDocKey: '202' + aggregate_ci_app_pipeline_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1pipelines~1analytics~1aggregate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + list_ci_app_pipeline_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1pipelines~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_ci_app_pipeline_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1pipelines~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + search_ci_app_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/app_pipeline_events/methods/list_ci_app_pipeline_events' + insert: + - $ref: '#/components/x-stackQL-resources/app_pipeline_events/methods/create_ci_app_pipeline_event' + update: [] + delete: [] + app_test_events: + id: datadog.ci_visibility.app_test_events + name: app_test_events + title: App Test Events + methods: + aggregate_ci_app_test_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1tests~1analytics~1aggregate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + list_ci_app_test_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1tests~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_ci_app_test_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1tests~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + search_ci_app_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/app_test_events/methods/list_ci_app_test_events' + insert: [] + update: [] + delete: [] +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/). + + 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 + x-unstable: |- + **Note:** This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /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 + /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 + /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 + /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 + summary: Aggregate tests events + tags: + - CI Visibility Tests + x-codegen-request-body-name: body + /api/v2/ci/tests/events: + get: + description: |- + List endpoint returns CI Visibility test events that match a [log search query](https://docs.datadoghq.com/logs/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 + 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 + /api/v2/ci/tests/events/search: + post: + description: |- + List endpoint returns CI Visibility test events that match a [log search query](https://docs.datadoghq.com/logs/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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/cloud_workload_security.yaml b/providers/src/datadog/v00.00.00000/services/cloud_workload_security.yaml new file mode 100644 index 00000000..bc02b556 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/cloud_workload_security.yaml @@ -0,0 +1,1334 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - cloud_workload_security + description: Cloud_Workload_Security +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + CloudWorkloadSecurityAgentRuleAttributes: + description: A Cloud Workload Security Agent rule returned by the API. + properties: + agentConstraint: + description: The version of the agent. + type: string + 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 + 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 + name: + description: The name of the Agent rule. + example: my_agent_rule + type: string + 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. The value should always be `agent_rule`. + enum: + - agent_rule + example: agent_rule + type: string + x-enum-varnames: + - AGENT_RULE + 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 + 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 + CloudWorkloadSecurityAgentRuleCreateData: + description: Object for a single Agent rule. + properties: + attributes: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateAttributes' + type: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' + required: + - attributes + - type + type: object + CloudWorkloadSecurityAgentRuleCreateAttributes: + description: Create a new Cloud Workload Security Agent rule. + properties: + description: + description: The description of the Agent rule. + example: My Agent rule + type: string + 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 + name: + description: The name of the Agent rule. + example: my_agent_rule + type: string + required: + - name + - expression + 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 + CloudWorkloadSecurityAgentRuleUpdateData: + description: Object for a single Agent rule. + properties: + attributes: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateAttributes' + type: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' + required: + - attributes + - type + type: object + CloudWorkloadSecurityAgentRuleUpdateAttributes: + description: Update an existing Cloud Workload Security Agent rule. + properties: + description: + description: The description of the Agent rule. + example: My Agent rule + type: string + enabled: + description: Whether the Agent rule is enabled. + example: true + type: boolean + expression: + description: The SECL expression of the Agent rule. + example: exec.file.name == \"sh\" + type: string + type: object + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + ConcurrentModificationResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Concurrent Modification + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + cloud_workload_policy_files: + id: datadog.cloud_workload_security.cloud_workload_policy_files + name: cloud_workload_policy_files + title: Cloud Workload Policy Files + methods: + download_cloud_workload_policy_file: + operation: + $ref: '#/paths/~1api~1v2~1security~1cloud_workload~1policy~1download/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _download_cloud_workload_policy_file: + operation: + $ref: '#/paths/~1api~1v2~1security~1cloud_workload~1policy~1download/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + cloud_workload_security_agent_rules: + id: datadog.cloud_workload_security.cloud_workload_security_agent_rules + name: cloud_workload_security_agent_rules + title: Cloud Workload Security Agent Rules + methods: + list_cloud_workload_security_agent_rules: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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' + 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 + _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' + 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: [] + delete: + - $ref: '#/components/x-stackQL-resources/cloud_workload_security_agent_rules/methods/delete_cloud_workload_security_agent_rule' +paths: + /api/v2/security/cloud_workload/policy/download: + get: + description: |- + The download endpoint generates a Cloud Workload Security policy file from your currently active + Cloud Workload Security 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. + 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: Get the latest Cloud Workload Security policy + tags: + - Cloud Workload Security + /api/v2/security_monitoring/cloud_workload_security/agent_rules: + get: + description: Get the list of Agent rules. + 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 Cloud Workload Security Agent rules + tags: + - Cloud Workload Security + post: + description: Create a new Agent rule with the given parameters. + 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 Cloud Workload Security Agent rule + tags: + - Cloud Workload Security + x-codegen-request-body-name: body + '/api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id}': + delete: + description: Delete a specific Agent rule. + 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 Cloud Workload Security Agent rule + tags: + - Cloud Workload Security + get: + description: Get the details of a specific Agent rule. + 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 Cloud Workload Security Agent rule + tags: + - Cloud Workload Security + patch: + description: |- + Update a specific Agent rule. + Returns the Agent rule object when the request is successful. + 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 Cloud Workload Security Agent rule + tags: + - Cloud Workload Security + x-codegen-request-body-name: body diff --git a/providers/src/datadog/v00.00.00000/services/cloudflare_integration.yaml b/providers/src/datadog/v00.00.00000/services/cloudflare_integration.yaml new file mode 100644 index 00000000..c24a06e3 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/cloudflare_integration.yaml @@ -0,0 +1,1209 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - cloudflare_integration + description: Cloudflare_Integration +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + 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 + 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 + required: + - api_key + - name + type: object + CloudflareAccountUpdateRequest: + description: Payload schema when updating a Cloudflare account. + properties: + data: + $ref: '#/components/schemas/CloudflareAccountUpdateRequestData' + required: + - data + type: object + CloudflareAccountUpdateRequestData: + description: Data object for updating a Cloudflare account. + properties: + attributes: + $ref: '#/components/schemas/CloudflareAccountUpdateRequestAttributes' + type: + $ref: '#/components/schemas/CloudflareAccountType' + 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 + required: + - api_key + type: object + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + 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 + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + cloudflare_accounts: + id: datadog.cloudflare_integration.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 + _list_cloudflare_accounts: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1cloudflare~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _get_cloudflare_account: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1cloudflare~1accounts~1{account_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + delete: + - $ref: '#/components/x-stackQL-resources/cloudflare_accounts/methods/delete_cloudflare_account' +paths: + /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 + 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 + '/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 + 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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/confluent_cloud.yaml b/providers/src/datadog/v00.00.00000/services/confluent_cloud.yaml new file mode 100644 index 00000000..309c09ba --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/confluent_cloud.yaml @@ -0,0 +1,1561 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - confluent_cloud + description: Confluent_Cloud +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + ConfluentAccountsResponse: + description: Confluent account returned by the API. + properties: + data: + description: The Confluent account. + items: + $ref: '#/components/schemas/ConfluentAccountResponseData' + type: array + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + 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 + 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 + 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 + ConfluentAccountUpdateRequest: + description: 'The JSON:API request for updating a Confluent account.' + properties: + data: + $ref: '#/components/schemas/ConfluentAccountUpdateRequestData' + required: + - data + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + 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 + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + confluent_accounts: + id: datadog.confluent_cloud.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 + _list_confluent_account: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _get_confluent_account: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + delete: + - $ref: '#/components/x-stackQL-resources/confluent_accounts/methods/delete_confluent_account' + confluent_resources: + id: datadog.confluent_cloud.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 + _list_confluent_resource: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _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' + 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: [] + delete: + - $ref: '#/components/x-stackQL-resources/confluent_resources/methods/delete_confluent_resource' +paths: + /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 + 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 + '/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 + 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 + 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 + '/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 + 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 + '/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 + 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 + 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: + - STANDARD diff --git a/providers/src/datadog/v00.00.00000/services/containers.yaml b/providers/src/datadog/v00.00.00000/services/containers.yaml new file mode 100644 index 00000000..8216dac5 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/containers.yaml @@ -0,0 +1,1581 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - containers + description: Container_Images +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + ContainerGroupRelationshipsLink: + description: Relationships to Containers inside a Container Group. + properties: + data: + $ref: '#/components/schemas/ContainerGroupRelationshipsData' + links: + $ref: '#/components/schemas/ContainerGroupRelationshipsLinks' + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + images: + id: datadog.containers.images + name: images + title: Images + methods: + list_container_images: + operation: + $ref: '#/paths/~1api~1v2~1container_images/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_container_images: + operation: + $ref: '#/paths/~1api~1v2~1container_images/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/images/methods/list_container_images' + insert: [] + update: [] + delete: [] + containers: + id: datadog.containers.containers + name: containers + title: Containers + methods: + list_containers: + operation: + $ref: '#/paths/~1api~1v2~1containers/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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: [] +paths: + /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 + /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 diff --git a/providers/src/datadog/v00.00.00000/services/dashboard_lists.yaml b/providers/src/datadog/v00.00.00000/services/dashboard_lists.yaml new file mode 100644 index 00000000..c8c5d643 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/dashboard_lists.yaml @@ -0,0 +1,1303 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - dashboard_lists + description: Dashboard_Lists +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +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. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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 + 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 + 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 + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + dashboard_list_items: + id: datadog.dashboard_lists.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' + objectKey: $.dashboards + _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' +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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/dora_metrics.yaml b/providers/src/datadog/v00.00.00000/services/dora_metrics.yaml new file mode 100644 index 00000000..46ca83e6 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/dora_metrics.yaml @@ -0,0 +1,1214 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - dora_metrics + description: DORA_Metrics +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + DORADeploymentRequestAttributes: + description: Attributes to create a DORA deployment event. + properties: + finished_at: + description: Unix timestamp in nanoseconds when the deployment finished. It should not be older than 3 hours. + example: 1693491984000000000 + format: int64 + type: integer + git: + $ref: '#/components/schemas/DORAGitInfo' + id: + description: Deployment ID. + type: string + service: + description: Service name from a service available in the Service Catalog. + example: shopist + type: string + started_at: + description: Unix timestamp in nanoseconds when the deployment started. + example: 1693491974000000000 + format: int64 + type: integer + 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 + 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 + 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 + DORAIncidentRequest: + description: Request to create a DORA incident event. + properties: + data: + $ref: '#/components/schemas/DORAIncidentRequestData' + required: + - data + type: object + DORAIncidentResponse: + description: Response after receiving a DORA incident event. + properties: + data: + $ref: '#/components/schemas/DORAIncidentResponseData' + required: + - data + type: object + DORAIncidentRequestData: + description: 'The JSON:API data.' + properties: + attributes: + $ref: '#/components/schemas/DORAIncidentRequestAttributes' + required: + - attributes + type: object + DORAIncidentResponseData: + description: Response after receiving a DORA incident event. + properties: + id: + description: The ID of the received DORA incident event. + example: 4242fcdd31586083 + type: string + type: + $ref: '#/components/schemas/DORAIncidentType' + required: + - id + type: object + DORAIncidentRequestAttributes: + description: Attributes to create a DORA incident event. + properties: + finished_at: + description: Unix timestamp in nanoseconds when the incident finished. It should not be older than 3 hours. + example: 1693491984000000000 + format: int64 + type: integer + git: + $ref: '#/components/schemas/DORAGitInfo' + id: + description: Incident ID + type: string + name: + description: Incident name. + example: Webserver is down failing all requests + type: string + service: + description: Service name from a service available in the Service Catalog. + example: shopist + type: string + severity: + description: Incident severity. + example: High + type: string + started_at: + description: Unix timestamp in nanoseconds when the incident started. + example: 1693491974000000000 + format: int64 + type: integer + 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 + type: object + DORAIncidentType: + default: dora_incident + description: 'JSON:API type for DORA incident events.' + enum: + - dora_incident + example: dora_incident + type: string + x-enum-varnames: + - DORA_INCIDENT + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + deployments: + id: datadog.dora_metrics.deployments + name: deployments + title: Deployments + methods: + create_dora_deployment: + operation: + $ref: '#/paths/~1api~1v2~1dora~1deployment/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/deployments/methods/create_dora_deployment' + update: [] + delete: [] + incidents: + id: datadog.dora_metrics.incidents + name: incidents + title: Incidents + methods: + create_dora_incident: + operation: + $ref: '#/paths/~1api~1v2~1dora~1incident/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/incidents/methods/create_dora_incident' + update: [] + delete: [] +paths: + /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 + x-unstable: |- + **Note**: This endpoint is in private beta. + If you want to request access, complete the [form](https://forms.gle/Eqq6uXfGjYxmqpjDA). + /api/v2/dora/incident: + post: + description: |- + Use this API endpoint to provide data about incidents for DORA metrics. + + This is necessary for: + - Change Failure Rate + - Time to Restore + operationId: CreateDORAIncident + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DORAIncidentRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/DORAIncidentResponse' + description: OK + '202': + content: + application/json: + schema: + $ref: '#/components/schemas/DORAIncidentResponse' + 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 + x-unstable: |- + **Note**: This endpoint is in private beta. + If you want to request access, complete the [form](https://forms.gle/Eqq6uXfGjYxmqpjDA). diff --git a/providers/src/datadog/v00.00.00000/services/downtimes.yaml b/providers/src/datadog/v00.00.00000/services/downtimes.yaml new file mode 100644 index 00000000..6823062e --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/downtimes.yaml @@ -0,0 +1,2025 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - downtimes + 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. +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + DowntimeCreateRequestData: + description: Object to create a downtime. + properties: + attributes: + $ref: '#/components/schemas/DowntimeCreateRequestAttributes' + type: + $ref: '#/components/schemas/DowntimeResourceType' + required: + - type + - attributes + 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 + DowntimeScheduleCreateRequest: + description: Schedule for the downtime. + oneOf: + - $ref: '#/components/schemas/DowntimeScheduleRecurrencesCreateRequest' + - $ref: '#/components/schemas/DowntimeScheduleOneTimeCreateUpdateRequest' + 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: {} + 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 + 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 + DowntimeUpdateRequest: + description: Request for editing a downtime. + properties: + data: + $ref: '#/components/schemas/DowntimeUpdateRequestData' + required: + - data + 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 + 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 + DowntimeScheduleUpdateRequest: + description: Schedule for the downtime. + oneOf: + - $ref: '#/components/schemas/DowntimeScheduleRecurrencesUpdateRequest' + - $ref: '#/components/schemas/DowntimeScheduleOneTimeCreateUpdateRequest' + DowntimeScheduleRecurrencesUpdateRequest: + 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 + 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 + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + downtimes: + id: datadog.downtimes.downtimes + name: downtimes + title: Downtimes + methods: + list_downtimes: + operation: + $ref: '#/paths/~1api~1v2~1downtime/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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' + objectKey: $.data + _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: [] + delete: [] + monitor_downtimes: + id: datadog.downtimes.monitor_downtimes + name: monitor_downtimes + title: Monitor Downtimes + methods: + list_monitor_downtimes: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1{monitor_id}~1downtime_matches/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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/monitor_downtimes/methods/list_monitor_downtimes' + insert: [] + update: [] + delete: [] +paths: + /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 + 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 + '/api/v2/downtime/{downtime_id}': + delete: + description: Cancel a downtime. + 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 + 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 + 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 + '/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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/events.yaml b/providers/src/datadog/v00.00.00000/services/events.yaml new file mode 100644 index 00000000..9d36fea2 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/events.yaml @@ -0,0 +1,1415 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - events + description: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + 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 + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + events: + id: datadog.events.events + name: events + title: Events + methods: + list_events: + operation: + $ref: '#/paths/~1api~1v2~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_events: + operation: + $ref: '#/paths/~1api~1v2~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + search_events: + operation: + $ref: '#/paths/~1api~1v2~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/events/methods/list_events' + insert: [] + update: [] + delete: [] +paths: + /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: query + name: 'filter[from]' + required: false + schema: + type: string + - description: Maximum timestamp for requested events. + 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 + /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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - events_read + summary: Search events + tags: + - Events + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data diff --git a/providers/src/datadog/v00.00.00000/services/fastly_integration.yaml b/providers/src/datadog/v00.00.00000/services/fastly_integration.yaml new file mode 100644 index 00000000..79b47a09 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/fastly_integration.yaml @@ -0,0 +1,1455 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - fastly_integration + description: Fastly_Integration +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + 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 + 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 + FastlyAccountUpdateRequest: + description: Payload schema when updating a Fastly account. + properties: + data: + $ref: '#/components/schemas/FastlyAccountUpdateRequestData' + required: + - data + type: object + FastlyAccountUpdateRequestData: + description: Data object for updating a Fastly account. + properties: + attributes: + $ref: '#/components/schemas/FastlyAccountUpdateRequestAttributes' + type: + $ref: '#/components/schemas/FastlyAccountType' + 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 + type: object + FastlyServicesResponse: + description: The expected response schema when getting Fastly services. + properties: + data: + description: 'The JSON:API data schema.' + items: + $ref: '#/components/schemas/FastlyServiceResponse' + type: array + type: object + FastlyServiceResponse: + description: The expected response schema when getting a Fastly service. + properties: + data: + $ref: '#/components/schemas/FastlyServiceData' + 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 + 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 + FastlyServiceRequest: + description: Payload schema for Fastly service requests. + properties: + data: + $ref: '#/components/schemas/FastlyServiceData' + required: + - data + type: object + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + 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 + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + fastly_accounts: + id: datadog.fastly_integration.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 + _list_fastly_accounts: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _get_fastly_account: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + delete: + - $ref: '#/components/x-stackQL-resources/fastly_accounts/methods/delete_fastly_account' + fastly_services: + id: datadog.fastly_integration.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 + _list_fastly_services: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _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' + 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: [] + delete: + - $ref: '#/components/x-stackQL-resources/fastly_services/methods/delete_fastly_service' +paths: + /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 + 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 + '/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 + 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 + 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 + '/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 + 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 + '/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 + 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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/gcp_integration.yaml b/providers/src/datadog/v00.00.00000/services/gcp_integration.yaml new file mode 100644 index 00000000..06a4a591 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/gcp_integration.yaml @@ -0,0 +1,1272 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - gcp_integration + description: GCP_Integration +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + host_filters: + description: Your Host Filters. + items: + description: Host 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_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 + resource_collection_enabled: + default: false + 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 + 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 + GCPSTSServiceAccountData: + description: Additional metadata on your generated service account. + properties: + attributes: + $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' + type: + $ref: '#/components/schemas/GCPServiceAccountType' + 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 + GCPSTSDelegateAccountResponse: + description: Your delegate service account response data. + properties: + data: + $ref: '#/components/schemas/GCPSTSDelegateAccount' + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + NotAuthorizedResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Authorized + NotFoundResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + BadRequestResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + UnauthorizedResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unauthorized + ConflictResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + sts_accounts: + id: datadog.gcp_integration.sts_accounts + name: sts_accounts + title: Sts Accounts + methods: + list_gcpsts_accounts: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_gcpsts_accounts: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_gcpsts_account: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_gcpsts_account: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts~1{account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + update_gcpsts_account: + 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/sts_accounts/methods/list_gcpsts_accounts' + insert: + - $ref: '#/components/x-stackQL-resources/sts_accounts/methods/create_gcpsts_account' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/sts_accounts/methods/delete_gcpsts_account' + sts_delegates: + id: datadog.gcp_integration.sts_delegates + name: sts_delegates + title: Sts Delegates + methods: + get_gcpsts_delegate: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1sts_delegate/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _get_gcpsts_delegate: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1sts_delegate/get' + response: + mediaType: application/json + openAPIDocKey: '200' + make_gcpsts_delegate: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1sts_delegate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/sts_delegates/methods/get_gcpsts_delegate' + insert: [] + update: [] + delete: [] +paths: + /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 + 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 + '/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 + 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 + /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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/incidents.yaml b/providers/src/datadog/v00.00.00000/services/incidents.yaml new file mode 100644 index 00000000..1c8908cc --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/incidents.yaml @@ -0,0 +1,4424 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - incidents + description: Manage incident response. +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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' + 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' + 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 + 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/User' + - $ref: '#/components/schemas/IncidentAttachmentData' + IncidentResponseMeta: + description: The metadata object containing pagination metadata. + properties: + pagination: + $ref: '#/components/schemas/IncidentResponseMetaPagination' + readOnly: true + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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. + 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 + 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 + 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 + 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 + IncidentFieldAttributes: + description: 'Dynamic fields for which selections can be made, with field names as keys.' + oneOf: + - $ref: '#/components/schemas/IncidentFieldAttributesSingleValue' + - $ref: '#/components/schemas/IncidentFieldAttributesMultipleValue' + required: + - type + 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 email address used for the notification. + example: '@test.user@test.com' + type: string + type: object + IncidentSeverity: + description: The incident severity. + enum: + - UNKNOWN + - SEV-1 + - SEV-2 + - SEV-3 + - SEV-4 + - SEV-5 + example: UNKNOWN + type: string + x-enum-varnames: + - UNKNOWN + - 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + IncidentIntegrationMetadataType: + default: incident_integrations + description: Integration metadata resource type. + enum: + - incident_integrations + example: incident_integrations + type: string + x-enum-varnames: + - INCIDENT_INTEGRATIONS + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + notification_handles: + description: Notification handles that will be notified of the incident at creation. + 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 + IncidentTimelineCellCreateAttributes: + description: The timeline cell's attributes for a create request. + oneOf: + - $ref: '#/components/schemas/IncidentTimelineCellMarkdownCreateAttributes' + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + IncidentUpdateRequest: + description: Update request for an incident. + properties: + data: + $ref: '#/components/schemas/IncidentUpdateData' + required: + - data + 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 + 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. + 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 + 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 + IncidentPostmortemType: + default: incident_postmortems + description: Incident postmortem resource type. + enum: + - incident_postmortems + example: incident_postmortems + type: string + x-enum-varnames: + - INCIDENT_POSTMORTEMS + IncidentAttachmentsResponse: + description: The response object containing an incident's attachments. + properties: + data: + description: An array of 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' + 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. + 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 + 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 + IncidentAttachmentUpdateAttributes: + description: Incident attachment attributes. + oneOf: + - $ref: '#/components/schemas/IncidentAttachmentPostmortemAttributes' + - $ref: '#/components/schemas/IncidentAttachmentLinkAttributes' + 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 + 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' + 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 + IncidentIntegrationMetadataMetadata: + description: Incident integration metadata's metadata attribute. + oneOf: + - $ref: '#/components/schemas/SlackIntegrationMetadata' + - $ref: '#/components/schemas/JiraIntegrationMetadata' + 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 + 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 + 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 + 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 + IncidentIntegrationMetadataPatchRequest: + description: Patch request for an incident integration metadata. + properties: + data: + $ref: '#/components/schemas/IncidentIntegrationMetadataPatchData' + required: + - data + 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 + 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 + 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' + 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 + IncidentTodoAssigneeArray: + description: Array of todo assignees. + items: + $ref: '#/components/schemas/IncidentTodoAssignee' + type: array + IncidentTodoAssignee: + description: A todo assignee. + example: '@test.user@test.com' + oneOf: + - $ref: '#/components/schemas/IncidentTodoAssigneeHandle' + - $ref: '#/components/schemas/IncidentTodoAnonymousAssignee' + 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 + IncidentTodoAnonymousAssigneeSource: + default: slack + description: The source of the anonymous assignee. + enum: + - slack + - microsoft_teams + example: slack + type: string + x-enum-varnames: + - SLACK + - MICROSOFT_TEAMS + 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 + 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 + IncidentTodoPatchRequest: + description: Patch request for an incident todo. + properties: + data: + $ref: '#/components/schemas/IncidentTodoPatchData' + 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 + 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 + 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' + 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 + 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 + 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 + 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 + IncidentServiceUpdateRequest: + description: Update request with an incident service payload. + properties: + data: + $ref: '#/components/schemas/IncidentServiceUpdateData' + required: + - data + 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 + 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 + 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 + 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' + 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 + 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 + 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 + 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 + IncidentTeamUpdateRequest: + description: Update request with an incident team payload. + properties: + data: + $ref: '#/components/schemas/IncidentTeamUpdateData' + required: + - data + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + incidents: + id: datadog.incidents.incidents + name: incidents + title: Incidents + methods: + list_incidents: + operation: + $ref: '#/paths/~1api~1v2~1incidents/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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' + objectKey: $.data + _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' + objectKey: $.data + _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: [] + delete: + - $ref: '#/components/x-stackQL-resources/incidents/methods/delete_incident' + incident_attachments: + id: datadog.incidents.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' + objectKey: $.data + _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: [] + delete: [] + incident_integrations: + id: datadog.incidents.incident_integrations + name: incident_integrations + title: Incident Integrations + methods: + list_incident_integrations: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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' + objectKey: $.data + _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: [] + delete: + - $ref: '#/components/x-stackQL-resources/incident_integrations/methods/delete_incident_integration' + incident_todos: + id: datadog.incidents.incident_todos + name: incident_todos + title: Incident Todos + methods: + list_incident_todos: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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' + objectKey: $.data + _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: [] + delete: + - $ref: '#/components/x-stackQL-resources/incident_todos/methods/delete_incident_todo' + incident_services: + id: datadog.incidents.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' + objectKey: $.data + _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' + objectKey: $.data + _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: [] + delete: + - $ref: '#/components/x-stackQL-resources/incident_services/methods/delete_incident_service' + incident_teams: + id: datadog.incidents.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' + objectKey: $.data + _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' + objectKey: $.data + _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: [] + delete: + - $ref: '#/components/x-stackQL-resources/incident_teams/methods/delete_incident_team' +paths: + /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-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-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-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-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-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-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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get a list of attachments + 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: '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-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-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-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-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-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-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-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-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/services: + get: + 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-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 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-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + '/api/v2/services/{service_id}': + delete: + 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-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + 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-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 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-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /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-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-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-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-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-unstable: '**Note**: This endpoint is deprecated. See the [Teams API endpoints](https://docs.datadoghq.com/api/latest/teams/).' diff --git a/providers/src/datadog/v00.00.00000/services/ip_allowlist.yaml b/providers/src/datadog/v00.00.00000/services/ip_allowlist.yaml new file mode 100644 index 00000000..741b97ba --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/ip_allowlist.yaml @@ -0,0 +1,1067 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - ip_allowlist + description: IP_Allowlist +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + IPAllowlistResponse: + description: Response containing information about the IP allowlist. + properties: + data: + $ref: '#/components/schemas/IPAllowlistData' + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + IPAllowlistEntry: + description: IP allowlist entry object. + properties: + data: + $ref: '#/components/schemas/IPAllowlistEntryData' + required: + - data + 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 + 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 + IPAllowlistUpdateRequest: + description: Update the IP allowlist. + properties: + data: + $ref: '#/components/schemas/IPAllowlistData' + required: + - data + type: object + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + 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 + BadRequestResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + ip_allowlists: + id: datadog.ip_allowlist.ip_allowlists + name: ip_allowlists + title: Ip Allowlists + methods: + get_ip_allowlist: + operation: + $ref: '#/paths/~1api~1v2~1ip_allowlist/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _get_ip_allowlist: + operation: + $ref: '#/paths/~1api~1v2~1ip_allowlist/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_ip_allowlist: + operation: + $ref: '#/paths/~1api~1v2~1ip_allowlist/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/ip_allowlists/methods/get_ip_allowlist' + insert: [] + update: [] + delete: [] +paths: + /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' + summary: Get IP Allowlist + tags: + - IP Allowlist + 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' + summary: Update IP Allowlist + tags: + - IP Allowlist + x-codegen-request-body-name: body diff --git a/providers/src/datadog/v00.00.00000/services/key_management.yaml b/providers/src/datadog/v00.00.00000/services/key_management.yaml new file mode 100644 index 00000000..afe6d67d --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/key_management.yaml @@ -0,0 +1,2241 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - key_management + description: Key_Management +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +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. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + APIKeyResponseIncludedItem: + description: An object related to an API key. + oneOf: + - $ref: '#/components/schemas/User' + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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/RelationshipToUser' + type: object + APIKeysType: + default: api_keys + description: API Keys resource type. + enum: + - api_keys + example: api_keys + type: string + x-enum-varnames: + - API_KEYS + 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 + 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 + RelationshipToUser: + description: Relationship to user. + properties: + data: + $ref: '#/components/schemas/RelationshipToUserData' + required: + - data + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + APIKeyCreateAttributes: + description: Attributes used to create an API Key. + properties: + name: + description: Name of the API key. + example: API Key for submitting metrics + type: string + 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' + 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' + 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 + APIKeyUpdateRequest: + description: Request used to update an API key. + properties: + data: + $ref: '#/components/schemas/APIKeyUpdateData' + required: + - data + 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 + APIKeyUpdateAttributes: + description: Attributes used to update an API Key. + properties: + name: + description: Name of the API key. + example: API Key for submitting metrics + type: string + required: + - name + 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 + 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' + 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 + 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 + 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 + 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 + 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 + RelationshipToPermissions: + description: Relationship to multiple permissions objects. + properties: + data: + description: Relationships to permission objects. + items: + $ref: '#/components/schemas/RelationshipToPermissionData' + type: array + type: object + RelationshipToPermissionData: + description: Relationship to permission object. + properties: + id: + description: ID of the permission. + type: string + type: + $ref: '#/components/schemas/PermissionsType' + type: object + PermissionsType: + default: permissions + description: Permissions resource type. + enum: + - permissions + example: permissions + type: string + x-enum-varnames: + - PERMISSIONS + 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 + 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' + 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 + ApplicationKeyUpdateRequest: + description: Request used to update an application key. + properties: + data: + $ref: '#/components/schemas/ApplicationKeyUpdateData' + required: + - data + 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 + 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 + ApplicationKeyCreateRequest: + description: Request used to create an application key. + properties: + data: + $ref: '#/components/schemas/ApplicationKeyCreateData' + required: + - data + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + api_keys: + id: datadog.key_management.api_keys + name: api_keys + title: Api Keys + methods: + list_api_keys: + operation: + $ref: '#/paths/~1api~1v2~1api_keys/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_api_keys: + operation: + $ref: '#/paths/~1api~1v2~1api_keys/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_api_key: + operation: + $ref: '#/paths/~1api~1v2~1api_keys/post' + response: + mediaType: application/json + openAPIDocKey: '201' + delete_api_key: + operation: + $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_api_key: + operation: + $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _get_api_key: + operation: + $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_api_key: + 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_api_key' + - $ref: '#/components/x-stackQL-resources/api_keys/methods/list_api_keys' + insert: + - $ref: '#/components/x-stackQL-resources/api_keys/methods/create_api_key' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/api_keys/methods/delete_api_key' + application_keys: + id: datadog.key_management.application_keys + name: application_keys + title: Application Keys + methods: + list_application_keys: + operation: + $ref: '#/paths/~1api~1v2~1application_keys/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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' + objectKey: $.data + _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: [] + delete: + - $ref: '#/components/x-stackQL-resources/application_keys/methods/delete_application_key' + current_user_application_keys: + id: datadog.key_management.current_user_application_keys + name: current_user_application_keys + title: Current User Application Keys + methods: + list_current_user_application_keys: + operation: + $ref: '#/paths/~1api~1v2~1current_user~1application_keys/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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' + objectKey: $.data + _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: [] + delete: + - $ref: '#/components/x-stackQL-resources/current_user_application_keys/methods/delete_current_user_application_key' +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 + 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 + '/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 + 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 + 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 + /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 + '/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 + 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 + 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 + /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 + 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 + '/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 + 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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/log_archives.yaml b/providers/src/datadog/v00.00.00000/services/log_archives.yaml new file mode 100644 index 00000000..da2f29bf --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/log_archives.yaml @@ -0,0 +1,1840 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - log_archives + description: Logs_Archives +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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 + LogsArchives: + description: The available archives. + properties: + data: + description: A list of archives. + items: + $ref: '#/components/schemas/LogsArchiveDefinition' + type: array + 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 + 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 + LogsArchiveDestination: + description: An archive's destination. + nullable: true + oneOf: + - $ref: '#/components/schemas/LogsArchiveDestinationAzure' + - $ref: '#/components/schemas/LogsArchiveDestinationGCS' + - $ref: '#/components/schemas/LogsArchiveDestinationS3' + required: + - type + - integration + 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 + 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 + integration: + $ref: '#/components/schemas/LogsArchiveIntegrationS3' + path: + description: The archive path. + type: string + type: + $ref: '#/components/schemas/LogsArchiveDestinationS3Type' + required: + - bucket + - integration + - type + 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: + - project_id + - client_email + type: object + LogsArchiveDestinationGCSType: + default: gcs + description: Type of the GCS archive destination. + enum: + - gcs + example: gcs + type: string + x-enum-varnames: + - GCS + 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 + LogsArchiveDestinationS3Type: + default: s3 + description: Type of the S3 archive destination. + enum: + - s3 + example: s3 + type: string + x-enum-varnames: + - S3 + 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 + 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 + 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 + LogsArchiveCreateRequestDestination: + description: An archive's destination. + oneOf: + - $ref: '#/components/schemas/LogsArchiveDestinationAzure' + - $ref: '#/components/schemas/LogsArchiveDestinationGCS' + - $ref: '#/components/schemas/LogsArchiveDestinationS3' + required: + - type + - integration + 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 + RolesType: + default: roles + description: Roles type. + enum: + - roles + example: roles + type: string + x-enum-varnames: + - ROLES + 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 + 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 + 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 + RelationshipToPermissions: + description: Relationship to multiple permissions objects. + properties: + data: + description: Relationships to permission objects. + items: + $ref: '#/components/schemas/RelationshipToPermissionData' + type: array + type: object + RelationshipToPermissionData: + description: Relationship to permission object. + properties: + id: + description: ID of the permission. + type: string + type: + $ref: '#/components/schemas/PermissionsType' + type: object + PermissionsType: + default: permissions + description: Permissions resource type. + enum: + - permissions + example: permissions + type: string + x-enum-varnames: + - PERMISSIONS + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + log_archive_orders: + id: datadog.log_archives.log_archive_orders + name: log_archive_orders + title: Log Archive Orders + methods: + get_logs_archive_order: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archive-order/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _get_logs_archive_order: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archive-order/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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/log_archive_orders/methods/get_logs_archive_order' + insert: [] + update: [] + delete: [] + log_archives: + id: datadog.log_archives.log_archives + name: log_archives + title: Log Archives + methods: + list_logs_archives: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archives/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_logs_archives: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archives/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _get_logs_archive: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_logs_archive: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + remove_role_from_archive: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}~1readers/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + 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/log_archives/methods/get_logs_archive' + - $ref: '#/components/x-stackQL-resources/log_archives/methods/list_logs_archives' + insert: + - $ref: '#/components/x-stackQL-resources/log_archives/methods/create_logs_archive' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/log_archives/methods/delete_logs_archive' + archive_read_roles: + id: datadog.log_archives.archive_read_roles + name: archive_read_roles + title: Archive Read Roles + methods: + list_archive_read_roles: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}~1readers/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_archive_read_roles: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}~1readers/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/archive_read_roles/methods/list_archive_read_roles' + insert: [] + update: [] + delete: [] +paths: + /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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get archive order + tags: + - Logs Archives + 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 + /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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get all archives + tags: + - Logs 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 + '/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 + 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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get an archive + tags: + - Logs 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 + '/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 + 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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List read roles for an archive + tags: + - Logs Archives + x-codegen-request-body-name: body + 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 diff --git a/providers/src/datadog/v00.00.00000/services/log_metrics.yaml b/providers/src/datadog/v00.00.00000/services/log_metrics.yaml new file mode 100644 index 00000000..659ffd32 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/log_metrics.yaml @@ -0,0 +1,1305 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - log_metrics + description: Logs_Metrics +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + 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 + 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 + 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 + 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 + LogsMetricComputeAggregationType: + description: The type of aggregation to use. + enum: + - count + - distribution + example: distribution + type: string + x-enum-varnames: + - COUNT + - DISTRIBUTION + LogsMetricUpdateRequest: + description: The new log-based metric body. + properties: + data: + $ref: '#/components/schemas/LogsMetricUpdateData' + required: + - data + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + log_metrics: + id: datadog.log_metrics.log_metrics + name: log_metrics + title: Log Metrics + methods: + list_logs_metrics: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1metrics/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_logs_metrics: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1metrics/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _get_logs_metric: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1metrics~1{metric_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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/log_metrics/methods/get_logs_metric' + - $ref: '#/components/x-stackQL-resources/log_metrics/methods/list_logs_metrics' + insert: + - $ref: '#/components/x-stackQL-resources/log_metrics/methods/create_logs_metric' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/log_metrics/methods/delete_logs_metric' +paths: + /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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get all log-based metrics + tags: + - Logs Metrics + 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 + '/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 + 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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get a log-based metric + tags: + - Logs Metrics + 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 diff --git a/providers/src/datadog/v00.00.00000/services/logs.yaml b/providers/src/datadog/v00.00.00000/services/logs.yaml new file mode 100644 index 00000000..ef5bfa0a --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/logs.yaml @@ -0,0 +1,1904 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - logs + description: Search your logs and send them to your Datadog platform over HTTP. +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +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 + HTTPLogItem: + additionalProperties: + description: Additional log attributes. + type: string + description: Logs that are sent over HTTP. + properties: + ddsource: + description: |- + The integration name associated with your log: the technology from which the log originated. + When it matches an integration name, Datadog automatically installs the corresponding parsers and facets. + See [reserved attributes](https://docs.datadoghq.com/logs/log_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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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 + 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: + description: |- + Global query options that are used during the query. + Note: you should supply either 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 + 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 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + LogsStorageTier: + default: indexes + description: Specifies storage type as indexes or online-archives + enum: + - indexes + - online-archives + example: indexes + type: string + x-enum-varnames: + - INDEXES + - ONLINE_ARCHIVES + 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 + 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' + 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 + 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 + 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 + 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 + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + 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: + 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' + insert: [] + update: [] + delete: [] + log_search: + id: datadog.logs.log_search + name: log_search + title: Log Search + methods: + list_logs_get: + operation: + $ref: '#/paths/~1api~1v2~1logs~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_logs_get: + operation: + $ref: '#/paths/~1api~1v2~1logs~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/log_search/methods/list_logs_get' + insert: [] + update: [] + delete: [] +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 + - 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 + /api/v2/logs/events: + get: + description: |- + List endpoint returns logs that match a log search query. + [Results are paginated][1]. + + Use this endpoint to see your latest 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: Get a list of logs + tags: + - Logs + x-pagination: + cursorParam: 'page[cursor]' + cursorPath: meta.page.after + limitParam: 'page[limit]' + resultsPath: 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 build complex logs filtering and search. + + **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 + tags: + - Logs + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data diff --git a/providers/src/datadog/v00.00.00000/services/metrics.yaml b/providers/src/datadog/v00.00.00000/services/metrics.yaml new file mode 100644 index 00000000..724cdad4 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/metrics.yaml @@ -0,0 +1,3380 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - metrics + description: |- + The metrics endpoint allows you to: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + MetricTagConfigurationMetricTypes: + default: gauge + description: The metric's type. + enum: + - gauge + - count + - rate + - distribution + example: count + type: string + x-enum-varnames: + - GAUGE + - COUNT + - RATE + - 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 + readOnly: true + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + MetricsAndMetricTagConfigurations: + description: Object for a metrics and metric tag configurations. + oneOf: + - $ref: '#/components/schemas/Metric' + - $ref: '#/components/schemas/MetricTagConfiguration' + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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 + 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 + MetricName: + description: The metric name for this resource. + example: test.metric.latency + type: string + MetricType: + default: metrics + description: The metric resource type. + enum: + - metrics + example: metrics + type: string + x-enum-varnames: + - METRICS + 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 + MetricCustomAggregations: + description: |- + A list of queryable aggregation combinations for a count, rate, or gauge metric. + By default, count and rate metrics require the (time: sum, space: sum) aggregation and + Gauge metrics require the (time: avg, space: avg) aggregation. + Additional time & space combinations are also available: + + - time: avg, space: avg + - time: avg, space: max + - time: avg, space: min + - time: avg, space: sum + - time: count, space: sum + - time: max, space: max + - time: min, space: min + - time: sum, space: avg + - time: sum, space: sum + + Can only be applied to metrics that have a `metric_type` of `count`, `rate`, or `gauge`. + example: + - space: sum + time: sum + - space: sum + time: count + items: + $ref: '#/components/schemas/MetricCustomAggregation' + type: array + 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 + 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 + 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 + 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 + 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 + 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. + format: email + 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 + MetricBulkTagConfigCreateRequest: + description: Wrapper object for a single bulk tag configuration request. + properties: + data: + $ref: '#/components/schemas/MetricBulkTagConfigCreate' + required: + - data + 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 + 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 + tags: + $ref: '#/components/schemas/MetricBulkTagConfigTagNameList' + 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 + 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 + 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 + 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 + 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 + MetricAllTagsResponse: + description: Response object that includes a single metric's indexed tags. + properties: + data: + $ref: '#/components/schemas/MetricAllTags' + readOnly: true + 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 + 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 + MetricEstimateResponse: + description: Response object that includes metric cardinality estimates. + properties: + data: + $ref: '#/components/schemas/MetricEstimate' + type: object + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + MetricVolumesResponse: + description: Response object which includes a single metric's volume. + properties: + data: + $ref: '#/components/schemas/MetricVolumes' + readOnly: true + type: object + MetricVolumes: + description: Possible response objects for a metric's volume. + oneOf: + - $ref: '#/components/schemas/MetricDistinctVolume' + - $ref: '#/components/schemas/MetricIngestedIndexedVolume' + 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 + 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 + 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 + ScalarResponse: + description: A message containing the response to a scalar query. + properties: + attributes: + $ref: '#/components/schemas/ScalarFormulaResponseAtrributes' + type: + $ref: '#/components/schemas/ScalarFormulaResponseType' + 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 + 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. + 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' + 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 + 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 + 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 + example: logs + type: string + x-enum-varnames: + - LOGS + - RUM + 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 + 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 + 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: + description: The maximum number of groups to return. + example: 10 + format: int32 + maximum: 2147483647 + 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 + 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 + TimeseriesResponse: + description: A message containing the response to a timeseries query. + properties: + attributes: + $ref: '#/components/schemas/TimeseriesResponseAttributes' + type: + $ref: '#/components/schemas/TimeseriesFormulaResponseType' + 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 + 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 + TimeseriesFormulaRequestQueries: + description: List of queries to be run and used as inputs to the formulas. + 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 + 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' + 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 + 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 + 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 time series 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 + 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.' + 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.' + 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 + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + 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' + objectKey: $.data + _list_tag_configurations: + operation: + $ref: '#/paths/~1api~1v2~1metrics/get' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_tag_configuration: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tags/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + 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_configurations' + insert: + - $ref: '#/components/x-stackQL-resources/tag_configurations/methods/create_tag_configuration' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/tag_configurations/methods/delete_tag_configuration' + active_metric_configurations: + id: datadog.metrics.active_metric_configurations + name: active_metric_configurations + title: Active Metric Configurations + methods: + 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' + list_active_metric_configurations: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1active-configurations/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_active_metric_configurations: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1active-configurations/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/active_metric_configurations/methods/list_active_metric_configurations' + insert: + - $ref: '#/components/x-stackQL-resources/active_metric_configurations/methods/create_bulk_tags_metrics_configuration' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/active_metric_configurations/methods/delete_bulk_tags_metrics_configuration' + tags_by_metric_names: + id: datadog.metrics.tags_by_metric_names + name: tags_by_metric_names + title: Tags By Metric Names + 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 + _list_tags_by_metric_name: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1all-tags/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/tags_by_metric_names/methods/list_tags_by_metric_name' + insert: [] + update: [] + delete: [] + 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 + _estimate_metrics_output_series: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1estimate/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + tag_configuration_by_name: + id: datadog.metrics.tag_configuration_by_name + name: tag_configuration_by_name + title: Tag Configuration By Name + methods: + list_tag_configuration_by_name: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tags/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_tag_configuration_by_name: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tags/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/tag_configuration_by_name/methods/list_tag_configuration_by_name' + insert: [] + update: [] + delete: [] + volumes_by_metric_name: + id: datadog.metrics.volumes_by_metric_name + name: volumes_by_metric_name + title: Volumes By Metric Name + 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 + _list_volumes_by_metric_name: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1volumes/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/volumes_by_metric_name/methods/list_volumes_by_metric_name' + insert: [] + update: [] + delete: [] + scalar_data: + id: datadog.metrics.scalar_data + name: scalar_data + title: Scalar Data + methods: + query_scalar_data: + operation: + $ref: '#/paths/~1api~1v2~1query~1scalar/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/scalar_data/methods/query_scalar_data' + insert: [] + update: [] + delete: [] + timeseries_data: + id: datadog.metrics.timeseries_data + name: timeseries_data + title: Timeseries Data + methods: + query_timeseries_data: + operation: + $ref: '#/paths/~1api~1v2~1query~1timeseries/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/timeseries_data/methods/query_timeseries_data' + insert: [] + update: [] + delete: [] + metrics: + id: datadog.metrics.metrics + name: metrics + title: Metrics + methods: + submit_metrics: + operation: + $ref: '#/paths/~1api~1v2~1series/post' + response: + mediaType: application/json + openAPIDocKey: '202' + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] +paths: + /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). + 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/MetricTagConfigurationMetricTypes' + - description: |- + Filter distributions with additional percentile + aggregations enabled or disabled. + example: true + in: query + name: 'filter[include_percentiles]' + required: false + schema: + type: boolean + - description: |- + 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: |- + 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 + 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 + /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 + 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 + '/api/v2/metrics/{metric_name}/active-configurations': + get: + description: List tags and aggregations that are actively queried on dashboards and monitors 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 + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: List active tags and aggregations + tags: + - Metrics + '/api/v2/metrics/{metric_name}/all-tags': + get: + description: View indexed tag key-value pairs for a given metric name. + 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 + '/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. + example: 49 + in: query + name: 'filter[hours_ago]' + required: false + schema: + format: int32 + maximum: 2147483647 + type: integer + - description: 'The number of aggregations that a `count`, `rate`, or `gauge` metric is configured to use. Max number of aggregation combos is 9.' + 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.' + 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 + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Tag Configuration Cardinality Estimator + tags: + - Metrics + x-dd-ownership: + notification_configuration: + manual_escalation_policy: '[Points Aggregation] Primary' + prod_high_urgency: '@pagerduty-Points-Aggregation @slack-points-aggr-ops' + prod_low_urgency: '@slack-points-aggr-ops' + slack_support_channel: '#points-aggregation' + staging_high_urgency: '@slack-points-aggr-stg-ops' + staging_low_urgency: '@slack-points-aggr-stg-ops' + team: points-aggregation + team_escalation: '[Points Aggregation] Primary' + x-permission: + operator: OPEN + permissions: [] + '/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 + 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 + 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 + 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 or configure custom aggregations + on any 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 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 + '/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 + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List distinct metric volumes by metric name + tags: + - Metrics + /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-unstable: |- + **Note**: This endpoint is GA for Metrics, Real User Monitoring (RUM), and Cloud Cost Management data sources. + Support for logs is in beta. We are gradually onboarding support for more sources. If you have any + feedback, contact [Datadog Support](https://docs.datadoghq.com/help/). + /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-unstable: |- + **Note**: This endpoint is GA for Metrics, Real User Monitoring (RUM), and Cloud Cost Management data sources. + Support for logs is in beta. We are gradually onboarding support for more sources. If you have any + feedback, contact [Datadog Support](https://docs.datadoghq.com/help/). + /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 diff --git a/providers/src/datadog/v00.00.00000/services/monitors.yaml b/providers/src/datadog/v00.00.00000/services/monitors.yaml new file mode 100644 index 00000000..aaee3613 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/monitors.yaml @@ -0,0 +1,1299 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - monitors + 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/). +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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 + 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 + 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 + 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 + MonitorConfigPolicyCreateData: + description: A monitor configuration policy data. + properties: + attributes: + $ref: '#/components/schemas/MonitorConfigPolicyAttributeCreateRequest' + type: + $ref: '#/components/schemas/MonitorConfigPolicyResourceType' + required: + - type + - attributes + 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 + MonitorConfigPolicyPolicyCreateRequest: + description: Configuration for the policy. + oneOf: + - $ref: '#/components/schemas/MonitorConfigPolicyTagPolicyCreateRequest' + 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 + MonitorConfigPolicyEditRequest: + description: Request for editing a monitor configuration policy. + properties: + data: + $ref: '#/components/schemas/MonitorConfigPolicyEditData' + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + monitor_config_policies: + id: datadog.monitors.monitor_config_policies + name: monitor_config_policies + title: Monitor Config Policies + methods: + list_monitor_config_policies: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1policy/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_monitor_config_policies: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1policy/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _get_monitor_config_policy: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1policy~1{policy_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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/monitor_config_policies/methods/get_monitor_config_policy' + - $ref: '#/components/x-stackQL-resources/monitor_config_policies/methods/list_monitor_config_policies' + insert: + - $ref: '#/components/x-stackQL-resources/monitor_config_policies/methods/create_monitor_config_policy' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/monitor_config_policies/methods/delete_monitor_config_policy' +paths: + /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 + 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 + '/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 + 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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/okta_integration.yaml b/providers/src/datadog/v00.00.00000/services/okta_integration.yaml new file mode 100644 index 00000000..19b9a5ca --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/okta_integration.yaml @@ -0,0 +1,1222 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - okta_integration + description: Okta_Integration +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + OktaAccountType: + default: okta-accounts + description: Account type for an Okta account. + enum: + - okta-accounts + example: okta-accounts + type: string + x-enum-varnames: + - OKTA_ACCOUNTS + 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 + 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 + OktaAccountUpdateRequest: + description: Payload schema when updating an Okta account. + properties: + data: + $ref: '#/components/schemas/OktaAccountUpdateRequestData' + required: + - data + type: object + OktaAccountUpdateRequestData: + description: Data object for updating an Okta account. + properties: + attributes: + $ref: '#/components/schemas/OktaAccountUpdateRequestAttributes' + type: + $ref: '#/components/schemas/OktaAccountType' + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + 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 + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + okta_accounts: + id: datadog.okta_integration.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 + _list_okta_accounts: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1okta~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _get_okta_account: + operation: + $ref: '#/paths/~1api~1v2~1integrations~1okta~1accounts~1{account_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + delete: + - $ref: '#/components/x-stackQL-resources/okta_accounts/methods/delete_okta_account' +paths: + /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 + 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 + '/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 + 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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/opsgenie_integration.yaml b/providers/src/datadog/v00.00.00000/services/opsgenie_integration.yaml new file mode 100644 index 00000000..d688d737 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/opsgenie_integration.yaml @@ -0,0 +1,1248 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - opsgenie_integration + description: Opsgenie_Integration +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + type: string + type: + $ref: '#/components/schemas/OpsgenieServiceType' + required: + - id + - type + - attributes + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + OpsgenieServiceRegionType: + description: The region for the Opsgenie service. + enum: + - us + - eu + - custom + example: us + type: string + x-enum-varnames: + - US + - EU + - CUSTOM + 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 + 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 + 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 + 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 + OpsgenieServiceUpdateRequest: + description: Update request for an Opsgenie service. + properties: + data: + $ref: '#/components/schemas/OpsgenieServiceUpdateData' + required: + - data + 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 + type: string + type: + $ref: '#/components/schemas/OpsgenieServiceType' + required: + - id + - type + - attributes + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + opsgenie_services: + id: datadog.opsgenie_integration.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 + _list_opsgenie_services: + operation: + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1services/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _get_opsgenie_service: + operation: + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1services~1{integration_service_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + delete: + - $ref: '#/components/x-stackQL-resources/opsgenie_services/methods/delete_opsgenie_service' +paths: + /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 + 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 + '/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 + 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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/organizations.yaml b/providers/src/datadog/v00.00.00000/services/organizations.yaml new file mode 100644 index 00000000..e64a4f34 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/organizations.yaml @@ -0,0 +1,932 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - organizations + description: 'Create, edit, and manage your organizations. Read more about [multi-org accounts](https://docs.datadoghq.com/account_management/multi_organization).' +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + idp_metadata: + id: datadog.organizations.idp_metadata + name: idp_metadata + title: Idp Metadata + methods: + uploadidp_metadata: + operation: + $ref: '#/paths/~1api~1v2~1saml_configurations~1idp_metadata/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] +paths: + /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 diff --git a/providers/src/datadog/v00.00.00000/services/powerpack.yaml b/providers/src/datadog/v00.00.00000/services/powerpack.yaml new file mode 100644 index 00000000..95201ff8 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/powerpack.yaml @@ -0,0 +1,1642 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - powerpack + 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. +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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: + 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 + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + powerpacks: + id: datadog.powerpack.powerpacks + name: powerpacks + title: Powerpacks + methods: + list_powerpacks: + operation: + $ref: '#/paths/~1api~1v2~1powerpacks/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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' + objectKey: $.data + _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: [] + delete: + - $ref: '#/components/x-stackQL-resources/powerpacks/methods/delete_powerpack' +paths: + /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 + 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 + '/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 + 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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/processes.yaml b/providers/src/datadog/v00.00.00000/services/processes.yaml new file mode 100644 index 00000000..4a140e7e --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/processes.yaml @@ -0,0 +1,1072 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - processes + description: The processes API allows you to query processes data for your organization. +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + processes: + id: datadog.processes.processes + name: processes + title: Processes + methods: + list_processes: + operation: + $ref: '#/paths/~1api~1v2~1processes/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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: [] +paths: + /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 diff --git a/providers/src/datadog/v00.00.00000/services/restriction_policies.yaml b/providers/src/datadog/v00.00.00000/services/restriction_policies.yaml new file mode 100644 index 00000000..c8493047 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/restriction_policies.yaml @@ -0,0 +1,1098 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - restriction_policies + description: Restriction_Policies +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + RestrictionPolicyResponse: + description: Response containing information about a single restriction policy. + properties: + data: + $ref: '#/components/schemas/RestrictionPolicy' + required: + - data + 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 + RestrictionPolicyType: + default: restriction_policy + description: Restriction policy type. + enum: + - restriction_policy + example: restriction_policy + type: string + x-enum-varnames: + - RESTRICTION_POLICY + 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 + RestrictionPolicyUpdateRequest: + description: Update request for a restriction policy. + properties: + data: + $ref: '#/components/schemas/RestrictionPolicy' + required: + - data + type: object + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + restriction_policies: + id: datadog.restriction_policies.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 + _get_restriction_policy: + operation: + $ref: '#/paths/~1api~1v2~1restriction_policy~1{resource_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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' +paths: + '/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: [] + summary: Delete a restriction policy + tags: + - Restriction Policies + 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: [] + summary: Get a restriction policy + tags: + - Restriction Policies + post: + description: |- + Updates the restriction policy associated with a resource. + + #### Supported resources + Restriction policies can be applied to the following resources: + - Connections: `connection` + - Dashboards: `dashboard` + - Notebooks: `notebook` + - Security Rules: `security-rule` + - Service Level Objectives: `slo` + + #### Supported relations for resources + Resource Type | Supported Relations + -------------------------|-------------------------- + Connections | `viewer`, `editor`, `resolver` + Dashboards | `viewer`, `editor` + Notebooks | `viewer`, `editor` + Security Rules | `viewer`, `editor` + Service Level Objectives | `viewer`, `editor` + operationId: UpdateRestrictionPolicy + parameters: + - $ref: '#/components/parameters/ResourceID' + 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: [] + summary: Update a restriction policy + tags: + - Restriction Policies + x-codegen-request-body-name: body diff --git a/providers/src/datadog/v00.00.00000/services/roles.yaml b/providers/src/datadog/v00.00.00000/services/roles.yaml new file mode 100644 index 00000000..20bdb34f --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/roles.yaml @@ -0,0 +1,2201 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - roles + 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). +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + PermissionsResponse: + description: Payload with API-returned permissions. + properties: + data: + description: Array of permissions. + items: + $ref: '#/components/schemas/Permission' + type: array + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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 + 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 + 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 + 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 + 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 + RelationshipToPermissions: + description: Relationship to multiple permissions objects. + properties: + data: + description: Relationships to permission objects. + items: + $ref: '#/components/schemas/RelationshipToPermissionData' + type: array + type: object + RelationshipToPermissionData: + description: Relationship to permission object. + properties: + id: + description: ID of the permission. + type: string + type: + $ref: '#/components/schemas/PermissionsType' + 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 + 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 + 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' + users: + $ref: '#/components/schemas/RelationshipToUsers' + 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 + 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 + UsersType: + default: users + description: Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + 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 + 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 + 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 + type: object + RoleCloneRequest: + description: Request to create a role by cloning an existing role. + properties: + data: + $ref: '#/components/schemas/RoleClone' + required: + - data + 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 + 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 + 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' + 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 + 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 + 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 + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + permissions: + id: datadog.roles.permissions + name: permissions + title: Permissions + methods: + list_permissions: + operation: + $ref: '#/paths/~1api~1v2~1permissions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_permissions: + operation: + $ref: '#/paths/~1api~1v2~1permissions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/permissions/methods/list_permissions' + insert: [] + update: [] + delete: [] + roles: + id: datadog.roles.roles + name: roles + title: Roles + methods: + list_roles: + operation: + $ref: '#/paths/~1api~1v2~1roles/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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 + _get_role: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + delete: + - $ref: '#/components/x-stackQL-resources/roles/methods/delete_role' + role_permissions: + id: datadog.roles.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 + _list_role_permissions: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1permissions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + add_permission_to_role: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1permissions/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/role_permissions/methods/list_role_permissions' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/role_permissions/methods/remove_permission_from_role' + role_users: + id: datadog.roles.role_users + name: role_users + title: Role Users + methods: + remove_user_from_role: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1users/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + list_role_users: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1users/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/role_users/methods/remove_user_from_role' +paths: + /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 + /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 + 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 + '/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 + '/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: OR(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 + 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 + '/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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/rum.yaml b/providers/src/datadog/v00.00.00000/services/rum.yaml new file mode 100644 index 00000000..0cb447f0 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/rum.yaml @@ -0,0 +1,2004 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - rum + description: Search or aggregate your RUM events over HTTP. +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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' + 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 + 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 + RUMApplicationsResponse: + description: RUM applications response. + properties: + data: + description: RUM applications array response. + items: + $ref: '#/components/schemas/RUMApplicationList' + 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 + 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 + type: + description: 'Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`.' + 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 + 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 + 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 + RUMApplicationCreateAttributes: + description: RUM application creation attributes. + properties: + name: + description: Name of the RUM application. + example: my_new_rum_application + type: string + type: + description: 'Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`.' + 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 + type: + description: 'Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`.' + 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 + RUMApplicationUpdateRequest: + description: RUM application update request. + properties: + data: + $ref: '#/components/schemas/RUMApplicationUpdate' + required: + - data + 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 + RUMApplicationUpdateAttributes: + description: RUM application update attributes. + properties: + name: + description: Name of the RUM application. + example: updated_name_for_my_existing_rum_application + type: string + type: + description: 'Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`.' + 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 + 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 + 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 + RUMEventType: + default: rum + description: Type of the event. + enum: + - rum + example: rum + type: string + x-enum-varnames: + - RUM + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + events: + id: datadog.rum.events + name: events + title: Events + methods: + aggregate_rum_events: + operation: + $ref: '#/paths/~1api~1v2~1rum~1analytics~1aggregate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + list_rum_events: + operation: + $ref: '#/paths/~1api~1v2~1rum~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_rum_events: + operation: + $ref: '#/paths/~1api~1v2~1rum~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + search_rum_events: + operation: + $ref: '#/paths/~1api~1v2~1rum~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/events/methods/list_rum_events' + insert: [] + update: [] + delete: [] + applications: + id: datadog.rum.applications + name: applications + title: Applications + methods: + get_rum_applications: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _get_rum_applications: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications/get' + response: + mediaType: application/json + openAPIDocKey: '200' + create_rum_application: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications/post' + response: + mediaType: application/json + openAPIDocKey: '200' + delete_rum_application: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + get_rum_application: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _get_rum_application: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + update_rum_application: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/applications/methods/get_rum_application' + - $ref: '#/components/x-stackQL-resources/applications/methods/get_rum_applications' + insert: + - $ref: '#/components/x-stackQL-resources/applications/methods/create_rum_application' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/applications/methods/delete_rum_application' +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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Aggregate RUM events + tags: + - RUM + x-codegen-request-body-name: body + /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 + 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 + '/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 + 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 + 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 + /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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get a list of RUM events + tags: + - RUM + x-pagination: + cursorParam: 'page[cursor]' + cursorPath: meta.page.after + limitParam: 'page[limit]' + resultsPath: data + /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' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + 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 diff --git a/providers/src/datadog/v00.00.00000/services/security_monitoring.yaml b/providers/src/datadog/v00.00.00000/services/security_monitoring.yaml new file mode 100644 index 00000000..cc94d949 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/security_monitoring.yaml @@ -0,0 +1,3919 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - security_monitoring + description: Security_Monitoring +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + 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 + 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 + 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 + FindingAttributes: + description: 'The JSON:API attributes of the finding.' + properties: + evaluation: + $ref: '#/components/schemas/FindingEvaluation' + evaluation_changed_at: + $ref: '#/components/schemas/FindingEvaluationChangedAt' + 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' + type: object + FindingID: + description: The unique ID for this finding. + example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: string + FindingType: + default: finding + description: 'The JSON:API type for findings.' + enum: + - finding + example: finding + type: string + x-enum-varnames: + - FINDING + FindingEvaluationChangedAt: + description: The date on which the evaluation for this finding changed (Unix ms). + example: 1678721573794 + format: int64 + minimum: 1 + type: integer + FindingMute: + additionalProperties: false + description: Information about the mute status of this finding. + properties: + 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 + 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 + 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 + 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 + 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 + 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 + GetFindingResponse: + description: The expected response schema when getting a finding. + properties: + data: + $ref: '#/components/schemas/DetailedFinding' + required: + - data + 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 + 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 + 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 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + 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 + SecurityFilterCreateData: + description: Object for a single security filter. + properties: + attributes: + $ref: '#/components/schemas/SecurityFilterCreateAttributes' + type: + $ref: '#/components/schemas/SecurityFilterType' + required: + - type + - attributes + 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 + 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 + SecurityFilterUpdateRequest: + description: The new security filter body. + properties: + data: + $ref: '#/components/schemas/SecurityFilterUpdateData' + required: + - data + 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 + 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 + 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' + ResponseMetaAttributes: + description: Object describing meta attributes of response. + properties: + page: + $ref: '#/components/schemas/Pagination' + type: object + SecurityMonitoringStandardRuleResponse: + description: Rule. + properties: + 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 + 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. + 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/SecurityMonitoringStandardRuleQuery' + type: array + tags: + description: Tags for generated signals. + items: + description: Tag. + type: string + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringRuleTypeRead' + 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 + 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 + 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. + 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 + 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 + SecurityMonitoringRuleCase: + description: Case when signal is generated. + properties: + 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 + 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 on rules. + 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' + type: object + SecurityMonitoringStandardRuleQuery: + description: Query for matching rule. + properties: + aggregation: + $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' + 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: + 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 + readOnly: true + type: boolean + 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 + SecurityMonitoringRuleTypeRead: + description: The rule type. + enum: + - log_detection + - infrastructure_configuration + - workload_security + - cloud_configuration + - application_security + type: string + x-enum-varnames: + - LOG_DETECTION + - INFRASTRUCTURE_CONFIGURATION + - WORKLOAD_SECURITY + - CLOUD_CONFIGURATION + - APPLICATION_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 + SecurityMonitoringSignalRuleType: + description: The rule type. + enum: + - signal_correlation + type: string + x-enum-varnames: + - SIGNAL_CORRELATION + 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 + type: string + x-enum-varnames: + - THRESHOLD + - NEW_VALUE + - ANOMALY_DETECTION + - IMPOSSIBLE_TRAVEL + - HARDCODED + - THIRD_PARTY + 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. + enum: + - 0 + - 60 + - 300 + - 600 + - 900 + - 1800 + - 3600 + - 7200 + format: int32 + type: integer + x-enum-varnames: + - ZERO_MINUTES + - ONE_MINUTE + - FIVE_MINUTES + - TEN_MINUTES + - FIFTEEN_MINUTES + - THIRTY_MINUTES + - ONE_HOUR + - TWO_HOURS + SecurityMonitoringRuleHardcodedEvaluatorType: + description: Hardcoded evaluator type. + enum: + - log4shell + type: string + x-enum-varnames: + - LOG4SHELL + SecurityMonitoringRuleImpossibleTravelOptions: + description: Options on impossible travel rules. + 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. + enum: + - 0 + - 60 + - 300 + - 600 + - 900 + - 1800 + - 3600 + - 7200 + - 10800 + - 21600 + 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 + 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 rules. + properties: + forgetAfter: + $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptionsForgetAfter' + learningDuration: + $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningDuration' + learningMethod: + $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningMethod' + learningThreshold: + $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningThreshold' + 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 + 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 + SecurityMonitoringRuleCreatePayload: + description: Create a new rule. + oneOf: + - $ref: '#/components/schemas/SecurityMonitoringStandardRuleCreatePayload' + - $ref: '#/components/schemas/SecurityMonitoringSignalRuleCreatePayload' + - $ref: '#/components/schemas/CloudConfigurationRuleCreatePayload' + SecurityMonitoringStandardRuleCreatePayload: + description: Create a new 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. + 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 logs which are part of the rule. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' + type: array + tags: + description: Tags for generated signals. + example: + - 'env:prod' + - 'team:security' + items: + description: Tag. + type: string + 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. + 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 + SecurityMonitoringRuleCaseCreate: + description: Case when signal is generated. + properties: + 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 + 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' + required: + - status + type: object + SecurityMonitoringRuleTypeCreate: + description: The rule type. + enum: + - application_security + - log_detection + - workload_security + type: string + x-enum-varnames: + - 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 + 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 + SecurityMonitoringRuleUpdatePayload: + description: Update an existing rule. + properties: + cases: + description: Cases for generating signals. + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCase' + 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 + 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 + tags: + description: Tags for generated signals. + items: + description: Tag. + type: string + type: array + version: + description: The version of the rule being updated. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + type: object + SecurityMonitoringRuleQuery: + description: Query for matching rule. + oneOf: + - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' + - $ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery' + SecurityMonitoringSignalsSort: + description: The sort parameters used for querying security signals. + enum: + - timestamp + - '-timestamp' + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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. + 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 + 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 + SecurityMonitoringSignalIncidentsUpdateData: + description: Data containing the patch for changing the related incidents of a signal. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSignalIncidentsUpdateAttributes' + required: + - attributes + type: object + 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 + SecurityMonitoringSignalStateUpdateRequest: + description: Request body for changing the state of a given security monitoring signal. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateData' + required: + - data + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + 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.' + 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 + ConcurrentModificationResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Concurrent Modification + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + findings: + id: datadog.security_monitoring.findings + name: findings + title: Findings + methods: + list_findings: + operation: + $ref: '#/paths/~1api~1v2~1posture_management~1findings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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 + _get_finding: + operation: + $ref: '#/paths/~1api~1v2~1posture_management~1findings~1{finding_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/findings/methods/get_finding' + - $ref: '#/components/x-stackQL-resources/findings/methods/list_findings' + insert: [] + update: [] + delete: [] + security_filters: + id: datadog.security_monitoring.security_filters + name: security_filters + title: Security Filters + methods: + list_security_filters: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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' + objectKey: $.data + _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/security_filters/methods/get_security_filter' + - $ref: '#/components/x-stackQL-resources/security_filters/methods/list_security_filters' + insert: + - $ref: '#/components/x-stackQL-resources/security_filters/methods/create_security_filter' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/security_filters/methods/delete_security_filter' + security_monitoring_rules: + id: datadog.security_monitoring.security_monitoring_rules + name: security_monitoring_rules + title: Security 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' + 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' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/security_monitoring_rules/methods/get_security_monitoring_rule' + - $ref: '#/components/x-stackQL-resources/security_monitoring_rules/methods/list_security_monitoring_rules' + insert: + - $ref: '#/components/x-stackQL-resources/security_monitoring_rules/methods/create_security_monitoring_rule' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/security_monitoring_rules/methods/delete_security_monitoring_rule' + security_monitoring_signals: + id: datadog.security_monitoring.security_monitoring_signals + name: security_monitoring_signals + title: Security Monitoring Signals + methods: + list_security_monitoring_signals: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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 + _get_security_monitoring_signal: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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/security_monitoring_signals/methods/get_security_monitoring_signal' + - $ref: '#/components/x-stackQL-resources/security_monitoring_signals/methods/list_security_monitoring_signals' + insert: [] + update: [] + delete: [] +paths: + /api/v2/posture_management/findings: + get: + description: | + Get a list of CSPM findings. + + ### 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. + + ### 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 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' + 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_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 + 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 + '/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 + 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 + 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 + /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 + 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 + '/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 + 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 + 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 and to change notifications. + 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 + /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: + - description: The search query for security signals. + example: 'security:attack status:high' + in: query + name: 'filter[query]' + required: false + schema: + type: string + - 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 + - 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 + - description: The order of the security signals in results. + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalsSort' + - 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 + - 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 + 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 + /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 + '/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 + '/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 + '/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 + '/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 diff --git a/providers/src/datadog/v00.00.00000/services/sensitive_data_scanner.yaml b/providers/src/datadog/v00.00.00000/services/sensitive_data_scanner.yaml new file mode 100644 index 00000000..6c5d110e --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/sensitive_data_scanner.yaml @@ -0,0 +1,1931 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - sensitive_data_scanner + description: Sensitive_Data_Scanner +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + SensitiveDataScannerGetConfigResponse: + description: Get all groups response. + properties: + data: + $ref: '#/components/schemas/SensitiveDataScannerGetConfigResponseData' + included: + $ref: '#/components/schemas/SensitiveDataScannerGetConfigIncludedArray' + meta: + $ref: '#/components/schemas/SensitiveDataScannerMeta' + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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: + description: Whether or not scanned events are highlighted in Logs or RUM for the org. + type: boolean + has_multi_pass_enabled: + description: 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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' + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + SensitiveDataScannerStandardPatternsResponseData: + description: List Standard patterns response data. + properties: + data: + $ref: '#/components/schemas/SensitiveDataScannerStandardPatternsResponse' + type: object + SensitiveDataScannerStandardPatternsResponse: + description: List Standard patterns response. + items: + $ref: '#/components/schemas/SensitiveDataScannerStandardPatternsResponseItem' + type: array + 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 + 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: + description: Regex to match. + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + scanning_groups: + id: datadog.sensitive_data_scanner.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' + objectKey: $.data + _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: [] + delete: + - $ref: '#/components/x-stackQL-resources/scanning_groups/methods/delete_scanning_group' + scanning_rules: + id: datadog.sensitive_data_scanner.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: [] + delete: + - $ref: '#/components/x-stackQL-resources/scanning_rules/methods/delete_scanning_rule' + standard_patterns: + id: datadog.sensitive_data_scanner.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 + _list_standard_patterns: + operation: + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config~1standard-patterns/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/standard_patterns/methods/list_standard_patterns' + insert: [] + update: [] + delete: [] +paths: + /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 + 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 + /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 + '/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 + 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 + /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 + '/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 + 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 + /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 diff --git a/providers/src/datadog/v00.00.00000/services/service_accounts.yaml b/providers/src/datadog/v00.00.00000/services/service_accounts.yaml new file mode 100644 index 00000000..f82d4cb6 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/service_accounts.yaml @@ -0,0 +1,1807 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - service_accounts + description: Service_Accounts +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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' + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + RelationshipToPermissions: + description: Relationship to multiple permissions objects. + properties: + data: + description: Relationships to permission objects. + items: + $ref: '#/components/schemas/RelationshipToPermissionData' + type: array + type: object + RelationshipToPermissionData: + description: Relationship to permission object. + properties: + id: + description: ID of the permission. + type: string + type: + $ref: '#/components/schemas/PermissionsType' + 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 + 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' + 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 + 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 + RelationshipToUser: + description: Relationship to user. + properties: + data: + $ref: '#/components/schemas/RelationshipToUserData' + required: + - data + type: object + ApplicationKeyCreateRequest: + description: Request used to create an application key. + properties: + data: + $ref: '#/components/schemas/ApplicationKeyCreateData' + required: + - data + 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 + 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 + 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 + 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 + 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' + 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 + 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 + ApplicationKeyUpdateRequest: + description: Request used to update an application key. + properties: + data: + $ref: '#/components/schemas/ApplicationKeyUpdateData' + required: + - data + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + service_accounts: + id: datadog.service_accounts.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: [] + service_account_application_keys: + id: datadog.service_accounts.service_account_application_keys + name: service_account_application_keys + title: Service Account Application 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' + objectKey: $.data + _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' + objectKey: $.data + _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_application_keys/methods/get_service_account_application_key' + - $ref: '#/components/x-stackQL-resources/service_account_application_keys/methods/list_service_account_application_keys' + insert: + - $ref: '#/components/x-stackQL-resources/service_account_application_keys/methods/create_service_account_application_key' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/service_account_application_keys/methods/delete_service_account_application_key' +paths: + /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 + '/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 + 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 + '/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 + 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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/service_definition.yaml b/providers/src/datadog/v00.00.00000/services/service_definition.yaml new file mode 100644 index 00000000..91557e0e --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/service_definition.yaml @@ -0,0 +1,1994 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - service_definition + description: Service_Definition +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + ServiceDefinitionsListResponse: + description: Create service definitions response. + properties: + data: + description: Data representing service definitions. + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + ServiceDefinitionDataAttributes: + description: Service definition attributes. + properties: + meta: + $ref: '#/components/schemas/ServiceDefinitionMeta' + schema: + $ref: '#/components/schemas/ServiceDefinitionSchema' + 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' + 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 + 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 + 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 + 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 + 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 + ServiceDefinitionV1Contact: + description: Contact information about the service. + properties: + email: + description: Service owner’s email. + example: contact@datadoghq.com + format: email + 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 + 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 + 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 + 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. + enum: + - web + - db + - cache + - function + - browser + - mobile + - custom + example: web + type: string + x-enum-varnames: + - WEB + - DB + - CACHE + - FUNCTION + - BROSWER + - MOBILE + - CUSTOM + 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 + ServiceDefinitionV2Email: + description: Service owner's email. + properties: + contact: + description: Contact value. + example: contact@datadoghq.com + format: email + 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 + ServiceDefinitionV2Dot1Email: + description: Service owner's email. + properties: + contact: + description: Contact value. + example: contact@datadoghq.com + format: email + 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 + 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 + 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 + 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 + ServiceDefinitionV2Dot2OpsgenieRegion: + description: Opsgenie instance region. + enum: + - US + - EU + example: US + type: string + x-enum-varnames: + - US + - EU + 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 + ServiceDefinitionRaw: + description: Service Definition in raw JSON/YAML representation. + example: | + --- + schema-version: v2 + dd-service: my-service + type: string + ServiceDefinitionGetResponse: + description: Get service definition response. + properties: + data: + $ref: '#/components/schemas/ServiceDefinitionData' + type: object + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + service_definitions: + id: datadog.service_definition.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 + _list_service_definitions: + operation: + $ref: '#/paths/~1api~1v2~1services~1definitions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _get_service_definition: + operation: + $ref: '#/paths/~1api~1v2~1services~1definitions~1{service_name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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' +paths: + /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]' + pageOffsetParam: 'page[number]' + resultsPath: data + 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 + '/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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/service_scorecards.yaml b/providers/src/datadog/v00.00.00000/services/service_scorecards.yaml new file mode 100644 index 00000000..f6825f61 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/service_scorecards.yaml @@ -0,0 +1,1593 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - service_scorecards + description: Service_Scorecards +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + RuleId: + description: The unique ID for a scorecard rule. + example: 00000000-0000-beef-0000-000000000000 + type: string + RuleType: + default: rule + description: 'The JSON:API type for scorecard rules.' + enum: + - rule + example: rule + type: string + x-enum-varnames: + - RULE + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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: 00000000-0000-beef-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/ScorecardType' + type: object + ScorecardType: + default: scorecard + description: 'The JSON:API type for scorecard.' + enum: + - scorecard + example: scorecard + type: string + x-enum-varnames: + - SCORECARD + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + BadRequestResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + ForbiddenResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + scorecard_outcomes: + id: datadog.service_scorecards.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' + objectKey: $.data + _list_scorecard_outcomes: + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1outcomes/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + scorecard_rules: + id: datadog.service_scorecards.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' + objectKey: $.data + _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' + 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' +paths: + /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/). + /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 private beta. To request access, fill out this [sign-up form](https://forms.gle/CcEyp1uJmZpxRv8U8), + and we will be in touch. 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 private beta. To request access, fill out this [sign-up form](https://forms.gle/CcEyp1uJmZpxRv8U8), + and we will be in touch. 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 private beta. To request access, fill out this [sign-up form](https://forms.gle/CcEyp1uJmZpxRv8U8), + and we will be in touch. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). diff --git a/providers/src/datadog/v00.00.00000/services/span_metrics.yaml b/providers/src/datadog/v00.00.00000/services/span_metrics.yaml new file mode 100644 index 00000000..1295d6ab --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/span_metrics.yaml @@ -0,0 +1,1287 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - span_metrics + description: Spans_Metrics +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + 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 + 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 + 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 + 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 + SpansMetricUpdateRequest: + description: The new span-based metric body. + properties: + data: + $ref: '#/components/schemas/SpansMetricUpdateData' + required: + - data + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + span_metrics: + id: datadog.span_metrics.span_metrics + name: span_metrics + title: Span Metrics + methods: + list_spans_metrics: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1metrics/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_spans_metrics: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1metrics/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _get_spans_metric: + operation: + $ref: '#/paths/~1api~1v2~1apm~1config~1metrics~1{metric_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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/span_metrics/methods/get_spans_metric' + - $ref: '#/components/x-stackQL-resources/span_metrics/methods/list_spans_metrics' + insert: + - $ref: '#/components/x-stackQL-resources/span_metrics/methods/create_spans_metric' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/span_metrics/methods/delete_spans_metric' +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 + 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 + '/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 + 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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/spans.yaml b/providers/src/datadog/v00.00.00000/services/spans.yaml new file mode 100644 index 00000000..b5c85e1d --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/spans.yaml @@ -0,0 +1,1736 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - spans + description: Search and aggregate your spans from your Datadog platform over HTTP. +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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' + 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 + 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 + 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 + 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 + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + 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 + 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 + 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 + SpansListRequest: + description: The request for a spans list. + properties: + data: + $ref: '#/components/schemas/SpansListRequestData' + type: object + SpansListRequestData: + description: The object containing the query content. + properties: + attributes: + $ref: '#/components/schemas/SpansListRequestAttributes' + type: + $ref: '#/components/schemas/SpansListRequestType' + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + BadRequestResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + ForbiddenResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + 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.' + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + spans: + id: datadog.spans.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: + 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' + insert: [] + update: [] + delete: [] + span_query: + id: datadog.spans.span_query + name: span_query + title: Span Query + methods: + list_spans_get: + operation: + $ref: '#/paths/~1api~1v2~1spans~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _list_spans_get: + operation: + $ref: '#/paths/~1api~1v2~1spans~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/span_query/methods/list_spans_get' + insert: [] + update: [] + delete: [] +paths: + /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' + summary: Aggregate spans + tags: + - Spans + x-codegen-request-body-name: body + /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' + 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' + 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 diff --git a/providers/src/datadog/v00.00.00000/services/synthetics.yaml b/providers/src/datadog/v00.00.00000/services/synthetics.yaml new file mode 100644 index 00000000..fa4f2108 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/synthetics.yaml @@ -0,0 +1,978 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - synthetics + description: |- + Datadog Synthetics uses simulated user requests and browser rendering to help you ensure uptime, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + OnDemandConcurrencyCapResponse: + description: On-demand concurrency cap response. + properties: + data: + $ref: '#/components/schemas/OnDemandConcurrencyCap' + type: object + OnDemandConcurrencyCap: + description: On-demand concurrency cap. + properties: + attributes: + $ref: '#/components/schemas/OnDemandConcurrencyCapAttributes' + type: + $ref: '#/components/schemas/OnDemandConcurrencyCapType' + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + OnDemandConcurrencyCapType: + description: On-demand concurrency cap type. + enum: + - on_demand_concurrency_cap + type: string + x-enum-varnames: + - ON_DEMAND_CONCURRENCY_CAP + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + on_demand_concurrency_caps: + id: datadog.synthetics.on_demand_concurrency_caps + name: on_demand_concurrency_caps + title: On Demand Concurrency Caps + 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 + _get_on_demand_concurrency_cap: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1settings~1on_demand_concurrency_cap/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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_caps/methods/get_on_demand_concurrency_cap' + insert: [] + update: [] + delete: [] +paths: + /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 + 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 diff --git a/providers/src/datadog/v00.00.00000/services/teams.yaml b/providers/src/datadog/v00.00.00000/services/teams.yaml new file mode 100644 index 00000000..3312666d --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/teams.yaml @@ -0,0 +1,2837 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - teams + description: View and manage teams within Datadog. +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + TeamUpdateRequest: + description: Team update request + properties: + data: + $ref: '#/components/schemas/TeamUpdate' + required: + - data + 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 + 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 + color: + description: An identifier for the color representing the team + format: int32 + maximum: 13 + minimum: 0 + 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 + 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 + TeamLinkCreate: + description: Team link create + properties: + attributes: + $ref: '#/components/schemas/TeamLinkAttributes' + type: + $ref: '#/components/schemas/TeamLinkType' + required: + - attributes + - type + 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 + links: + $ref: '#/components/schemas/TeamsResponseLinks' + meta: + $ref: '#/components/schemas/TeamsResponseMeta' + 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 + UserTeamAttributes: + description: Team membership attributes + properties: + role: + $ref: '#/components/schemas/UserTeamRole' + type: object + UserTeamRelationships: + description: Relationship between membership and a user + properties: + 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 + UserTeamRole: + description: The user's role within the team + enum: + - admin + nullable: true + type: string + x-enum-varnames: + - ADMIN + 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 + UserTeamUserType: + default: users + description: User team user type + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + 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' + 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 + UserTeamUpdateRequest: + description: Team membership request + properties: + data: + $ref: '#/components/schemas/UserTeamUpdate' + required: + - data + 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 + TeamPermissionSettingsResponse: + description: Team permission settings response + properties: + data: + description: Team permission settings response data + items: + $ref: '#/components/schemas/TeamPermissionSetting' + type: array + 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 + 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 + 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 + 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 + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + 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 + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + teams: + id: datadog.teams.teams + name: teams + title: Teams + methods: + list_teams: + operation: + $ref: '#/paths/~1api~1v2~1team/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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' + 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 + _get_team: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + delete: + - $ref: '#/components/x-stackQL-resources/teams/methods/delete_team' + team_links: + id: datadog.teams.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 + _get_team_links: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1links/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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 + _get_team_link: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1links~1{link_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + delete: + - $ref: '#/components/x-stackQL-resources/team_links/methods/delete_team_link' + team_memberships: + id: datadog.teams.team_memberships + name: team_memberships + title: Team Memberships + methods: + get_team_memberships: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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: [] + delete: + - $ref: '#/components/x-stackQL-resources/team_memberships/methods/delete_team_membership' + team_permission_settings: + id: datadog.teams.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 + _get_team_permission_settings: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1permission-settings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + 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: [] + user_memberships: + id: datadog.teams.user_memberships + name: user_memberships + title: User Memberships + methods: + get_user_memberships: + operation: + $ref: '#/paths/~1api~1v2~1users~1{user_uuid}~1memberships/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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_memberships/methods/get_user_memberships' + insert: [] + update: [] + delete: [] +paths: + /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 + 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 + '/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 + 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 + 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 + '/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 + 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 + '/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 + 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 + 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 + '/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 + 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 + '/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 + 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 + '/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 + '/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 + '/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 diff --git a/providers/src/datadog/v00.00.00000/services/usage_metering.yaml b/providers/src/datadog/v00.00.00000/services/usage_metering.yaml new file mode 100644 index 00000000..d791b7b8 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/usage_metering.yaml @@ -0,0 +1,2228 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - usage_metering + description: Usage_Metering +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + ActiveBillingDimensionsResponse: + description: Active billing dimensions response. + properties: + data: + $ref: '#/components/schemas/ActiveBillingDimensionsBody' + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + CostByOrgResponse: + description: Chargeback Summary response. + properties: + data: + description: Response containing Chargeback Summary. + items: + $ref: '#/components/schemas/CostByOrg' + type: array + type: object + 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: + 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 + 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 + 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 + 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 + HourlyUsageAttributes: + description: Attributes of hourly usage for a product family for an org for a time period. + properties: + 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 + 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 + 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 + 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: + 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 + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: {} + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + active_billing_dimensions: + id: datadog.usage_metering.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' + objectKey: $.data + _get_active_billing_dimensions: + operation: + $ref: '#/paths/~1api~1v2~1cost_by_tag~1active_billing_dimensions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/active_billing_dimensions/methods/get_active_billing_dimensions' + insert: [] + update: [] + delete: [] + monthly_cost_attributions: + id: datadog.usage_metering.monthly_cost_attributions + name: monthly_cost_attributions + title: Monthly Cost Attributions + 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' + objectKey: $.data + _get_monthly_cost_attribution: + operation: + $ref: '#/paths/~1api~1v2~1cost_by_tag~1monthly_cost_attribution/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monthly_cost_attributions/methods/get_monthly_cost_attribution' + insert: [] + update: [] + delete: [] + usage_application_security_monitorings: + id: datadog.usage_metering.usage_application_security_monitorings + name: usage_application_security_monitorings + title: Usage Application Security Monitorings + methods: + get_usage_application_security_monitoring: + operation: + $ref: '#/paths/~1api~1v2~1usage~1application_security/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + objectKey: $.data + _get_usage_application_security_monitoring: + operation: + $ref: '#/paths/~1api~1v2~1usage~1application_security/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/usage_application_security_monitorings/methods/get_usage_application_security_monitoring' + insert: [] + update: [] + delete: [] + cost_by_orgs: + id: datadog.usage_metering.cost_by_orgs + name: cost_by_orgs + title: Cost By Orgs + methods: + get_cost_by_org: + operation: + $ref: '#/paths/~1api~1v2~1usage~1cost_by_org/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + objectKey: $.data + _get_cost_by_org: + operation: + $ref: '#/paths/~1api~1v2~1usage~1cost_by_org/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/cost_by_orgs/methods/get_cost_by_org' + insert: [] + update: [] + delete: [] + estimated_cost_by_orgs: + id: datadog.usage_metering.estimated_cost_by_orgs + name: estimated_cost_by_orgs + title: Estimated Cost By Orgs + methods: + get_estimated_cost_by_org: + operation: + $ref: '#/paths/~1api~1v2~1usage~1estimated_cost/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + objectKey: $.data + _get_estimated_cost_by_org: + operation: + $ref: '#/paths/~1api~1v2~1usage~1estimated_cost/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/estimated_cost_by_orgs/methods/get_estimated_cost_by_org' + insert: [] + update: [] + delete: [] + historical_cost_by_orgs: + id: datadog.usage_metering.historical_cost_by_orgs + name: historical_cost_by_orgs + title: Historical Cost By Orgs + methods: + get_historical_cost_by_org: + operation: + $ref: '#/paths/~1api~1v2~1usage~1historical_cost/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + objectKey: $.data + _get_historical_cost_by_org: + operation: + $ref: '#/paths/~1api~1v2~1usage~1historical_cost/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/historical_cost_by_orgs/methods/get_historical_cost_by_org' + insert: [] + update: [] + delete: [] + hourly_usages: + id: datadog.usage_metering.hourly_usages + name: hourly_usages + title: Hourly Usages + methods: + get_hourly_usage: + operation: + $ref: '#/paths/~1api~1v2~1usage~1hourly_usage/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + objectKey: $.data + _get_hourly_usage: + operation: + $ref: '#/paths/~1api~1v2~1usage~1hourly_usage/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/hourly_usages/methods/get_hourly_usage' + insert: [] + update: [] + delete: [] + usage_lambda_traced_invocations: + id: datadog.usage_metering.usage_lambda_traced_invocations + name: usage_lambda_traced_invocations + title: Usage Lambda Traced Invocations + 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' + objectKey: $.data + _get_usage_lambda_traced_invocations: + operation: + $ref: '#/paths/~1api~1v2~1usage~1lambda_traced_invocations/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/usage_lambda_traced_invocations/methods/get_usage_lambda_traced_invocations' + insert: [] + update: [] + delete: [] + usage_observability_pipelines: + id: datadog.usage_metering.usage_observability_pipelines + name: usage_observability_pipelines + title: Usage Observability Pipelines + methods: + get_usage_observability_pipelines: + operation: + $ref: '#/paths/~1api~1v2~1usage~1observability_pipelines/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + objectKey: $.data + _get_usage_observability_pipelines: + operation: + $ref: '#/paths/~1api~1v2~1usage~1observability_pipelines/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/usage_observability_pipelines/methods/get_usage_observability_pipelines' + insert: [] + update: [] + delete: [] + projected_costs: + id: datadog.usage_metering.projected_costs + name: projected_costs + title: Projected Costs + methods: + get_projected_cost: + operation: + $ref: '#/paths/~1api~1v2~1usage~1projected_cost/get' + response: + mediaType: application/json;datetime-format=rfc3339 + openAPIDocKey: '200' + objectKey: $.data + _get_projected_cost: + operation: + $ref: '#/paths/~1api~1v2~1usage~1projected_cost/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/projected_costs/methods/get_projected_cost' + insert: [] + update: [] + delete: [] +paths: + /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 17th 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: [] + summary: Get active billing dimensions for cost attribution + tags: + - Usage Metering + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /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 17th 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 + ``` + 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: true + 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: [] + summary: Get Monthly Cost Attribution + tags: + - Usage Metering + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/usage/application_security: + get: + description: |- + Get hourly usage for application security . + **Note:** 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 + /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. + 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 + summary: Get cost across multi-org account + tags: + - Usage Metering + /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. + 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 + 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 + summary: Get estimated cost across your account + tags: + - Usage Metering + /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. + operationId: GetHistoricalCostByOrg + 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.' + 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 + summary: Get historical cost across your account + tags: + - Usage Metering + /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`, + `csm_container_enterprise`, `csm_host_enterprise`, `cspm`, `custom_events`, `cws`, `dbm`, `fargate`, + `infra_hosts`, `incident_management`, `indexed_logs`, `indexed_spans`, `ingested_spans`, `iot`, + `lambda_traced_invocations`, `logs`, `network_flows`, `network_hosts`, `netflow_monitoring`, `observability_pipelines`, + `online_archive`, `profiling`, `rum`, `rum_browser_sessions`, `rum_mobile_sessions`, `sds`, `snmp`, + `synthetics_api`, `synthetics_browser`, `synthetics_mobile`, `synthetics_parallel_testing`, and `timeseries`. + 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: 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 + /api/v2/usage/lambda_traced_invocations: + get: + description: |- + Get hourly usage for lambda traced invocations. + **Note:** 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 + /api/v2/usage/observability_pipelines: + get: + description: |- + Get hourly usage for observability pipelines. + **Note:** 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 + /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 requires the usage_read authorization scope. + 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 + 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 + summary: Get projected cost across your account + tags: + - Usage Metering diff --git a/providers/src/datadog/v00.00.00000/services/users.yaml b/providers/src/datadog/v00.00.00000/services/users.yaml new file mode 100644 index 00000000..432f2d88 --- /dev/null +++ b/providers/src/datadog/v00.00.00000/services/users.yaml @@ -0,0 +1,2010 @@ +openapi: 3.0.0 +servers: + - url: 'https://{dd_site:^(?:api\.datadoghq\.com|us3\.datadoghq\.com|us5\.datadoghq\.com|datadoghq\.eu|ddog-gov\.com)$}/' + variables: + dd_site: + default: api.datadoghq.com + description: The regional site for Datadog customers. +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: 'https://www.datadoghq.com/support/' + version: '1.0' + title: Datadog API V2 Collection - users + description: 'Create, edit, and disable users.' +security: + - apiKeyAuth: [] + appKeyAuth: [] +tags: + - 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.' + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/' + name: APM Retention Filters + - description: Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map group of users to roles in Datadog using attributes + sent from Identity Providers. + name: AuthN Mappings + - description: Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. + name: CI Visibility Pipelines + - description: Search or aggregate your CI Visibility test events over HTTP. + name: CI Visibility Tests + - description: Workload activity security rules for generating events using the Datadog security Agent. + name: Cloud Workload Security + - description: Configure your Datadog Cloudflare integration directly through the Datadog API. + name: Cloudflare Integration + - description: Configure your Datadog Confluent Cloud integration directly through the Datadog API. + name: Confluent Cloud + - description: The Container Images API allows you to query Container Image data for your organization. + name: Container Images + - description: The Containers API allows you to query container data for your organization. + name: Containers + - description: Send events for DORA Metrics to measure and improve software delivery. + 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: |- + **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: |- + The events service allows you to programmatically post events to the event stream + and fetch events from the event stream. Events are limited to 4000 characters. + If an event is sent out with a message containing more than 4000 characters, only the + first 4000 characters are displayed. + name: Events + - description: Configure your Datadog Fastly integration directly through the Datadog API. + 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. + name: IP Allowlist + - description: 'Create, update, delete, and retrieve services which can be associated with incidents.' + 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. + 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. The full list of API and application keys can be + seen on your [Datadog API page](https://app.datadoghq.com/account/settings#api). + 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. + 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 web UI. + externalDocs: + description: Find out more at + url: 'https://docs.datadoghq.com/logs/archives/' + name: Logs Archives + - 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: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) 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: Configure your Datadog Okta integration directly through the Datadog API. + name: Okta Integration + - 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: '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. + name: Powerpack + - description: The processes API allows you to query processes data for your organization. + name: Processes + - description: Search or aggregate your RUM events over HTTP. + 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: |- + Detection rules for generating signals and listing of generated + signals. + name: Security Monitoring + - description: 'Create, update, delete, and retrieve sensitive data scanner groups and rules.' + name: Sensitive Data Scanner + - description: 'Create, edit, and disable service accounts.' + name: Service Accounts + - description: 'API to create, update, retrieve and delete service definitions.' + externalDocs: + url: 'https://docs.datadoghq.com/tracing/service_catalog/' + name: Service Definition + - description: |- + API to create, update scorecard rules and outcomes. + + This feature is currently in BETA. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + name: Service Scorecards + - 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.' + 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, + identify regional issues, and track your application performance. Datadog Synthetics tests come in + two different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + and [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can use Datadog’s API to + manage both test types programmatically. + + For more information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: View and manage teams within Datadog. + 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. + Usage is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + **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. + 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 +components: + schemas: + 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 + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + 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 + 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 + 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 + IncidentAttachmentAttachmentType: + description: The type of the incident attachment attributes. + enum: + - link + - postmortem + example: link + type: string + x-enum-varnames: + - LINK + - POSTMORTEM + IncidentAttachmentRelatedObject: + description: The object related to an incident attachment. + enum: + - users + type: string + x-enum-varnames: + - USERS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + 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 + 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 + UsersType: + default: users + description: Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + 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 + 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 + 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' + ResponseMetaAttributes: + description: Object describing meta attributes of response. + properties: + page: + $ref: '#/components/schemas/Pagination' + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + 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 + RelationshipToPermissions: + description: Relationship to multiple permissions objects. + properties: + data: + description: Relationships to permission objects. + items: + $ref: '#/components/schemas/RelationshipToPermissionData' + type: array + type: object + RelationshipToPermissionData: + description: Relationship to permission object. + properties: + id: + description: ID of the permission. + type: string + type: + $ref: '#/components/schemas/PermissionsType' + type: object + UserCreateRequest: + description: Create a user. + properties: + data: + $ref: '#/components/schemas/UserCreateData' + 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 + 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 + 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 + UserRelationships: + description: Relationships of the user object. + properties: + roles: + $ref: '#/components/schemas/RelationshipToRoles' + type: object + UserUpdateRequest: + description: Update a user. + properties: + data: + $ref: '#/components/schemas/UserUpdateData' + required: + - data + 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 + 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 + PermissionsResponse: + description: Payload with API-returned permissions. + properties: + data: + description: Array of permissions. + items: + $ref: '#/components/schemas/Permission' + type: array + type: object + 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' + 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 + 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' + 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 + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule. + example: 3b5-v82-ns6 + in: path + name: agent_rule_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 + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_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 + 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 + 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 + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + PageNumber: + description: Specific page number to return. + in: query + name: 'page[number]' + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + 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 + ResourceID: + description: 'Identifier, formatted as `type:id`. Supported types: `connection`, `dashboard`, `notebook`, `security-rule`, `slo`.' + 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/scorecard. + in: path + name: rule_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' + 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 + 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 + 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 + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + 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.' + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + create_webhooks: Create webhooks integrations. + 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. + events_read: Read Events data. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: 'Create, view, and manage incidents in Datadog.' + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute hosts. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit and delete individual monitors. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: 'Create, edit, and delete Security Filters.' + security_monitoring_findings_read: View CSPM Findings. + 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. + 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.' + 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. + 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 + callbacks: {} + examples: {} + requestBodies: {} + headers: {} + links: {} + x-stackQL-resources: + invitations: + id: datadog.users.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 + _get_invitation: + operation: + $ref: '#/paths/~1api~1v2~1user_invitations~1{user_invitation_uuid}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/invitations/methods/get_invitation' + insert: [] + update: [] + delete: [] + users: + id: datadog.users.users + name: users + title: Users + methods: + list_users: + operation: + $ref: '#/paths/~1api~1v2~1users/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + _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' + objectKey: $.data + _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: [] + delete: [] + user_organizations: + id: datadog.users.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' + objectKey: $.data + _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: [] + user_permissions: + id: datadog.users.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 + _list_user_permissions: + operation: + $ref: '#/paths/~1api~1v2~1users~1{user_id}~1permissions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/user_permissions/methods/list_user_permissions' + insert: [] + update: [] + delete: [] + vw_users: + name: vw_users + id: datadog.users.vw_users + config: + views: + select: + predicate: sqlDialect == "sqlite3" + ddl: |- + SELECT + id, + JSON_EXTRACT(attributes, '$.name') as name, + JSON_EXTRACT(attributes, '$.email') as email, + JSON_EXTRACT(attributes, '$.handle') as handle, + JSON_EXTRACT(attributes, '$.title') as title, + JSON_EXTRACT(attributes, '$.status') as status, + CASE + WHEN JSON_EXTRACT(attributes, '$.mfa_enabled') = 1 THEN 'true' + ELSE 'false' + END as mfa_enabled, + CASE + WHEN JSON_EXTRACT(attributes, '$.verified') = 1 THEN 'true' + ELSE 'false' + END as verified, + CASE + WHEN JSON_EXTRACT(attributes, '$.disabled') = 1 THEN 'true' + ELSE 'false' + END as disabled, + CASE + WHEN JSON_EXTRACT(attributes, '$.service_account') = 1 THEN 'true' + ELSE 'false' + END as service_account, + JSON_EXTRACT(attributes, '$.icon') as icon, + JSON_EXTRACT(attributes, '$.allowed_login_methods') as allowed_login_methods, + JSON_EXTRACT(attributes, '$.created_at') as created_at, + JSON_EXTRACT(attributes, '$.modified_at') as modified_at + FROM + datadog.users.users + WHERE dd_site = 'us3.datadoghq.com' +paths: + /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 + '/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 + /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 + 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 + '/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 + 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 + 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 + '/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 + '/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 diff --git a/providers/src/homebrew/v00.00.00000/provider.yaml b/providers/src/homebrew/v00.00.00000/provider.yaml new file mode 100644 index 00000000..df3c4857 --- /dev/null +++ b/providers/src/homebrew/v00.00.00000/provider.yaml @@ -0,0 +1,16 @@ +id: homebrew +name: homebrew +version: v00.00.00000 +providerServices: + formula: + id: 'formula:v00.00.00000' + name: formula + preferred: true + service: + $ref: homebrew/v00.00.00000/services/formula.yaml + title: Homebrew Formulae API + version: v00.00.00000 + description: API For Accessing Homebrew Formulae Information. +config: + auth: + type: null_auth diff --git a/providers/src/homebrew/v00.00.00000/services/formula.yaml b/providers/src/homebrew/v00.00.00000/services/formula.yaml new file mode 100644 index 00000000..fc8e4113 --- /dev/null +++ b/providers/src/homebrew/v00.00.00000/services/formula.yaml @@ -0,0 +1,578 @@ +openapi: 3.0.0 +info: + title: Homebrew Formulae API + description: API for accessing Homebrew formulae information. + version: 1.0.0 +servers: + - url: 'https://formulae.brew.sh/api/formula' +paths: + '/{formula_name}.json': + get: + summary: Get formula details + description: Retrieve detailed information about a specific Homebrew formula. + operationId: getFormula + parameters: + - in: path + name: formula_name + required: true + schema: + type: string + description: The name of the formula. + responses: + '200': + description: A JSON object containing the formula details. + content: + application/json: + schema: + $ref: '#/components/schemas/Formula' +components: + schemas: + Formula: + type: object + properties: + name: + type: string + description: The name of the formula. + full_name: + type: string + description: 'The full, qualified name of the formula including the tap name (if applicable).' + tap: + type: string + description: The GitHub repository (tap) where the formula is located. + oldname: + type: string + nullable: true + description: 'Previous name for the formula, if it was renamed.' + oldnames: + type: array + description: All previous names the formula had. + items: + type: string + aliases: + type: array + description: Alternative names or aliases for the formula. + items: + type: string + versioned_formulae: + type: array + description: Other versions of the formula available as separate formulae. + items: + type: string + desc: + type: string + description: | + A short description of the formula. + license: + type: string + description: | + The license under which the formula is distributed. + homepage: + type: string + description: | + URL to the formula's homepage or project page. + versions: + type: object + description: | + The version numbers of the formula, including the stable, head, and bottle versions. + properties: + stable: + type: string + head: + type: string + bottle: + type: boolean + urls: + type: object + description: | + URLs related to the formula, such as the source URL. + properties: + stable: + type: object + properties: + url: + type: string + tag: + type: string + nullable: true + revision: + type: string + nullable: true + using: + type: string + nullable: true + checksum: + type: string + head: + type: object + properties: + url: + type: string + branch: + type: string + nullable: true + using: + type: string + nullable: true + revision: + type: integer + description: | + The package revision number, used for versioning beyond the version number. + version_scheme: + type: integer + description: | + Versioning scheme used by the formula. + bottle: + type: object + description: | + Details about the precompiled binary packages (bottles) for the formula, including URLs and checksums. + additionalProperties: + type: object + properties: + cellar: + type: string + url: + type: string + sha256: + type: string + keg_only: + type: boolean + description: | + Whether the formula is keg-only, meaning it is not symlinked into the Homebrew prefix and can be accessed only by its fully qualified name. + keg_only_reason: + type: string + description: | + The reason why the formula is keg-only, if it is keg-only. + nullable: true + options: + type: array + description: | + Options that can be passed to the formula when installing it. + items: + type: string + build_dependencies: + type: array + description: | + Dependencies required to build the formula from source. + items: + type: string + dependencies: + type: array + description: | + Dependencies required to run the formula. + items: + type: string + test_dependencies: + type: array + description: | + Dependencies required for running the formulas tests. + items: + type: string + recommended_dependencies: + type: array + description: | + Dependencies that are recommended, meaning they are not required to run the formula but are suggested for additional functionality. + items: + type: string + optional_dependencies: + type: array + description: | + Dependencies that are optional, meaning they are not required to run the formula. + items: + type: string + uses_from_macos: + type: array + description: | + Dependencies that are provided by macOS, which the formula can use. + items: + type: string + uses_from_macos_bounds: + type: array + description: | + The minimum and maximum macOS versions that the formula can use. + items: + type: string + requirements: + type: array + description: | + Non-formula requirements for the formula, such as specific hardware or software conditions. + items: + type: string + conflicts_with: + type: array + description: | + Formula names that conflict with this formula, meaning they cannot be installed simultaneously. + items: + type: string + conflicts_with_reasons: + type: array + description: | + Reasons why the formula conflicts with other formulae. + items: + type: string + link_overwrite: + type: array + description: | + File paths that this formula might request to overwrite during installation. + items: + type: string + caveats: + type: string + description: | + Special instructions or warnings about the formula that users should be aware of. + nullable: true + installed: + type: array + description: | + Versions of the formula that are currently installed. + items: + type: object + properties: + version: + type: string + used_options: + type: array + items: + type: string + built_as_bottle: + type: boolean + poured_from_bottle: + type: boolean + time: + type: integer + runtime_dependencies: + type: array + items: + type: object + properties: + full_name: + type: string + version: + type: string + revision: + type: integer + pkg_version: + type: string + declared_directly: + type: boolean + linked_keg: + type: string + description: | + The version of the formula that is currently linked into Homebrews prefix. + pinned: + type: boolean + description: | + Whether the formula is pinned, meaning it is not upgraded when running `brew upgrade`. + outdated: + type: boolean + description: | + Whether the formula is outdated, meaning a newer version is available. + deprecated: + type: boolean + description: | + Whether the formula is deprecated, meaning it is no longer supported or maintained. + deprecation_date: + type: string + description: | + The date on which the formula was deprecated, if it is deprecated. + nullable: true + deprecation_reason: + type: string + description: | + The reason why the formula was deprecated, if it is deprecated. + nullable: true + disabled: + type: boolean + description: | + Whether the formula is disabled, meaning it is not available to install or use. + disable_date: + type: string + description: | + The date on which the formula was disabled, if it is disabled. + nullable: true + disable_reason: + type: string + description: | + The reason why the formula was disabled, if it is disabled. + nullable: true + post_install_defined: + type: boolean + description: | + Whether a post-installation script is defined for the formula. + service: + type: object + description: | + Details if the formula can run as a service or background process. + nullable: true + tap_git_head: + type: string + description: | + The latest commit SHA of the tap repository containing the formula. + ruby_source_path: + type: string + description: | + The file path to the Ruby source code of the formula. + ruby_source_checksum: + type: object + description: | + Checksum details for the Ruby source code of the formula. + properties: + sha256: + type: string + head_dependencies: + type: object + description: | + Dependencies required for installing the HEAD version (directly from the source repository). + properties: + build_dependencies: + type: array + items: + type: string + dependencies: + type: array + items: + type: string + test_dependencies: + type: array + items: + type: string + recommended_dependencies: + type: array + items: + type: string + optional_dependencies: + type: array + items: + type: string + uses_from_macos: + type: array + items: + type: string + uses_from_macos_bounds: + type: array + items: + type: string + variations: + type: object + description: | + Different variations of the formula, potentially for different operating systems or configurations. + additionalProperties: + type: object + properties: + dependencies: + type: array + items: + type: string + head_dependencies: + type: object + properties: + build_dependencies: + type: array + items: + type: string + dependencies: + type: array + items: + type: string + test_dependencies: + type: array + items: + type: string + recommended_dependencies: + type: array + items: + type: string + optional_dependencies: + type: array + items: + type: string + uses_from_macos: + type: array + items: + type: string + uses_from_macos_bounds: + type: array + items: + type: string + analytics: + type: object + description: | + Analytics data related to the formula, such as download counts or build errors. + properties: + install: + type: object + additionalProperties: + type: object + additionalProperties: + type: integer + install_on_request: + type: object + additionalProperties: + type: object + additionalProperties: + type: integer + build_error: + type: object + additionalProperties: + type: object + additionalProperties: + type: integer + generated_date: + type: string + description: | + The date when the formula information was last generated or updated. + format: date + x-stackQL-resources: + formula: + id: homebrew.formula.formula + name: formula + title: Formula + methods: + get_formula: + operation: + $ref: '#/paths/~1{formula_name}.json/get' + response: + mediaType: application/json + openAPIDocKey: '200' + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/formula/methods/get_formula' + insert: [] + update: [] + delete: [] + vw_info: + name: vw_info + id: homebrew.formula.vw_info + config: + views: + select: + predicate: sqlDialect == "sqlite3" + ddl: |- + SELECT + name as formula_name, + full_name, + generated_date, + --desc as description, + homepage, + JSON_EXTRACT(versions, '$.stable') as latest_version, + license, + deprecated, + disabled + FROM + homebrew.formula.formula + WHERE formula_name = 'stackql' + vw_build_errors: + name: vw_build_errors + id: homebrew.formula.vw_build_errors + config: + views: + select: + predicate: sqlDialect == "sqlite3" + ddl: |- + SELECT + name as formula_name, + JSON_EXTRACT(JSON_EXTRACT(analytics, '$.build_error.30d'), '$.' || formula_name) as build_errors_30d + FROM + homebrew.formula.formula + WHERE formula_name = 'stackql' + vw_usage_metrics: + name: vw_usage_metrics + id: homebrew.formula.vw_usage_metrics + config: + views: + select: + predicate: sqlDialect == "sqlite3" + ddl: "SELECT\nname as formula_name,\nJSON_EXTRACT(JSON_EXTRACT(analytics, '$.install.30d'), '$.' || formula_name) as installs_30d,\nJSON_EXTRACT(JSON_EXTRACT(analytics, '$.install.90d'), '$.' || formula_name) as installs_90d,\nJSON_EXTRACT(JSON_EXTRACT(analytics, '$.install.365d'), '$.' || formula_name) as installs_365d,\nJSON_EXTRACT(JSON_EXTRACT(analytics, '$.install_on_request.30d'), '$.' || formula_name) as install_on_requests_30d,\nJSON_EXTRACT(JSON_EXTRACT(analytics, '$.install_on_request.90d'), '$.' || formula_name) as install_on_requests_90d,\nJSON_EXTRACT(JSON_EXTRACT(analytics, '$.install_on_request.365d'), '$.' || formula_name) as install_on_requests_365d\t\nFROM\nhomebrew.formula.formula\nWHERE formula_name = 'stackql'" + vw_dependencies: + name: vw_dependencies + id: homebrew.formula.vw_dependencies + config: + views: + select: + predicate: sqlDialect == "sqlite3" + ddl: |- + SELECT + name as formula_name, + JSON_EXTRACT(dependencies, '$') as dependencies, + JSON_EXTRACT(head_dependencies, '$') as head_dependencies, + JSON_EXTRACT(build_dependencies, '$') as build_dependencies, + JSON_EXTRACT(test_dependencies, '$') as test_dependencies, + JSON_EXTRACT(optional_dependencies, '$') as optional_dependencies, + JSON_EXTRACT(recommended_dependencies, '$') as recommended_dependencies + FROM + homebrew.formula.formula + WHERE formula_name = 'stackql' + vw_conflicts: + name: vw_conflicts + id: homebrew.formula.vw_conflicts + config: + views: + select: + predicate: sqlDialect == "sqlite3" + ddl: |- + SELECT + name as formula_name, + JSON_EXTRACT(conflicts_with, '$') as conflicts_with, + JSON_EXTRACT(conflicts_with_reasons, '$') as conflicts_with_reasons + FROM + homebrew.formula.formula + WHERE formula_name = 'stackql' + vw_lifecycle: + name: vw_lifecycle + id: homebrew.formula.vw_lifecycle + config: + views: + select: + predicate: sqlDialect == "sqlite3" + ddl: |- + SELECT + name as formula_name, + deprecated, + deprecation_date, + deprecation_reason, + disabled, + disable_date, + disable_reason + FROM + homebrew.formula.formula + WHERE formula_name = 'stackql' + vw_urls: + name: vw_urls + id: homebrew.formula.vw_urls + config: + views: + select: + predicate: sqlDialect == "sqlite3" + ddl: |- + SELECT + name as formula_name, + homepage, + JSON_EXTRACT(urls, '$.stable.url') as stable_url, + JSON_EXTRACT(urls, '$.head.url') as head_url, + JSON_EXTRACT(urls, '$.stable.tag') as stable_tag, + JSON_EXTRACT(urls, '$.stable.revision') as stable_revision, + JSON_EXTRACT(urls, '$.stable.using') as stable_using, + JSON_EXTRACT(urls, '$.stable.checksum') as stable_checksum, + JSON_EXTRACT(urls, '$.head.url') as head_branch, + JSON_EXTRACT(urls, '$.head.url') as head_using + FROM + homebrew.formula.formula + WHERE formula_name = 'stackql' + vw_versions: + name: vw_versions + id: homebrew.formula.vw_versions + config: + views: + select: + predicate: sqlDialect == "sqlite3" + ddl: |- + SELECT + name as formula_name, + JSON_EXTRACT(versions, '$.stable') as stable_version, + JSON_EXTRACT(versions, '$.head') as head_version, + CASE + WHEN JSON_EXTRACT(versions, '$.bottle') = 1 THEN 'true' + ELSE 'false' + END as bottle_available + FROM + homebrew.formula.formula + WHERE formula_name = 'stackql'