diff --git a/.apigentools-info b/.apigentools-info
new file mode 100644
index 000000000..27f16cecc
--- /dev/null
+++ b/.apigentools-info
@@ -0,0 +1,16 @@
+{
+ "additional_stamps": [],
+ "info_version": "2",
+ "spec_versions": {
+ "v1": {
+ "apigentools_version": "1.6.6",
+ "regenerated": "2024-03-21 17:06:51.086799",
+ "spec_repo_commit": "57948155"
+ },
+ "v2": {
+ "apigentools_version": "1.6.6",
+ "regenerated": "2024-03-21 17:06:51.103255",
+ "spec_repo_commit": "57948155"
+ }
+ }
+}
\ No newline at end of file
diff --git a/.generator/schemas/v1/openapi.yaml b/.generator/schemas/v1/openapi.yaml
index 25c92065a..3cb57f34d 100644
--- a/.generator/schemas/v1/openapi.yaml
+++ b/.generator/schemas/v1/openapi.yaml
@@ -328,7 +328,7 @@ components:
type: string
message:
description: Message content.
- example: AWS account 12345 has no lambda config to update
+ example: AWS account 12345 has no Lambda config to update
type: string
type: object
AWSLogsAsyncResponse:
@@ -1142,9 +1142,12 @@ components:
is_read_only:
default: false
deprecated: true
- description: Whether this dashboard is read-only. If True, only the author
- and admins can make changes to it. Prefer using `restricted_roles` to
- manage write authorization.
+ description: 'Whether this dashboard is read-only. If True, only the author
+ and admins can make changes to it.
+
+
+ This property is deprecated; please use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/)
+ instead to manage write authorization for individual dashboards.'
example: false
type: boolean
layout_type:
@@ -1165,8 +1168,13 @@ components:
reflow_type:
$ref: '#/components/schemas/DashboardReflowType'
restricted_roles:
- description: A list of role identifiers. Only the author and users associated
+ deprecated: true
+ description: 'A list of role identifiers. Only the author and users associated
with at least one of these roles can edit this dashboard.
+
+
+ This property is deprecated; please use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/)
+ instead to manage write authorization for individual dashboards.'
items:
description: A role UUID.
type: string
@@ -1439,8 +1447,13 @@ components:
description: Dashboard identifier.
type: string
is_read_only:
- description: Whether this dashboard is read-only. If True, only the author
+ deprecated: true
+ description: 'Whether this dashboard is read-only. If True, only the author
and admins can make changes to it.
+
+
+ This property is deprecated; please use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/)
+ instead to manage write authorization for individual dashboards.'
type: boolean
layout_type:
$ref: '#/components/schemas/DashboardLayoutType'
@@ -3194,6 +3207,18 @@ components:
key.'
example: https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL
type: string
+ cloud_run_revision_filters:
+ description: 'Limit the Cloud Run revisions that are pulled into Datadog
+ by using tags.
+
+ Only Cloud Run revision resources that apply to specified filters are
+ imported into Datadog.'
+ example:
+ - $KEY:$VALUE
+ items:
+ description: Cloud Run Filters
+ type: string
+ type: array
errors:
description: An array of errors.
example:
@@ -4058,6 +4083,8 @@ components:
- apm_usm_usage
- appsec_fargate_usage
- appsec_usage
+ - asm_serverless_traced_invocations_usage
+ - asm_serverless_traced_invocations_percentage
- browser_usage
- ci_pipeline_indexed_spans_usage
- ci_test_indexed_spans_usage
@@ -4074,6 +4101,8 @@ components:
- cws_hosts_usage
- dbm_hosts_usage
- dbm_queries_usage
+ - error_tracking_usage
+ - error_tracking_percentage
- estimated_indexed_logs_usage
- estimated_indexed_spans_usage
- estimated_ingested_logs_usage
@@ -4101,6 +4130,7 @@ components:
- ndm_netflow_usage
- npm_host_usage
- obs_pipeline_bytes_usage
+ - obs_pipelines_vcpu_usage
- profiled_container_usage
- profiled_fargate_usage
- profiled_host_usage
@@ -4112,6 +4142,7 @@ components:
- snmp_usage
- universal_service_monitoring_usage
- vuln_management_hosts_usage
+ - workflow_executions_usage
type: string
x-enum-varnames:
- API_USAGE
@@ -4120,6 +4151,8 @@ components:
- APM_USM_USAGE
- APPSEC_FARGATE_USAGE
- APPSEC_USAGE
+ - ASM_SERVERLESS_TRACED_INVOCATIONS_USAGE
+ - ASM_SERVERLESS_TRACED_INVOCATIONS_PERCENTAGE
- BROWSER_USAGE
- CI_PIPELINE_INDEXED_SPANS_USAGE
- CI_TEST_INDEXED_SPANS_USAGE
@@ -4136,6 +4169,8 @@ components:
- CWS_HOSTS_USAGE
- DBM_HOSTS_USAGE
- DBM_QUERIES_USAGE
+ - ERROR_TRACKING_USAGE
+ - ERROR_TRACKING_PERCENTAGE
- ESTIMATED_INDEXED_LOGS_USAGE
- ESTIMATED_INDEXED_SPANS_USAGE
- ESTIMATED_INGESTED_LOGS_USAGE
@@ -4163,6 +4198,7 @@ components:
- NDM_NETFLOW_USAGE
- NPM_HOST_USAGE
- OBS_PIPELINE_BYTES_USAGE
+ - OBS_PIPELINE_VCPU_USAGE
- PROFILED_CONTAINER_USAGE
- PROFILED_FARGATE_USAGE
- PROFILED_HOST_USAGE
@@ -4174,6 +4210,7 @@ components:
- SNMP_USAGE
- UNIVERSAL_SERVICE_MONITORING_USAGE
- VULN_MANAGEMENT_HOSTS_USAGE
+ - WORKFLOW_EXECUTIONS_USAGE
IFrameWidgetDefinition:
description: The iframe widget allows you to embed a portion of any other web
page on your dashboard. Only available on FREE layout dashboards.
@@ -4750,7 +4787,7 @@ components:
content:
$ref: '#/components/schemas/LogContent'
id:
- description: Unique ID of the Log.
+ description: ID of the Log.
example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA
type: string
type: object
@@ -5180,6 +5217,21 @@ components:
type: string
x-enum-varnames:
- CATEGORY_PROCESSOR
+ LogsDailyLimitReset:
+ description: Object containing options to override the default daily limit reset
+ time.
+ properties:
+ reset_time:
+ description: String in `HH:00` format representing the time of day the daily
+ limit should be reset. The hours must be between 00 and 23 (inclusive).
+ example: '14:00'
+ type: string
+ reset_utc_offset:
+ description: String in `(-|+)HH:00` format representing the UTC offset to
+ apply to the given reset time. The hours must be between -12 and +14 (inclusive).
+ example: +02:00
+ type: string
+ type: object
LogsDateRemapper:
description: "As Datadog receives logs, it timestamps them using the value(s)
from any of these default attributes.\n\n - `timestamp`\n - `date`\n -
@@ -5394,6 +5446,16 @@ components:
example: 300000000
format: int64
type: integer
+ daily_limit_reset:
+ $ref: '#/components/schemas/LogsDailyLimitReset'
+ daily_limit_warning_threshold_percentage:
+ description: A percentage threshold of the daily quota at which a Datadog
+ warning event is generated.
+ example: 70
+ format: double
+ maximum: 99.99
+ minimum: 50
+ type: number
exclusion_filters:
description: 'An array of exclusion objects. The logs are tested against
the query of each filter,
@@ -5449,6 +5511,16 @@ components:
example: 300000000
format: int64
type: integer
+ daily_limit_reset:
+ $ref: '#/components/schemas/LogsDailyLimitReset'
+ daily_limit_warning_threshold_percentage:
+ description: A percentage threshold of the daily quota at which a Datadog
+ warning event is generated.
+ example: 70
+ format: double
+ maximum: 99.99
+ minimum: 50
+ type: number
disable_daily_limit:
description: 'If true, sets the `daily_limit` value to null and the index
is not limited on a daily basis (any
@@ -6280,7 +6352,7 @@ components:
description: The metrics' payload.
properties:
series:
- description: A list of time series to submit to Datadog.
+ description: A list of timeseries to submit to Datadog.
example:
- metric: system.load.1
points:
@@ -6333,7 +6405,7 @@ components:
readOnly: true
type: string
pointlist:
- description: List of points of the time series in milliseconds.
+ description: List of points of the timeseries in milliseconds.
example:
- - 1681683300000.0
- 77.62145685254418
@@ -6704,6 +6776,7 @@ components:
- events
- logs
- spans
+ - database_queries
example: rum
type: string
x-enum-varnames:
@@ -6714,6 +6787,7 @@ components:
- EVENTS
- LOGS
- SPANS
+ - DATABASE_QUERIES
MonitorFormulaAndFunctionQueryDefinition:
description: A formula and function query.
oneOf:
@@ -6999,7 +7073,7 @@ components:
description: "A Boolean indicating whether this monitor needs a full window
of data before it\u2019s evaluated.\nWe highly recommend you set this
to `false` for sparse metrics,\notherwise some evaluations are skipped.
- Default is false."
+ Default is false. This setting only applies to\nmetric monitors."
type: boolean
scheduling_options:
$ref: '#/components/schemas/MonitorOptionsSchedulingOptions'
@@ -7700,6 +7774,8 @@ components:
- apm_usm_percentage
- appsec_usage
- appsec_percentage
+ - asm_serverless_traced_invocations_usage
+ - asm_serverless_traced_invocations_percentage
- browser_usage
- browser_percentage
- ci_visibility_itr_usage
@@ -7726,6 +7802,8 @@ components:
- dbm_hosts_usage
- dbm_queries_percentage
- dbm_queries_usage
+ - error_tracking_usage
+ - error_tracking_percentage
- estimated_indexed_logs_usage
- estimated_indexed_logs_percentage
- estimated_ingested_logs_usage
@@ -7752,6 +7830,8 @@ components:
- npm_host_percentage
- obs_pipeline_bytes_usage
- obs_pipeline_bytes_percentage
+ - obs_pipelines_vcpu_usage
+ - obs_pipelines_vcpu_percentage
- profiled_container_usage
- profiled_container_percentage
- profiled_fargate_usage
@@ -7808,6 +7888,8 @@ components:
- ingested_spans_bytes_percentage
- siem_ingested_bytes_usage
- siem_ingested_bytes_percentage
+ - workflow_executions_usage
+ - workflow_executions_percentage
- '*'
type: string
x-enum-varnames:
@@ -7823,6 +7905,8 @@ components:
- APM_USM_PERCENTAGE
- APPSEC_USAGE
- APPSEC_PERCENTAGE
+ - ASM_SERVERLESS_TRACED_INVOCATIONS_USAGE
+ - ASM_SERVERLESS_TRACED_INVOCATIONS_PERCENTAGE
- BROWSER_USAGE
- BROWSER_PERCENTAGE
- CI_VISIBILITY_ITR_USAGE
@@ -7849,6 +7933,8 @@ components:
- DBM_HOSTS_USAGE
- DBM_QUERIES_PERCENTAGE
- DBM_QUERIES_USAGE
+ - ERROR_TRACKING_USAGE
+ - ERROR_TRACKING_PERCENTAGE
- ESTIMATED_INDEXED_LOGS_USAGE
- ESTIMATED_INDEXED_LOGS_PERCENTAGE
- ESTIMATED_INGESTED_LOGS_USAGE
@@ -7875,6 +7961,8 @@ components:
- NPM_HOST_PERCENTAGE
- OBS_PIPELINE_BYTES_USAGE
- OBS_PIPELINE_BYTES_PERCENTAGE
+ - OBS_PIPELINES_VCPU_USAGE
+ - OBS_PIPELINES_VCPU_PERCENTAGE
- PROFILED_CONTAINER_USAGE
- PROFILED_CONTAINER_PERCENTAGE
- PROFILED_FARGATE_USAGE
@@ -7931,6 +8019,8 @@ components:
- INGESTED_SPANS_BYTES_PERCENTAGE
- SIEM_INGESTED_BYTES_USAGE
- SIEM_INGESTED_BYTES_PERCENTAGE
+ - WORKFLOW_EXECUTIONS_USAGE
+ - WORKFLOW_EXECUTIONS_PERCENTAGE
- ALL
MonthlyUsageAttributionValues:
description: Fields in Usage Summary by tag(s).
@@ -7987,6 +8077,16 @@ components:
description: The Application Security Monitoring host usage by tag(s).
format: double
type: number
+ asm_serverless_traced_invocations_percentage:
+ description: The percentage of Application Security Monitoring Serverless
+ traced invocations usage by tag(s).
+ format: double
+ type: number
+ asm_serverless_traced_invocations_usage:
+ description: The Application Security Monitoring Serverless traced invocations
+ usage by tag(s).
+ format: double
+ type: number
browser_percentage:
description: The percentage of synthetic browser test usage by tag(s).
format: double
@@ -8122,6 +8222,14 @@ components:
description: The Database Monitoring queries usage by tag(s).
format: double
type: number
+ error_tracking_percentage:
+ description: The percentage of error tracking events usage by tag(s).
+ format: double
+ type: number
+ error_tracking_usage:
+ description: The error tracking events usage by tag(s).
+ format: double
+ type: number
estimated_indexed_logs_percentage:
description: The percentage of estimated live indexed logs usage by tag(s).
format: double
@@ -8348,6 +8456,15 @@ components:
description: The observability pipeline bytes usage by tag(s).
format: double
type: number
+ obs_pipelines_vcpu_percentage:
+ description: The percentage of observability pipeline per core usage by
+ tag(s).
+ format: double
+ type: number
+ obs_pipelines_vcpu_usage:
+ description: The observability pipeline per core usage by tag(s).
+ format: double
+ type: number
profiled_container_percentage:
description: The percentage of profiled container usage by tag(s).
format: double
@@ -8437,6 +8554,14 @@ components:
description: The Application Vulnerability Management usage by tag(s).
format: double
type: number
+ workflow_executions_percentage:
+ description: The percentage of workflow executions usage by tag(s).
+ format: double
+ type: number
+ workflow_executions_usage:
+ description: The total workflow executions usage by tag(s).
+ format: double
+ type: number
type: object
NoteWidgetDefinition:
description: The notes and links widget is similar to free text widget, but
@@ -10061,7 +10186,7 @@ components:
description: 'The recurrence rules as defined in the iCalendar RFC 5545.
The supported rules for SLO corrections
- are `FREQ`, `INTERVAL`, `COUNT` and `UNTIL`.'
+ are `FREQ`, `INTERVAL`, `COUNT`, `UNTIL` and `BYDAY`.'
example: FREQ=DAILY;INTERVAL=10;COUNT=5
type: string
slo_id:
@@ -10138,7 +10263,7 @@ components:
description: 'The recurrence rules as defined in the iCalendar RFC 5545.
The supported rules for SLO corrections
- are `FREQ`, `INTERVAL`, `COUNT`, and `UNTIL`.'
+ are `FREQ`, `INTERVAL`, `COUNT`, `UNTIL` and `BYDAY`.'
example: FREQ=DAILY;INTERVAL=10;COUNT=5
nullable: true
type: string
@@ -10214,7 +10339,7 @@ components:
description: 'The recurrence rules as defined in the iCalendar RFC 5545.
The supported rules for SLO corrections
- are `FREQ`, `INTERVAL`, `COUNT`, and `UNTIL`.'
+ are `FREQ`, `INTERVAL`, `COUNT`, `UNTIL` and `BYDAY`.'
example: FREQ=DAILY;INTERVAL=10;COUNT=5
type: string
start:
@@ -10244,6 +10369,13 @@ components:
nullable: true
type: string
type: object
+ SLODataSourceQueryDefinition:
+ description: A formula and function query.
+ example:
+ data_source: metrics
+ query: sum:trace.servlet.request.hits{*} by {env}.as_count()
+ oneOf:
+ - $ref: '#/components/schemas/FormulaAndFunctionMetricQueryDefinition'
SLODeleteResponse:
description: A response list of all service level objective deleted.
properties:
@@ -10287,6 +10419,20 @@ components:
- THIRTY_DAYS
- NINETY_DAYS
- ALL
+ SLOFormula:
+ description: A formula that specifies how to combine the results of multiple
+ queries.
+ example:
+ formula: query1 - default_zero(query2)
+ properties:
+ formula:
+ description: The formula string, which is an expression involving named
+ queries.
+ example: query1 - default_zero(query2)
+ type: string
+ required:
+ - formula
+ type: object
SLOHistoryMetrics:
description: 'A `metric` based SLO history response.
@@ -10340,7 +10486,7 @@ components:
- denominator
type: object
SLOHistoryMetricsSeries:
- description: 'A representation of `metric` based SLO time series for the provided
+ description: 'A representation of `metric` based SLO timeseries for the provided
queries.
This is the same response type from `batch_query` endpoint.'
@@ -10461,18 +10607,18 @@ components:
type: string
history:
description: For `monitor` based SLOs, this includes the aggregated history
- as arrays that include time series and uptime data where `0=monitor` is
+ as arrays that include timeseries and uptime data where `0=monitor` is
in `OK` state and `1=monitor` is in `alert` state.
example:
- - 1579212382
- 0
items:
- description: Represents an array time series data.
+ description: Represents an array timeseries data.
example:
- 1579212382
- 0
items:
- description: A time series data point which is a tuple of (timestamp,
+ description: A timeseries data point which is a tuple of (timestamp,
value).
format: double
type: number
@@ -10643,18 +10789,18 @@ components:
type: string
history:
description: For `monitor` based SLOs, this includes the aggregated history
- as arrays that include time series and uptime data where `0=monitor` is
+ as arrays that include timeseries and uptime data where `0=monitor` is
in `OK` state and `1=monitor` is in `alert` state.
example:
- - 1579212382
- 0
items:
- description: Represents an array time series data.
+ description: Represents an array timeseries data.
example:
- 1579212382
- 0
items:
- description: A time series data point which is a tuple of (timestamp,
+ description: A timeseries data point which is a tuple of (timestamp,
value).
format: double
type: number
@@ -11016,6 +11162,8 @@ components:
type: string
query:
$ref: '#/components/schemas/ServiceLevelObjectiveQuery'
+ sli_specification:
+ $ref: '#/components/schemas/SLOSliSpec'
tags:
description: 'A list of tags associated with this service level objective.
@@ -11070,6 +11218,11 @@ components:
format: double
type: number
type: object
+ SLOSliSpec:
+ description: A generic SLI specification. This is currently used for time-slice
+ SLOs only.
+ oneOf:
+ - $ref: '#/components/schemas/SLOTimeSliceSpec'
SLOState:
description: State of the SLO.
enum:
@@ -11170,6 +11323,106 @@ components:
- timeframe
- target
type: object
+ SLOTimeSliceComparator:
+ description: The comparator used to compare the SLI value to the threshold.
+ enum:
+ - '>'
+ - '>='
+ - <
+ - <=
+ example: '>'
+ type: string
+ x-enum-varnames:
+ - GREATER
+ - GREATER_EQUAL
+ - LESS
+ - LESS_EQUAL
+ SLOTimeSliceCondition:
+ description: 'The time-slice condition, composed of 3 parts: 1. the metric timeseries
+ query, 2. the comparator,
+
+ and 3. the threshold.'
+ example:
+ comparator: <
+ query:
+ formulas:
+ - formula: query2/query1
+ queries:
+ - data_source: metrics
+ name: query1
+ query: sum:trace.servlet.request.hits{*} by {env}.as_count()
+ - data_source: metrics
+ name: query1
+ query: sum:trace.servlet.request.errors{*} by {env}.as_count()
+ threshold: 5
+ properties:
+ comparator:
+ $ref: '#/components/schemas/SLOTimeSliceComparator'
+ query:
+ $ref: '#/components/schemas/SLOTimeSliceQuery'
+ threshold:
+ description: The threshold value to which each SLI value will be compared.
+ example: 5
+ format: double
+ type: number
+ required:
+ - comparator
+ - threshold
+ - query
+ type: object
+ SLOTimeSliceQuery:
+ description: The queries and formula used to calculate the SLI value.
+ example:
+ formulas:
+ - formula: query2/query1
+ queries:
+ - data_source: metrics
+ name: query1
+ query: sum:trace.servlet.request.hits{*} by {env}.as_count()
+ - data_source: metrics
+ name: query1
+ query: sum:trace.servlet.request.errors{*} by {env}.as_count()
+ properties:
+ formulas:
+ description: A list that contains exactly one formula, as only a single
+ formula may be used in a time-slice SLO.
+ items:
+ $ref: '#/components/schemas/SLOFormula'
+ maxItems: 1
+ minItems: 1
+ type: array
+ queries:
+ description: A list of queries that are used to calculate the SLI value.
+ items:
+ $ref: '#/components/schemas/SLODataSourceQueryDefinition'
+ type: array
+ required:
+ - formulas
+ - queries
+ type: object
+ SLOTimeSliceSpec:
+ additionalProperties: false
+ description: A time-slice SLI specification.
+ example:
+ time_slice:
+ comparator: <
+ query:
+ formulas:
+ - formula: query2/query1
+ queries:
+ - data_source: metrics
+ name: query1
+ query: sum:trace.servlet.request.hits{*} by {env}.as_count()
+ - data_source: metrics
+ name: query1
+ query: sum:trace.servlet.request.errors{*} by {env}.as_count()
+ threshold: 5
+ properties:
+ time_slice:
+ $ref: '#/components/schemas/SLOTimeSliceCondition'
+ required:
+ - time_slice
+ type: object
SLOTimeframe:
description: The SLO time window options.
enum:
@@ -11189,11 +11442,13 @@ components:
enum:
- metric
- monitor
+ - time_slice
example: metric
type: string
x-enum-varnames:
- METRIC
- MONITOR
+ - TIME_SLICE
SLOTypeNumeric:
description: 'A numeric representation of the type of the service level objective
(`0` for
@@ -11204,12 +11459,14 @@ components:
enum:
- 0
- 1
+ - 2
example: 0
format: int32
type: integer
x-enum-varnames:
- MONITOR
- METRIC
+ - TIME_SLICE
SLOWidgetDefinition:
description: Use the SLO and uptime widget to track your SLOs (Service Level
Objectives) and uptime on screenboards and timeboards.
@@ -12019,6 +12276,8 @@ components:
type: string
query:
$ref: '#/components/schemas/ServiceLevelObjectiveQuery'
+ sli_specification:
+ $ref: '#/components/schemas/SLOSliSpec'
tags:
description: 'A list of tags associated with this service level objective.
@@ -12148,6 +12407,8 @@ components:
type: string
query:
$ref: '#/components/schemas/ServiceLevelObjectiveQuery'
+ sli_specification:
+ $ref: '#/components/schemas/SLOSliSpec'
tags:
description: 'A list of tags associated with this service level objective.
@@ -12683,7 +12944,7 @@ components:
description: Maximum number of graphs to display in the widget.
example: 24
format: int64
- maximum: 100
+ maximum: 500
minimum: 1
type: integer
sort:
@@ -12699,7 +12960,7 @@ components:
description: Manual selection of tags making split graph widget static
items:
$ref: '#/components/schemas/SplitVectorEntry'
- maxItems: 100
+ maxItems: 500
type: array
required:
- split_dimensions
@@ -13029,10 +13290,12 @@ components:
only supporting `http`.
enum:
- http
+ - grpc
example: http
type: string
x-enum-varnames:
- HTTP
+ - GRPC
SyntheticsAPITest:
description: Object containing details about a Synthetic API test.
properties:
@@ -14483,7 +14746,7 @@ components:
- edge.laptop_large
- edge.tablet
- edge.mobile_small
- example: laptop_large
+ example: chrome.laptop_large
type: string
x-enum-varnames:
- LAPTOP_LARGE
@@ -15542,6 +15805,10 @@ components:
description: A protobuf JSON descriptor that needs to be gzipped first then
base64 encoded.
type: string
+ compressedProtoFile:
+ description: A protobuf file that needs to be gzipped first then base64
+ encoded.
+ type: string
dnsServer:
description: DNS server to use for DNS tests.
type: string
@@ -15559,6 +15826,8 @@ components:
host:
description: Host name to perform the test with.
type: string
+ httpVersion:
+ $ref: '#/components/schemas/SyntheticsTestOptionsHTTPVersion'
message:
description: Message to send for UDP or WebSocket tests.
type: string
@@ -16571,7 +16840,7 @@ components:
tags:
$ref: '#/components/schemas/UsageAttributionTagNames'
updated_at:
- description: Shows the the most recent hour in the current months for all
+ description: Shows the the most recent hour in the current month for all
organizations for which all usages were calculated.
type: string
values:
@@ -16668,6 +16937,8 @@ components:
- appsec_fargate_percentage
- estimated_rum_usage_attribution_usage
- estimated_rum_usage_attribution_percentage
+ - asm_serverless_traced_invocations_usage
+ - asm_serverless_traced_invocations_percentage
type: string
x-enum-varnames:
- API_PERCENTAGE
@@ -16706,6 +16977,8 @@ components:
- APPSEC_FARGATE_PERCENTAGE
- ESTIMATED_RUM_USAGE_ATTRIBUTION_USAGE
- ESTIMATED_RUM_USAGE_ATTRIBUTION_PERCENTAGE
+ - ASM_SERVERLESS_TRACED_INVOCATIONS_USAGE
+ - ASM_SERVERLESS_TRACED_INVOCATIONS_PERCENTAGE
UsageAttributionSupportedMetrics:
description: Supported fields for usage attribution requests (valid requests
contain one or more metrics, or `*` for all).
@@ -16756,6 +17029,8 @@ components:
- appsec_fargate_percentage
- estimated_rum_usage_attribution_usage
- estimated_rum_usage_attribution_percentage
+ - asm_serverless_traced_invocations_usage
+ - asm_serverless_traced_invocations_percentage
- '*'
type: string
x-enum-varnames:
@@ -16805,6 +17080,8 @@ components:
- APPSEC_FARGATE_PERCENTAGE
- ESTIMATED_RUM_USAGE_ATTRIBUTION_USAGE
- ESTIMATED_RUM_USAGE_ATTRIBUTION_PERCENTAGE
+ - ASM_SERVERLESS_TRACED_INVOCATIONS_USAGE
+ - ASM_SERVERLESS_TRACED_INVOCATIONS_PERCENTAGE
- ALL
UsageAttributionTagNames:
additionalProperties:
@@ -17879,7 +18156,7 @@ components:
type: array
type: object
UsageLambdaHour:
- description: 'Number of lambda functions and sum of the invocations of all lambda
+ description: 'Number of Lambda functions and sum of the invocations of all Lambda
functions
for each hour for a given organization.'
@@ -17907,8 +18184,8 @@ components:
type: string
type: object
UsageLambdaResponse:
- description: 'Response containing the number of lambda functions and sum of
- the invocations of all lambda functions
+ description: 'Response containing the number of Lambda functions and sum of
+ the invocations of all Lambda functions
for each hour for a given organization.'
properties:
@@ -18495,6 +18772,11 @@ components:
over all hours in the current date all organizations.
format: int64
type: integer
+ apm_devsecops_host_top99p:
+ description: Shows the 99th percentile of all APM DevSecOps hosts over all
+ hours in the current date for the given org.
+ format: int64
+ type: integer
apm_fargate_count_avg:
description: Shows the average of all APM ECS Fargate tasks over all hours
in the current date for all organizations.
@@ -18510,6 +18792,11 @@ components:
Fargate tasks over all hours in the current date for all organizations.
format: int64
type: integer
+ asm_serverless_sum:
+ description: Shows the sum of all Application Security Monitoring Serverless
+ invocations over all hours in the current date for all organizations.
+ format: int64
+ type: integer
audit_logs_lines_indexed_sum:
deprecated: true
description: Shows the sum of audit logs lines indexed over all hours in
@@ -18600,6 +18887,11 @@ components:
given date and given organization.
format: int64
type: integer
+ cloud_cost_management_gcp_host_count_avg:
+ description: Host count average of Cloud Cost Management for GCP for the
+ given date and given organization.
+ format: int64
+ type: integer
cloud_cost_management_host_count_avg:
description: Host count average of Cloud Cost Management for all cloud providers
for the given date and given organization.
@@ -18747,6 +19039,11 @@ components:
over all hours in the current date for all organizations.
format: int64
type: integer
+ error_tracking_events_sum:
+ description: Shows the sum of all Error Tracking events over all hours in
+ the current date for the given org.
+ format: int64
+ type: integer
fargate_tasks_count_avg:
description: Shows the high-watermark of all Fargate tasks over all hours
in the current date for all organizations.
@@ -18757,6 +19054,31 @@ components:
current date for all organizations.
format: int64
type: integer
+ flex_logs_compute_large_avg:
+ description: Shows the average number of Flex Logs Compute Large Instances
+ over all hours in the current date for the given org.
+ format: int64
+ type: integer
+ flex_logs_compute_medium_avg:
+ description: Shows the average number of Flex Logs Compute Medium Instances
+ over all hours in the current date for the given org.
+ format: int64
+ type: integer
+ flex_logs_compute_small_avg:
+ description: Shows the average number of Flex Logs Compute Small Instances
+ over all hours in the current date for the given org.
+ format: int64
+ type: integer
+ flex_logs_compute_xsmall_avg:
+ description: Shows the average number of Flex Logs Compute Extra Small Instances
+ over all hours in the current date for the given org.
+ format: int64
+ type: integer
+ flex_stored_logs_avg:
+ description: Shows the average of all Flex Stored Logs over all hours in
+ the current date for the given org.
+ format: int64
+ type: integer
forwarding_events_bytes_sum:
description: Shows the sum of all log bytes forwarded over all hours in
the current date for all organizations.
@@ -19020,9 +19342,14 @@ components:
over all hours in the current date for the given org.
format: int64
type: integer
+ apm_devsecops_host_top99p:
+ description: Shows the 99th percentile of all APM DevSecOps hosts over all
+ hours in the current date for the given org.
+ format: int64
+ type: integer
apm_fargate_count_avg:
description: Shows the average of all APM ECS Fargate tasks over all hours
- in the current months for the given org.
+ in the current month for the given org.
format: int64
type: integer
apm_host_top99p:
@@ -19032,7 +19359,12 @@ components:
type: integer
appsec_fargate_count_avg:
description: Shows the average of all Application Security Monitoring ECS
- Fargate tasks over all hours in the current months for the given org.
+ Fargate tasks over all hours in the current month for the given org.
+ format: int64
+ type: integer
+ asm_serverless_sum:
+ description: Shows the sum of all Application Security Monitoring Serverless
+ invocations over all hours in the current month for the given org.
format: int64
type: integer
audit_logs_lines_indexed_sum:
@@ -19126,6 +19458,11 @@ components:
given date and given org.
format: int64
type: integer
+ cloud_cost_management_gcp_host_count_avg:
+ description: Host count average of Cloud Cost Management for GCP for the
+ given date and given org.
+ format: int64
+ type: integer
cloud_cost_management_host_count_avg:
description: Host count average of Cloud Cost Management for all cloud providers
for the given date and given org.
@@ -19279,6 +19616,11 @@ components:
queries over all hours in the current month for the given org.
format: int64
type: integer
+ error_tracking_events_sum:
+ description: Shows the sum of all Error Tracking events over all hours in
+ the current date for the given org.
+ format: int64
+ type: integer
fargate_tasks_count_avg:
description: The average task count for Fargate.
format: int64
@@ -19288,6 +19630,31 @@ components:
in the current date for the given org.
format: int64
type: integer
+ flex_logs_compute_large_avg:
+ description: Shows the average number of Flex Logs Compute Large Instances
+ over all hours in the current date for the given org.
+ format: int64
+ type: integer
+ flex_logs_compute_medium_avg:
+ description: Shows the average number of Flex Logs Compute Medium Instances
+ over all hours in the current date for the given org.
+ format: int64
+ type: integer
+ flex_logs_compute_small_avg:
+ description: Shows the average number of Flex Logs Compute Small Instances
+ over all hours in the current date for the given org.
+ format: int64
+ type: integer
+ flex_logs_compute_xsmall_avg:
+ description: Shows the average number of Flex Logs Compute Extra Small Instances
+ over all hours in the current date for the given org.
+ format: int64
+ type: integer
+ flex_stored_logs_avg:
+ description: Shows the average of all Flex Stored Logs over all hours in
+ the current date for the given org.
+ format: int64
+ type: integer
forwarding_events_bytes_sum:
description: Shows the sum of all log bytes forwarded over all hours in
the current date for the given org.
@@ -19550,33 +19917,43 @@ components:
properties:
agent_host_top99p_sum:
description: Shows the 99th percentile of all agent hosts over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
apm_azure_app_service_host_top99p_sum:
description: Shows the 99th percentile of all Azure app services using APM
- over all hours in the current months all organizations.
+ over all hours in the current month all organizations.
+ format: int64
+ type: integer
+ apm_devsecops_host_top99p_sum:
+ description: Shows the 99th percentile of all APM DevSecOps hosts over all
+ hours in the current month for all organizations.
format: int64
type: integer
apm_fargate_count_avg_sum:
description: Shows the average of all APM ECS Fargate tasks over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
apm_host_top99p_sum:
description: Shows the 99th percentile of all distinct APM hosts over all
- hours in the current months for all organizations.
+ hours in the current month for all organizations.
format: int64
type: integer
appsec_fargate_count_avg_sum:
description: Shows the average of all Application Security Monitoring ECS
- Fargate tasks over all hours in the current months for all organizations.
+ Fargate tasks over all hours in the current month for all organizations.
+ format: int64
+ type: integer
+ asm_serverless_agg_sum:
+ description: Shows the sum of all Application Security Monitoring Serverless
+ invocations over all hours in the current months for all organizations.
format: int64
type: integer
audit_logs_lines_indexed_agg_sum:
deprecated: true
description: Shows the sum of all audit logs lines indexed over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
audit_trail_enabled_hwm_sum:
@@ -19586,77 +19963,77 @@ components:
type: integer
avg_profiled_fargate_tasks_sum:
description: Shows the average of all profiled Fargate tasks over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
aws_host_top99p_sum:
description: Shows the 99th percentile of all AWS hosts over all hours in
- the current months for all organizations.
+ the current month for all organizations.
format: int64
type: integer
aws_lambda_func_count:
description: Shows the average of the number of functions that executed
- 1 or more times each hour in the current months for all organizations.
+ 1 or more times each hour in the current month for all organizations.
format: int64
type: integer
aws_lambda_invocations_sum:
description: Shows the sum of all AWS Lambda invocations over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
azure_app_service_top99p_sum:
description: Shows the 99th percentile of all Azure app services over all
- hours in the current months for all organizations.
+ hours in the current month for all organizations.
format: int64
type: integer
azure_host_top99p_sum:
description: Shows the 99th percentile of all Azure hosts over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
billable_ingested_bytes_agg_sum:
description: Shows the sum of all log bytes ingested over all hours in the
- current months for all organizations.
+ current month for all organizations.
format: int64
type: integer
browser_rum_lite_session_count_agg_sum:
description: Shows the sum of all browser lite sessions over all hours in
- the current months for all organizations.
+ the current month for all organizations.
format: int64
type: integer
browser_rum_replay_session_count_agg_sum:
description: Shows the sum of all browser replay sessions over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
browser_rum_units_agg_sum:
description: Shows the sum of all browser RUM units over all hours in the
- current months for all organizations.
+ current month for all organizations.
format: int64
type: integer
ci_pipeline_indexed_spans_agg_sum:
description: Shows the sum of all CI pipeline indexed spans over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
ci_test_indexed_spans_agg_sum:
description: Shows the sum of all CI test indexed spans over all hours in
- the current months for all organizations.
+ the current month for all organizations.
format: int64
type: integer
ci_visibility_itr_committers_hwm_sum:
description: Shows the high-water mark of all CI visibility intelligent
- test runner committers over all hours in the current months for all organizations.
+ test runner committers over all hours in the current month for all organizations.
format: int64
type: integer
ci_visibility_pipeline_committers_hwm_sum:
description: Shows the high-water mark of all CI visibility pipeline committers
- over all hours in the current months for all organizations.
+ over all hours in the current month for all organizations.
format: int64
type: integer
ci_visibility_test_committers_hwm_sum:
description: Shows the high-water mark of all CI visibility test committers
- over all hours in the current months for all organizations.
+ over all hours in the current month for all organizations.
format: int64
type: integer
cloud_cost_management_aws_host_count_avg_sum:
@@ -19669,6 +20046,11 @@ components:
Azure.
format: int64
type: integer
+ cloud_cost_management_gcp_host_count_avg_sum:
+ description: Sum of the host count average for Cloud Cost Management for
+ GCP.
+ format: int64
+ type: integer
cloud_cost_management_host_count_avg_sum:
description: Sum of the host count average for Cloud Cost Management for
all cloud providers.
@@ -19676,12 +20058,12 @@ components:
type: integer
cloud_siem_events_agg_sum:
description: Shows the sum of all Cloud Security Information and Event Management
- events over all hours in the current months for all organizations.
+ events over all hours in the current month for all organizations.
format: int64
type: integer
container_avg_sum:
description: Shows the average of all distinct containers over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
container_excl_agent_avg_sum:
@@ -19691,123 +20073,123 @@ components:
type: integer
container_hwm_sum:
description: Shows the sum of the high-water marks of all distinct containers
- over all hours in the current months for all organizations.
+ over all hours in the current month for all organizations.
format: int64
type: integer
csm_container_enterprise_compliance_count_agg_sum:
description: Shows the sum of all Cloud Security Management Enterprise compliance
- containers over all hours in the current months for all organizations.
+ containers over all hours in the current month for all organizations.
format: int64
type: integer
csm_container_enterprise_cws_count_agg_sum:
description: Shows the sum of all Cloud Security Management Enterprise Cloud
- Workload Security containers over all hours in the current months for
- all organizations.
+ Workload Security containers over all hours in the current month for all
+ organizations.
format: int64
type: integer
csm_container_enterprise_total_count_agg_sum:
description: Shows the sum of all Cloud Security Management Enterprise containers
- over all hours in the current months for all organizations.
+ over all hours in the current month for all organizations.
format: int64
type: integer
csm_host_enterprise_aas_host_count_top99p_sum:
description: Shows the 99th percentile of all Cloud Security Management
- Enterprise Azure app services hosts over all hours in the current months
+ Enterprise Azure app services hosts over all hours in the current month
for all organizations.
format: int64
type: integer
csm_host_enterprise_aws_host_count_top99p_sum:
description: Shows the 99th percentile of all Cloud Security Management
- Enterprise AWS hosts over all hours in the current months for all organizations.
+ Enterprise AWS hosts over all hours in the current month for all organizations.
format: int64
type: integer
csm_host_enterprise_azure_host_count_top99p_sum:
description: Shows the 99th percentile of all Cloud Security Management
- Enterprise Azure hosts over all hours in the current months for all organizations.
+ Enterprise Azure hosts over all hours in the current month for all organizations.
format: int64
type: integer
csm_host_enterprise_compliance_host_count_top99p_sum:
description: Shows the 99th percentile of all Cloud Security Management
- Enterprise compliance hosts over all hours in the current months for all
+ Enterprise compliance hosts over all hours in the current month for all
organizations.
format: int64
type: integer
csm_host_enterprise_cws_host_count_top99p_sum:
description: Shows the 99th percentile of all Cloud Security Management
Enterprise Cloud Workload Security hosts over all hours in the current
- months for all organizations.
+ month for all organizations.
format: int64
type: integer
csm_host_enterprise_gcp_host_count_top99p_sum:
description: Shows the 99th percentile of all Cloud Security Management
- Enterprise GCP hosts over all hours in the current months for all organizations.
+ Enterprise GCP hosts over all hours in the current month for all organizations.
format: int64
type: integer
csm_host_enterprise_total_host_count_top99p_sum:
description: Shows the 99th percentile of all Cloud Security Management
- Enterprise hosts over all hours in the current months for all organizations.
+ Enterprise hosts over all hours in the current month for all organizations.
format: int64
type: integer
cspm_aas_host_top99p_sum:
description: Shows the 99th percentile of all Cloud Security Management
- Pro Azure app services hosts over all hours in the current months for
- all organizations.
+ Pro Azure app services hosts over all hours in the current month for all
+ organizations.
format: int64
type: integer
cspm_aws_host_top99p_sum:
description: Shows the 99th percentile of all Cloud Security Management
- Pro AWS hosts over all hours in the current months for all organizations.
+ Pro AWS hosts over all hours in the current month for all organizations.
format: int64
type: integer
cspm_azure_host_top99p_sum:
description: Shows the 99th percentile of all Cloud Security Management
- Pro Azure hosts over all hours in the current months for all organizations.
+ Pro Azure hosts over all hours in the current month for all organizations.
format: int64
type: integer
cspm_container_avg_sum:
description: Shows the average number of Cloud Security Management Pro containers
- over all hours in the current months for all organizations.
+ over all hours in the current month for all organizations.
format: int64
type: integer
cspm_container_hwm_sum:
description: Shows the sum of the the high-water marks of Cloud Security
- Management Pro containers over all hours in the current months for all
+ Management Pro containers over all hours in the current month for all
organizations.
format: int64
type: integer
cspm_gcp_host_top99p_sum:
description: Shows the 99th percentile of all Cloud Security Management
- Pro GCP hosts over all hours in the current months for all organizations.
+ Pro GCP hosts over all hours in the current month for all organizations.
format: int64
type: integer
cspm_host_top99p_sum:
description: Shows the 99th percentile of all Cloud Security Management
- Pro hosts over all hours in the current months for all organizations.
+ Pro hosts over all hours in the current month for all organizations.
format: int64
type: integer
custom_historical_ts_sum:
description: Shows the average number of distinct historical custom metrics
- over all hours in the current months for all organizations.
+ over all hours in the current month for all organizations.
format: int64
type: integer
custom_live_ts_sum:
description: Shows the average number of distinct live custom metrics over
- all hours in the current months for all organizations.
+ all hours in the current month for all organizations.
format: int64
type: integer
custom_ts_sum:
description: Shows the average number of distinct custom metrics over all
- hours in the current months for all organizations.
+ hours in the current month for all organizations.
format: int64
type: integer
cws_containers_avg_sum:
description: Shows the average of all distinct Cloud Workload Security containers
- over all hours in the current months for all organizations.
+ over all hours in the current month for all organizations.
format: int64
type: integer
cws_host_top99p_sum:
description: Shows the 99th percentile of all Cloud Workload Security hosts
- over all hours in the current months for all organizations.
+ over all hours in the current month for all organizations.
format: int64
type: integer
dbm_host_top99p_sum:
@@ -19821,80 +20203,109 @@ components:
format: int64
type: integer
end_date:
- description: Shows the last date of usage in the current months for all
- organizations.
+ description: Shows the last date of usage in the current month for all organizations.
format: date-time
type: string
+ error_tracking_events_agg_sum:
+ description: Shows the sum of all Error Tracking events over all hours in
+ the current months for all organizations.
+ format: int64
+ type: integer
fargate_tasks_count_avg_sum:
description: Shows the average of all Fargate tasks over all hours in the
- current months for all organizations.
+ current month for all organizations.
format: int64
type: integer
fargate_tasks_count_hwm_sum:
description: Shows the sum of the high-water marks of all Fargate tasks
+ over all hours in the current month for all organizations.
+ format: int64
+ type: integer
+ flex_logs_compute_large_avg_sum:
+ description: Shows the average number of Flex Logs Compute Large Instances
+ over all hours in the current months for all organizations.
+ format: int64
+ type: integer
+ flex_logs_compute_medium_avg_sum:
+ description: Shows the average number of Flex Logs Compute Medium Instances
+ over all hours in the current months for all organizations.
+ format: int64
+ type: integer
+ flex_logs_compute_small_avg_sum:
+ description: Shows the average number of Flex Logs Compute Small Instances
over all hours in the current months for all organizations.
format: int64
type: integer
+ flex_logs_compute_xsmall_avg_sum:
+ description: Shows the average number of Flex Logs Compute Extra Small Instances
+ over all hours in the current months for all organizations.
+ format: int64
+ type: integer
+ flex_stored_logs_avg_sum:
+ description: Shows the average of all Flex Stored Logs over all hours in
+ the current months for all organizations.
+ format: int64
+ type: integer
forwarding_events_bytes_agg_sum:
description: Shows the sum of all logs forwarding bytes over all hours in
- the current months for all organizations (data available as of April 1,
+ the current month for all organizations (data available as of April 1,
2023)
format: int64
type: integer
gcp_host_top99p_sum:
description: Shows the 99th percentile of all GCP hosts over all hours in
- the current months for all organizations.
+ the current month for all organizations.
format: int64
type: integer
heroku_host_top99p_sum:
description: Shows the 99th percentile of all Heroku dynos over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
incident_management_monthly_active_users_hwm_sum:
description: Shows sum of the the high-water marks of incident management
- monthly active users in the current months for all organizations.
+ monthly active users in the current month for all organizations.
format: int64
type: integer
indexed_events_count_agg_sum:
description: Shows the sum of all log events indexed over all hours in the
- current months for all organizations.
+ current month for all organizations.
format: int64
type: integer
infra_host_top99p_sum:
description: Shows the 99th percentile of all distinct infrastructure hosts
- over all hours in the current months for all organizations.
+ over all hours in the current month for all organizations.
format: int64
type: integer
ingested_events_bytes_agg_sum:
description: Shows the sum of all log bytes ingested over all hours in the
- current months for all organizations.
+ current month for all organizations.
format: int64
type: integer
iot_device_agg_sum:
description: Shows the sum of all IoT devices over all hours in the current
- months for all organizations.
+ month for all organizations.
format: int64
type: integer
iot_device_top99p_sum:
description: Shows the 99th percentile of all IoT devices over all hours
- in the current months of all organizations.
+ in the current month of all organizations.
format: int64
type: integer
last_updated:
- description: Shows the the most recent hour in the current months for all
+ description: Shows the the most recent hour in the current month for all
organizations for which all usages were calculated.
format: date-time
type: string
live_indexed_events_agg_sum:
description: Shows the sum of all live logs indexed over all hours in the
- current months for all organizations (data available as of December 1,
+ current month for all organizations (data available as of December 1,
2020).
format: int64
type: integer
live_ingested_bytes_agg_sum:
description: Shows the sum of all live logs bytes ingested over all hours
- in the current months for all organizations (data available as of December
+ in the current month for all organizations (data available as of December
1, 2020).
format: int64
type: integer
@@ -19902,105 +20313,105 @@ components:
$ref: '#/components/schemas/LogsByRetention'
mobile_rum_lite_session_count_agg_sum:
description: Shows the sum of all mobile lite sessions over all hours in
- the current months for all organizations.
+ the current month for all organizations.
format: int64
type: integer
mobile_rum_session_count_agg_sum:
description: Shows the sum of all mobile RUM Sessions over all hours in
- the current months for all organizations.
+ the current month for all organizations.
format: int64
type: integer
mobile_rum_session_count_android_agg_sum:
description: Shows the sum of all mobile RUM Sessions on Android over all
- hours in the current months for all organizations.
+ hours in the current month for all organizations.
format: int64
type: integer
mobile_rum_session_count_flutter_agg_sum:
description: Shows the sum of all mobile RUM Sessions on Flutter over all
- hours in the current months for all organizations.
+ hours in the current month for all organizations.
format: int64
type: integer
mobile_rum_session_count_ios_agg_sum:
description: Shows the sum of all mobile RUM Sessions on iOS over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
mobile_rum_session_count_reactnative_agg_sum:
description: Shows the sum of all mobile RUM Sessions on React Native over
- all hours in the current months for all organizations.
+ all hours in the current month for all organizations.
format: int64
type: integer
mobile_rum_session_count_roku_agg_sum:
description: Shows the sum of all mobile RUM Sessions on Roku over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
mobile_rum_units_agg_sum:
description: Shows the sum of all mobile RUM units over all hours in the
- current months for all organizations.
+ current month for all organizations.
format: int64
type: integer
ndm_netflow_events_agg_sum:
description: Shows the sum of all Network Device Monitoring NetFlow events
- over all hours in the current months for all organizations.
+ over all hours in the current month for all organizations.
format: int64
type: integer
netflow_indexed_events_count_agg_sum:
description: Shows the sum of all Network flows indexed over all hours in
- the current months for all organizations.
+ the current month for all organizations.
format: int64
type: integer
npm_host_top99p_sum:
description: Shows the 99th percentile of all distinct Networks hosts over
- all hours in the current months for all organizations.
+ all hours in the current month for all organizations.
format: int64
type: integer
observability_pipelines_bytes_processed_agg_sum:
description: Sum of all observability pipelines bytes processed over all
- hours in the current months for all organizations.
+ hours in the current month for all organizations.
format: int64
type: integer
online_archive_events_count_agg_sum:
description: Sum of all online archived events over all hours in the current
- months for all organizations.
+ month for all organizations.
format: int64
type: integer
opentelemetry_apm_host_top99p_sum:
description: Shows the 99th percentile of APM hosts reported by the Datadog
exporter for the OpenTelemetry Collector over all hours in the current
- months for all organizations.
+ month for all organizations.
format: int64
type: integer
opentelemetry_host_top99p_sum:
description: Shows the 99th percentile of all hosts reported by the Datadog
exporter for the OpenTelemetry Collector over all hours in the current
- months for all organizations.
+ month for all organizations.
format: int64
type: integer
profiling_aas_count_top99p_sum:
description: Shows the 99th percentile of all profiled Azure app services
- over all hours in the current months for all organizations.
+ over all hours in the current month for all organizations.
format: int64
type: integer
profiling_container_agent_count_avg:
description: Shows the average number of profiled containers over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
profiling_host_count_top99p_sum:
description: Shows the 99th percentile of all profiled hosts over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
rehydrated_indexed_events_agg_sum:
description: Shows the sum of all rehydrated logs indexed over all hours
- in the current months for all organizations (data available as of December
+ in the current month for all organizations (data available as of December
1, 2020).
format: int64
type: integer
rehydrated_ingested_bytes_agg_sum:
description: Shows the sum of all rehydrated logs bytes ingested over all
- hours in the current months for all organizations (data available as of
+ hours in the current month for all organizations (data available as of
December 1, 2020).
format: int64
type: integer
@@ -20011,27 +20422,27 @@ components:
type: integer
rum_session_count_agg_sum:
description: Shows the sum of all browser RUM Lite Sessions over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
rum_total_session_count_agg_sum:
description: Shows the sum of RUM Sessions (browser and mobile) over all
- hours in the current months for all organizations.
+ hours in the current month for all organizations.
format: int64
type: integer
rum_units_agg_sum:
description: Shows the sum of all browser and mobile RUM units over all
- hours in the current months for all organizations.
+ hours in the current month for all organizations.
format: int64
type: integer
sds_apm_scanned_bytes_sum:
description: Sum of all APM bytes scanned with sensitive data scanner in
- the current months for all organizations.
+ the current month for all organizations.
format: int64
type: integer
sds_events_scanned_bytes_sum:
description: Sum of all event stream events bytes scanned with sensitive
- data scanner in the current months for all organizations.
+ data scanner in the current month for all organizations.
format: int64
type: integer
sds_logs_scanned_bytes_sum:
@@ -20041,7 +20452,7 @@ components:
type: integer
sds_rum_scanned_bytes_sum:
description: Sum of all RUM bytes scanned with sensitive data scanner in
- the current months for all organizations.
+ the current month for all organizations.
format: int64
type: integer
sds_total_scanned_bytes_sum:
@@ -20052,37 +20463,37 @@ components:
type: integer
serverless_apps_azure_count_avg_sum:
description: Sum of the average number of Serverless Apps for Azure in the
- current months for all organizations.
+ current month for all organizations.
format: int64
type: integer
serverless_apps_google_count_avg_sum:
description: Sum of the average number of Serverless Apps for Google Cloud
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
serverless_apps_total_count_avg_sum:
description: Sum of the average number of Serverless Apps for Azure and
- Google Cloud in the current months for all organizations.
+ Google Cloud in the current month for all organizations.
format: int64
type: integer
start_date:
- description: Shows the first date of usage in the current months for all
+ description: Shows the first date of usage in the current month for all
organizations.
format: date-time
type: string
synthetics_browser_check_calls_count_agg_sum:
description: Shows the sum of all Synthetic browser tests over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
synthetics_check_calls_count_agg_sum:
description: Shows the sum of all Synthetic API tests over all hours in
- the current months for all organizations.
+ the current month for all organizations.
format: int64
type: integer
synthetics_mobile_test_runs_agg_sum:
description: Shows the sum of Synthetic mobile application tests over all
- hours in the current months for all organizations.
+ hours in the current month for all organizations.
format: int64
type: integer
synthetics_parallel_testing_max_slots_hwm_sum:
@@ -20092,17 +20503,17 @@ components:
type: integer
trace_search_indexed_events_count_agg_sum:
description: Shows the sum of all Indexed Spans indexed over all hours in
- the current months for all organizations.
+ the current month for all organizations.
format: int64
type: integer
twol_ingested_events_bytes_agg_sum:
description: Shows the sum of all ingested APM span bytes over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
universal_service_monitoring_host_top99p_sum:
description: Shows the 99th percentile of all Universal Service Monitoring
- hosts over all hours in the current months for all organizations.
+ hosts over all hours in the current month for all organizations.
format: int64
type: integer
usage:
@@ -20112,17 +20523,17 @@ components:
type: array
vsphere_host_top99p_sum:
description: Shows the 99th percentile of all vSphere hosts over all hours
- in the current months for all organizations.
+ in the current month for all organizations.
format: int64
type: integer
vuln_management_host_count_top99p_sum:
description: Shows the 99th percentile of all Application Vulnerability
- Management hosts over all hours in the current months for all organizations.
+ Management hosts over all hours in the current month for all organizations.
format: int64
type: integer
workflow_executions_usage_agg_sum:
description: Sum of all workflows executed over all hours in the current
- months for all organizations.
+ month for all organizations.
format: int64
type: integer
type: object
@@ -26371,7 +26782,7 @@ paths:
**Notes**:
- Synthetic monitors are created through the Synthetics API. See the [Synthetics
- API] (https://docs.datadoghq.com/api/latest/synthetics/) documentation for
+ API](https://docs.datadoghq.com/api/latest/synthetics/) documentation for
more information.
- Log monitors require an unscoped App Key.
@@ -26678,10 +27089,7 @@ paths:
- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.
- - `#` an integer or decimal number used to set the threshold.
-
-
- **NOTE** Database Monitoring monitors are in alpha on US1.'
+ - `#` an integer or decimal number used to set the threshold.'
operationId: CreateMonitor
requestBody:
content:
@@ -30967,7 +31375,7 @@ paths:
- Usage Metering
/api/v1/usage/aws_lambda:
get:
- description: 'Get hourly usage for lambda.
+ description: 'Get hourly usage for Lambda.
**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).
@@ -31021,7 +31429,7 @@ paths:
appKeyAuth: []
- AuthZ:
- usage_read
- summary: Get hourly usage for lambda
+ summary: Get hourly usage for Lambda
tags:
- Usage Metering
/api/v1/usage/billable-summary:
@@ -33370,9 +33778,9 @@ tags:
- description: 'Configure your Datadog-AWS-Logs integration directly through Datadog
API.
- For more information, see the [AWS integration page](https://docs.datadoghq.com/api/?lang=bash#integration-aws-logs).'
+ For more information, see the [AWS integration page](https://docs.datadoghq.com/integrations/amazon_web_services/#log-collection).'
externalDocs:
- url: https://docs.datadoghq.com/api/?lang=bash#integration-aws-logs
+ url: https://docs.datadoghq.com/integrations/amazon_web_services/#log-collection
name: AWS Logs Integration
- description: "All requests to Datadog\u2019s API must be authenticated.\nRequests
that write data require reporting access and require an `API key`.\nRequests that
@@ -33380,7 +33788,9 @@ tags:
All Datadog API clients are configured by default to consume Datadog US site APIs.\nIf
you are on the Datadog EU site, set the environment variable `DATADOG_HOST` to\n`https://api.datadoghq.eu`
or override this value directly when creating your client.\n\n[Manage your account\u2019s
- API and application keys](https://app.datadoghq.com/account/settings#api)."
+ API and application keys](https://app.datadoghq.com/organization-settings/) in
+ Datadog, and see the [API and Application Keys page](https://docs.datadoghq.com/account_management/api-app-keys/)
+ in the documentation."
name: Authentication
- description: 'Configure your Datadog-Azure integration directly through the Datadog
API.
@@ -33396,10 +33806,9 @@ tags:
organization.'
name: Dashboard Lists
x-deprecated: true
-- description: 'Interact with your dashboard lists through the API to make it easier
- to organize,
-
- find, and share all of your dashboards with your team and organization.'
+- description: Manage all your dashboards, as well as access to your shared dashboards,
+ through the API. See the [Dashboards page](https://docs.datadoghq.com/dashboards/)
+ for more information.
name: Dashboards
- description: '[Downtiming](https://docs.datadoghq.com/monitors/notify/downtimes)
gives
@@ -33410,15 +33819,11 @@ tags:
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
+- description: 'The Event Management API allows you to programmatically post events
+ to the Events Explorer
- first 4000 characters are displayed.'
+ and fetch events from the Events Explorer. See the [Event Management page](https://docs.datadoghq.com/service_management/events/)
+ for more information.'
name: Events
- description: 'Configure your Datadog-Google Cloud Platform (GCP) integration directly
@@ -33426,7 +33831,9 @@ tags:
externalDocs:
url: https://docs.datadoghq.com/integrations/google_cloud_platform
name: GCP Integration
-- description: Get information about your live hosts in Datadog.
+- description: Get information about your infrastructure hosts in Datadog, and mute
+ or unmute any notifications from your hosts. See the [Infrastructure page](https://docs.datadoghq.com/infrastructure/)
+ for more information.
name: Hosts
- description: Get a list of IP prefixes belonging to Datadog.
name: IP Ranges
@@ -33443,6 +33850,7 @@ tags:
url: https://docs.datadoghq.com/account_management/api-app-keys/
name: Key Management
- description: Search your logs and send them to your Datadog platform over HTTP.
+ See the [Log Management page](https://docs.datadoghq.com/logs/) for more information.
name: Logs
- description: 'Manage configuration of [log indexes](https://docs.datadoghq.com/logs/indexes/).
@@ -33473,7 +33881,8 @@ tags:
A graph can only contain a set number of points\nand as the timeframe over which
a metric is viewed increases,\naggregation between points occurs to stay below
that set number.\n\nThe Post, Patch, and Delete `manage_tags` API methods can
- only be performed by\na user who has the `Manage Tags for Metrics` permission."
+ only be performed by\na user who has the `Manage Tags for Metrics` permission.\n\nSee
+ the [Metrics page](https://docs.datadoghq.com/metrics/) for more information."
name: Metrics
- description: '[Monitors](https://docs.datadoghq.com/monitors) allow you to watch
a metric or check that you care about and
@@ -33509,9 +33918,9 @@ tags:
externalDocs:
url: https://docs.datadoghq.com/integrations/pagerduty/
name: PagerDuty Integration
-- description: 'Detection rules for generating signals and listing of generated
-
- signals.'
+- description: Create and manage your security rules, signals, filters, and more.
+ See the [Datadog Security page](https://docs.datadoghq.com/security/) for more
+ information.
name: Security Monitoring
- description: 'The service check endpoint allows you to post check statuses for use
with monitors.
@@ -33528,18 +33937,18 @@ tags:
an OK status.
- - [Read more about Service Check monitors.][1]
+ - [Read more about Service Check monitors][1].
- - [Read more about Process Check monitors.][2]
+ - [Read more about Process Check monitors][2].
- - [Read more about Network Check monitors.][3]
+ - [Read more about Network monitors][3].
- - [Read more about Custom Check monitors.][4]
+ - [Read more about Custom Check monitors][4].
- - [Read more about Service Check and status codes.][5]
+ - [Read more about Service Checks and status codes][5].
- [1]: https://docs.datadoghq.com/monitors/create/types/host/?tab=checkalert
+ [1]: https://docs.datadoghq.com/monitors/types/service_check/
[2]: https://docs.datadoghq.com/monitors/create/types/process_check/?tab=checkalert
@@ -33553,7 +33962,8 @@ tags:
from negatively impacting\nyour SLO\u2019s status and error budget. You can use
Status Corrections for various purposes, such\nas removing planned maintenance
windows, non-business hours, or other time periods that do\nnot correspond to
- genuine issues."
+ genuine issues. See [SLO status corrections](https://docs.datadoghq.com/service_management/service_level_objectives/#slo-status-corrections)
+ for more information."
name: Service Level Objective Corrections
- description: '[Service Level Objectives](https://docs.datadoghq.com/monitors/service_level_objectives/#configuration)
@@ -33603,9 +34013,7 @@ tags:
users, feed, chef, puppet, git, bitbucket, fabric, capistrano, etc.
- Read more about tags on the dedicated
-
- [documentation page](https://docs.datadoghq.com/tagging).'
+ Read more about tags on [Getting Started with Tags](https://docs.datadoghq.com/getting_started/tagging/).'
name: Tags
- description: 'The usage metering API allows you to get hourly, daily, and
@@ -33623,7 +34031,9 @@ tags:
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.'
+ and up to two months of hourly usage data for a single organization in one request.
+
+ Learn more on the [usage details documentation](https://docs.datadoghq.com/account_management/billing/usage_details/).'
externalDocs:
description: Find out more at
url: https://docs.datadoghq.com/account_management/billing/usage_details/
@@ -33635,10 +34045,9 @@ tags:
- description: 'Configure your Datadog-Webhooks integration directly through the Datadog
API.
- For more information about the Datadog-Webhooks integration,
-
- see the [integration page](https://docs.datadoghq.com/integrations/webhooks).'
+ See the [Webhooks integration page](https://docs.datadoghq.com/integrations/webhooks)
+ for more information.'
externalDocs:
url: https://docs.datadoghq.com/integrations/webhooks
name: Webhooks Integration
-x-group-parameters: true
\ No newline at end of file
+x-group-parameters: true
diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml
index edf7336b3..800cc831f 100644
--- a/.generator/schemas/v2/openapi.yaml
+++ b/.generator/schemas/v2/openapi.yaml
@@ -151,6 +151,21 @@ components:
required: true
schema:
type: string
+ CaseIDPathParameter:
+ description: Case's UUID or key
+ example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504
+ in: path
+ name: case_id
+ required: true
+ schema:
+ type: string
+ CaseSortableFieldParameter:
+ description: Specify which field to sort
+ in: query
+ name: sort[field]
+ required: false
+ schema:
+ $ref: '#/components/schemas/CaseSortableField'
CloudAccountID:
description: Cloud Account id.
in: path
@@ -180,6 +195,13 @@ components:
required: true
schema:
type: string
+ CustomDestinationId:
+ description: The ID of the custom destination.
+ in: path
+ name: custom_destination_id
+ required: true
+ schema:
+ type: string
FastlyAccountID:
description: Fastly Account id.
in: path
@@ -381,6 +403,14 @@ components:
example: 10
format: int64
type: integer
+ ProjectIDPathParameter:
+ description: Project UUID
+ example: e555e290-ed65-49bd-ae18-8acbfcf18db7
+ in: path
+ name: project_id
+ required: true
+ schema:
+ type: string
ResourceID:
description: 'Identifier, formatted as `type:id`. Supported types: `connection`,
`dashboard`, `notebook`, `security-rule`, `slo`.'
@@ -432,6 +462,13 @@ components:
required: true
schema:
type: string
+ SecurityMonitoringSuppressionID:
+ description: The ID of the suppression rule
+ in: path
+ name: suppression_id
+ required: true
+ schema:
+ type: string
SensitiveDataScannerGroupID:
description: The ID of a group of rules.
in: path
@@ -832,6 +869,11 @@ components:
type: string
x-enum-varnames:
- BILLING_DIMENSIONS
+ ApiID:
+ description: API identifier.
+ example: 90646597-5fdb-4a17-a240-647003f8c028
+ format: uuid
+ type: string
ApmRetentionFilterType:
default: apm_retention_filter
description: The type of the resource.
@@ -2004,7 +2046,8 @@ components:
type: number
type: object
CIAppAggregateSort:
- description: A sort rule.
+ description: A sort rule. The `aggregation` field is required when `type` is
+ `measure`.
example:
aggregation: count
order: asc
@@ -3320,6 +3363,345 @@ components:
from the other indexes
type: string
type: object
+ Case:
+ description: A case
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CaseAttributes'
+ id:
+ description: Case's identifier
+ example: aeadc05e-98a8-11ec-ac2c-da7ad0900001
+ type: string
+ relationships:
+ $ref: '#/components/schemas/CaseRelationships'
+ type:
+ $ref: '#/components/schemas/CaseResourceType'
+ required:
+ - id
+ - type
+ - attributes
+ type: object
+ Case3rdPartyTicketStatus:
+ default: IN_PROGRESS
+ description: Case status
+ enum:
+ - IN_PROGRESS
+ - COMPLETED
+ - FAILED
+ example: COMPLETED
+ readOnly: true
+ type: string
+ x-enum-varnames:
+ - IN_PROGRESS
+ - COMPLETED
+ - FAILED
+ CaseAssign:
+ description: Case assign
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CaseAssignAttributes'
+ type:
+ $ref: '#/components/schemas/CaseResourceType'
+ required:
+ - attributes
+ - type
+ type: object
+ CaseAssignAttributes:
+ description: Case assign attributes
+ properties:
+ assignee_id:
+ description: Assignee's UUID
+ example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504
+ type: string
+ required:
+ - assignee_id
+ type: object
+ CaseAssignRequest:
+ description: Case assign request
+ properties:
+ data:
+ $ref: '#/components/schemas/CaseAssign'
+ required:
+ - data
+ type: object
+ CaseAttributes:
+ description: Case attributes
+ properties:
+ archived_at:
+ description: Timestamp of when the case was archived
+ format: date-time
+ nullable: true
+ readOnly: true
+ type: string
+ closed_at:
+ description: Timestamp of when the case was closed
+ format: date-time
+ nullable: true
+ readOnly: true
+ type: string
+ created_at:
+ description: Timestamp of when the case was created
+ format: date-time
+ readOnly: true
+ type: string
+ description:
+ description: Description
+ type: string
+ jira_issue:
+ $ref: '#/components/schemas/JiraIssue'
+ key:
+ description: Key
+ example: CASEM-4523
+ type: string
+ modified_at:
+ description: Timestamp of when the case was last modified
+ format: date-time
+ nullable: true
+ readOnly: true
+ type: string
+ priority:
+ $ref: '#/components/schemas/CasePriority'
+ service_now_ticket:
+ $ref: '#/components/schemas/ServiceNowTicket'
+ status:
+ $ref: '#/components/schemas/CaseStatus'
+ title:
+ description: Title
+ example: Memory leak investigation on API
+ type: string
+ type:
+ $ref: '#/components/schemas/CaseType'
+ type: object
+ CaseCreate:
+ description: Case creation data
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CaseCreateAttributes'
+ relationships:
+ $ref: '#/components/schemas/CaseCreateRelationships'
+ type:
+ $ref: '#/components/schemas/CaseResourceType'
+ required:
+ - attributes
+ - type
+ type: object
+ CaseCreateAttributes:
+ description: Case creation attributes
+ properties:
+ description:
+ description: Description
+ type: string
+ priority:
+ $ref: '#/components/schemas/CasePriority'
+ title:
+ description: Title
+ example: Security breach investigation
+ type: string
+ type:
+ $ref: '#/components/schemas/CaseType'
+ required:
+ - title
+ - type
+ type: object
+ CaseCreateRelationships:
+ description: Relationships formed with the case on creation
+ properties:
+ assignee:
+ $ref: '#/components/schemas/NullableUserRelationship'
+ project:
+ $ref: '#/components/schemas/ProjectRelationship'
+ required:
+ - project
+ type: object
+ CaseCreateRequest:
+ description: Case create request
+ properties:
+ data:
+ $ref: '#/components/schemas/CaseCreate'
+ required:
+ - data
+ type: object
+ CaseEmpty:
+ description: Case empty request data
+ properties:
+ type:
+ $ref: '#/components/schemas/CaseResourceType'
+ required:
+ - type
+ type: object
+ CaseEmptyRequest:
+ description: Case empty request
+ properties:
+ data:
+ $ref: '#/components/schemas/CaseEmpty'
+ required:
+ - data
+ type: object
+ CasePriority:
+ default: NOT_DEFINED
+ description: Case priority
+ enum:
+ - NOT_DEFINED
+ - P1
+ - P2
+ - P3
+ - P4
+ - P5
+ example: NOT_DEFINED
+ type: string
+ x-enum-varnames:
+ - NOT_DEFINED
+ - P1
+ - P2
+ - P3
+ - P4
+ - P5
+ CaseRelationships:
+ description: Resources related to a case
+ properties:
+ assignee:
+ $ref: '#/components/schemas/NullableUserRelationship'
+ created_by:
+ $ref: '#/components/schemas/NullableUserRelationship'
+ modified_by:
+ $ref: '#/components/schemas/NullableUserRelationship'
+ project:
+ $ref: '#/components/schemas/ProjectRelationship'
+ type: object
+ CaseResourceType:
+ default: case
+ description: Case resource type
+ enum:
+ - case
+ example: case
+ type: string
+ x-enum-varnames:
+ - CASE
+ CaseResponse:
+ description: Case response
+ properties:
+ data:
+ $ref: '#/components/schemas/Case'
+ type: object
+ CaseSortableField:
+ description: Case field that can be sorted on
+ enum:
+ - created_at
+ - priority
+ - status
+ example: created_at
+ type: string
+ x-enum-varnames:
+ - CREATED_AT
+ - PRIORITY
+ - STATUS
+ CaseStatus:
+ description: Case status
+ enum:
+ - OPEN
+ - IN_PROGRESS
+ - CLOSED
+ example: OPEN
+ type: string
+ x-enum-varnames:
+ - OPEN
+ - IN_PROGRESS
+ - CLOSED
+ CaseType:
+ description: Case type
+ enum:
+ - STANDARD
+ example: STANDARD
+ type: string
+ x-enum-varnames:
+ - STANDARD
+ CaseUpdatePriority:
+ description: Case priority status
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CaseUpdatePriorityAttributes'
+ type:
+ $ref: '#/components/schemas/CaseResourceType'
+ required:
+ - attributes
+ - type
+ type: object
+ CaseUpdatePriorityAttributes:
+ description: Case update priority attributes
+ properties:
+ priority:
+ $ref: '#/components/schemas/CasePriority'
+ required:
+ - priority
+ type: object
+ CaseUpdatePriorityRequest:
+ description: Case update priority request
+ properties:
+ data:
+ $ref: '#/components/schemas/CaseUpdatePriority'
+ required:
+ - data
+ type: object
+ CaseUpdateStatus:
+ description: Case update status
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CaseUpdateStatusAttributes'
+ type:
+ $ref: '#/components/schemas/CaseResourceType'
+ required:
+ - attributes
+ - type
+ type: object
+ CaseUpdateStatusAttributes:
+ description: Case update status attributes
+ properties:
+ status:
+ $ref: '#/components/schemas/CaseStatus'
+ required:
+ - status
+ type: object
+ CaseUpdateStatusRequest:
+ description: Case update status request
+ properties:
+ data:
+ $ref: '#/components/schemas/CaseUpdateStatus'
+ required:
+ - data
+ type: object
+ CasesResponse:
+ description: Response with cases
+ properties:
+ data:
+ description: Cases response data
+ items:
+ $ref: '#/components/schemas/Case'
+ type: array
+ meta:
+ $ref: '#/components/schemas/CasesResponseMeta'
+ type: object
+ CasesResponseMeta:
+ description: Cases response metadata
+ properties:
+ page:
+ $ref: '#/components/schemas/CasesResponseMetaPagination'
+ type: object
+ CasesResponseMetaPagination:
+ description: Pagination metadata
+ properties:
+ current:
+ description: Current page number
+ format: int64
+ type: integer
+ size:
+ description: Number of cases in current page
+ format: int64
+ type: integer
+ total:
+ description: Total number of pages
+ format: int64
+ type: integer
+ type: object
ChargebackBreakdown:
description: Charges breakdown.
properties:
@@ -3544,9 +3926,27 @@ components:
type: string
x-enum-varnames:
- CLOUD_COST_ACTIVITY
+ CloudWorkloadSecurityAgentRuleAction:
+ description: The action the rule can perform if triggered.
+ properties:
+ filter:
+ description: SECL expression used to target the container to apply the action
+ on
+ type: string
+ kill:
+ $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleKill'
+ type: object
+ CloudWorkloadSecurityAgentRuleActions:
+ description: The array of actions the rule can perform if triggered.
+ items:
+ $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAction'
+ nullable: true
+ type: array
CloudWorkloadSecurityAgentRuleAttributes:
description: A Cloud Workload Security Agent rule returned by the API.
properties:
+ actions:
+ $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions'
agentConstraint:
description: The version of the agent.
type: string
@@ -3679,6 +4079,17 @@ components:
type:
$ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType'
type: object
+ CloudWorkloadSecurityAgentRuleID:
+ description: The ID of the agent rule.
+ example: 3dd-0uc-h1s
+ type: string
+ CloudWorkloadSecurityAgentRuleKill:
+ description: Kill system call applied on the container matching the rule
+ properties:
+ signal:
+ description: Supported signals for the kill system call.
+ type: string
+ type: object
CloudWorkloadSecurityAgentRuleResponse:
description: Response object that includes an Agent rule.
properties:
@@ -3715,6 +4126,8 @@ components:
properties:
attributes:
$ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateAttributes'
+ id:
+ $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleID'
type:
$ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType'
required:
@@ -3776,6 +4189,22 @@ components:
description: The name of the Cloudflare account.
example: test-name
type: string
+ resources:
+ description: An allowlist of resources to restrict pulling metrics for.
+ example:
+ - web
+ - dns
+ items:
+ type: string
+ type: array
+ zones:
+ description: An allowlist of zones to restrict pulling metrics for.
+ example:
+ - zone_id_1
+ - zone_id_2
+ items:
+ type: string
+ type: array
required:
- api_key
- name
@@ -3808,6 +4237,22 @@ components:
description: The name of the Cloudflare account.
example: test-name
type: string
+ resources:
+ description: An allowlist of resources to restrict pulling metrics for.
+ example:
+ - web
+ - dns
+ items:
+ type: string
+ type: array
+ zones:
+ description: An allowlist of zones to restrict pulling metrics for.
+ example:
+ - zone_id_1
+ - zone_id_2
+ items:
+ type: string
+ type: array
required:
- name
type: object
@@ -3856,6 +4301,22 @@ components:
key is provided (and not a token), this field is also required.
example: test-email@example.com
type: string
+ resources:
+ description: An allowlist of resources to restrict pulling metrics for.
+ example:
+ - web
+ - dns
+ items:
+ type: string
+ type: array
+ zones:
+ description: An allowlist of zones to restrict pulling metrics for.
+ example:
+ - zone_id_1
+ - zone_id_2
+ items:
+ type: string
+ type: array
required:
- api_key
type: object
@@ -4818,6 +5279,29 @@ components:
type: string
x-enum-varnames:
- COST_BY_ORG
+ CreateOpenAPIResponse:
+ description: Response for `CreateOpenAPI` operation.
+ properties:
+ data:
+ $ref: '#/components/schemas/CreateOpenAPIResponseData'
+ type: object
+ CreateOpenAPIResponseAttributes:
+ description: Attributes for `CreateOpenAPI`.
+ properties:
+ failed_endpoints:
+ description: List of endpoints which couldn't be parsed.
+ items:
+ $ref: '#/components/schemas/OpenAPIEndpoint'
+ type: array
+ type: object
+ CreateOpenAPIResponseData:
+ description: Data envelope for `CreateOpenAPIResponse`.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CreateOpenAPIResponseAttributes'
+ id:
+ $ref: '#/components/schemas/ApiID'
+ type: object
CreateRuleRequest:
description: Scorecard create rule request.
properties:
@@ -4864,6 +5348,621 @@ components:
nullable: true
type: string
type: object
+ CustomDestinationAttributeTagsRestrictionListType:
+ default: ALLOW_LIST
+ description: 'How `forward_tags_restriction_list` parameter should be interpreted.
+
+ If `ALLOW_LIST`, then only tags whose keys on the forwarded logs match the
+ ones on the restriction list
+
+ are forwarded.
+
+
+ `BLOCK_LIST` works the opposite way. It does not forward the tags matching
+ the ones on the list.'
+ enum:
+ - ALLOW_LIST
+ - BLOCK_LIST
+ example: ALLOW_LIST
+ type: string
+ x-enum-varnames:
+ - ALLOW_LIST
+ - BLOCK_LIST
+ CustomDestinationCreateRequest:
+ description: The custom destination.
+ properties:
+ data:
+ $ref: '#/components/schemas/CustomDestinationCreateRequestDefinition'
+ type: object
+ CustomDestinationCreateRequestAttributes:
+ description: The attributes associated with the custom destination.
+ properties:
+ enabled:
+ default: true
+ description: Whether logs matching this custom destination should be forwarded
+ or not.
+ example: true
+ type: boolean
+ forward_tags:
+ default: true
+ description: Whether tags from the forwarded logs should be forwarded or
+ not.
+ example: true
+ type: boolean
+ forward_tags_restriction_list:
+ default: []
+ description: 'List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags)
+ to be filtered.
+
+
+ An empty list represents no restriction is in place and either all or
+ no tags will be
+
+ forwarded depending on `forward_tags_restriction_list_type` parameter.'
+ example:
+ - datacenter
+ - host
+ items:
+ description: The [key part of a tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags).
+ type: string
+ maxItems: 10
+ minItems: 0
+ type: array
+ forward_tags_restriction_list_type:
+ $ref: '#/components/schemas/CustomDestinationAttributeTagsRestrictionListType'
+ forwarder_destination:
+ $ref: '#/components/schemas/CustomDestinationForwardDestination'
+ name:
+ description: The custom destination name.
+ example: Nginx logs
+ type: string
+ query:
+ default: ''
+ description: The custom destination query and filter. Logs matching this
+ query are forwarded to the destination.
+ example: source:nginx
+ type: string
+ required:
+ - name
+ - forwarder_destination
+ type: object
+ CustomDestinationCreateRequestDefinition:
+ description: The definition of a custom destination.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CustomDestinationCreateRequestAttributes'
+ type:
+ $ref: '#/components/schemas/CustomDestinationType'
+ required:
+ - type
+ - attributes
+ type: object
+ CustomDestinationElasticsearchDestinationAuth:
+ description: Basic access authentication.
+ properties:
+ password:
+ description: The password of the authentication. This field is not returned
+ by the API.
+ example: datadog-custom-destination-password
+ type: string
+ writeOnly: true
+ username:
+ description: The username of the authentication. This field is not returned
+ by the API.
+ example: datadog-custom-destination-username
+ type: string
+ writeOnly: true
+ required:
+ - username
+ - password
+ type: object
+ CustomDestinationForwardDestination:
+ description: A custom destination's location to forward logs.
+ oneOf:
+ - $ref: '#/components/schemas/CustomDestinationForwardDestinationHttp'
+ - $ref: '#/components/schemas/CustomDestinationForwardDestinationSplunk'
+ - $ref: '#/components/schemas/CustomDestinationForwardDestinationElasticsearch'
+ type: object
+ CustomDestinationForwardDestinationElasticsearch:
+ description: The Elasticsearch destination.
+ properties:
+ auth:
+ $ref: '#/components/schemas/CustomDestinationElasticsearchDestinationAuth'
+ endpoint:
+ description: 'The destination for which logs will be forwarded to.
+
+ Must have HTTPS scheme and forwarding back to Datadog is not allowed.'
+ example: https://example.com
+ type: string
+ index_name:
+ description: Name of the Elasticsearch index (must follow [Elasticsearch's
+ criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)).
+ example: nginx-logs
+ type: string
+ index_rotation:
+ description: 'Date pattern with US locale and UTC timezone to be appended
+ to the index name after adding `-`
+
+ (that is, `${index_name}-${indexPattern}`).
+
+ You can customize the index rotation naming pattern by choosing one of
+ these options:
+
+ - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: `2022-10-19-09`)
+
+ - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`)
+
+ - Weekly: `yyyy-''W''ww` (as an example, it would render: `2022-W42`)
+
+ - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`)
+
+
+ If this field is missing or is blank, it means that the index name will
+ always be the same
+
+ (that is, no rotation).'
+ example: yyyy-MM-dd
+ type: string
+ type:
+ $ref: '#/components/schemas/CustomDestinationForwardDestinationElasticsearchType'
+ required:
+ - type
+ - endpoint
+ - auth
+ - index_name
+ type: object
+ CustomDestinationForwardDestinationElasticsearchType:
+ default: elasticsearch
+ description: Type of the Elasticsearch destination.
+ enum:
+ - elasticsearch
+ example: elasticsearch
+ type: string
+ x-enum-varnames:
+ - ELASTICSEARCH
+ CustomDestinationForwardDestinationHttp:
+ description: The HTTP destination.
+ properties:
+ auth:
+ $ref: '#/components/schemas/CustomDestinationHttpDestinationAuth'
+ endpoint:
+ description: 'The destination for which logs will be forwarded to.
+
+ Must have HTTPS scheme and forwarding back to Datadog is not allowed.'
+ example: https://example.com
+ type: string
+ type:
+ $ref: '#/components/schemas/CustomDestinationForwardDestinationHttpType'
+ required:
+ - type
+ - endpoint
+ - auth
+ type: object
+ CustomDestinationForwardDestinationHttpType:
+ default: http
+ description: Type of the HTTP destination.
+ enum:
+ - http
+ example: http
+ type: string
+ x-enum-varnames:
+ - HTTP
+ CustomDestinationForwardDestinationSplunk:
+ description: The Splunk HTTP Event Collector (HEC) destination.
+ properties:
+ access_token:
+ description: Access token of the Splunk HTTP Event Collector. This field
+ is not returned by the API.
+ example: splunk_access_token
+ type: string
+ writeOnly: true
+ endpoint:
+ description: 'The destination for which logs will be forwarded to.
+
+ Must have HTTPS scheme and forwarding back to Datadog is not allowed.'
+ example: https://example.com
+ type: string
+ type:
+ $ref: '#/components/schemas/CustomDestinationForwardDestinationSplunkType'
+ required:
+ - type
+ - endpoint
+ - access_token
+ type: object
+ CustomDestinationForwardDestinationSplunkType:
+ default: splunk_hec
+ description: Type of the Splunk HTTP Event Collector (HEC) destination.
+ enum:
+ - splunk_hec
+ example: splunk_hec
+ type: string
+ x-enum-varnames:
+ - SPLUNK_HEC
+ CustomDestinationHttpDestinationAuth:
+ description: Authentication method of the HTTP requests.
+ oneOf:
+ - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthBasic'
+ - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthCustomHeader'
+ type: object
+ CustomDestinationHttpDestinationAuthBasic:
+ description: Basic access authentication.
+ properties:
+ password:
+ description: The password of the authentication. This field is not returned
+ by the API.
+ example: datadog-custom-destination-password
+ type: string
+ writeOnly: true
+ type:
+ $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthBasicType'
+ username:
+ description: The username of the authentication. This field is not returned
+ by the API.
+ example: datadog-custom-destination-username
+ type: string
+ writeOnly: true
+ required:
+ - type
+ - username
+ - password
+ type: object
+ CustomDestinationHttpDestinationAuthBasicType:
+ default: basic
+ description: Type of the basic access authentication.
+ enum:
+ - basic
+ example: basic
+ type: string
+ x-enum-varnames:
+ - BASIC
+ CustomDestinationHttpDestinationAuthCustomHeader:
+ description: Custom header access authentication.
+ properties:
+ header_name:
+ description: The header name of the authentication.
+ example: CUSTOM-HEADER-NAME
+ type: string
+ header_value:
+ description: The header value of the authentication. This field is not returned
+ by the API.
+ example: CUSTOM-HEADER-AUTHENTICATION-VALUE
+ type: string
+ writeOnly: true
+ type:
+ $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthCustomHeaderType'
+ required:
+ - type
+ - header_name
+ - header_value
+ type: object
+ CustomDestinationHttpDestinationAuthCustomHeaderType:
+ default: custom_header
+ description: Type of the custom header access authentication.
+ enum:
+ - custom_header
+ example: custom_header
+ type: string
+ x-enum-varnames:
+ - CUSTOM_HEADER
+ CustomDestinationResponse:
+ description: The custom destination.
+ properties:
+ data:
+ $ref: '#/components/schemas/CustomDestinationResponseDefinition'
+ type: object
+ CustomDestinationResponseAttributes:
+ description: The attributes associated with the custom destination.
+ properties:
+ enabled:
+ default: true
+ description: Whether logs matching this custom destination should be forwarded
+ or not.
+ example: true
+ type: boolean
+ forward_tags:
+ default: true
+ description: Whether tags from the forwarded logs should be forwarded or
+ not.
+ example: true
+ type: boolean
+ forward_tags_restriction_list:
+ default: []
+ description: 'List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags)
+ to be filtered.
+
+
+ An empty list represents no restriction is in place and either all or
+ no tags will be
+
+ forwarded depending on `forward_tags_restriction_list_type` parameter.'
+ example:
+ - datacenter
+ - host
+ items:
+ description: The [key part of a tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags).
+ type: string
+ maxItems: 10
+ minItems: 0
+ type: array
+ forward_tags_restriction_list_type:
+ $ref: '#/components/schemas/CustomDestinationAttributeTagsRestrictionListType'
+ forwarder_destination:
+ $ref: '#/components/schemas/CustomDestinationResponseForwardDestination'
+ name:
+ description: The custom destination name.
+ example: Nginx logs
+ type: string
+ query:
+ default: ''
+ description: The custom destination query filter. Logs matching this query
+ are forwarded to the destination.
+ example: source:nginx
+ type: string
+ type: object
+ CustomDestinationResponseDefinition:
+ description: The definition of a custom destination.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CustomDestinationResponseAttributes'
+ id:
+ description: The custom destination ID.
+ example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139
+ readOnly: true
+ type: string
+ type:
+ $ref: '#/components/schemas/CustomDestinationType'
+ type: object
+ CustomDestinationResponseElasticsearchDestinationAuth:
+ additionalProperties:
+ description: Basic access authentication.
+ description: Basic access authentication.
+ type: object
+ CustomDestinationResponseForwardDestination:
+ description: A custom destination's location to forward logs.
+ oneOf:
+ - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationHttp'
+ - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationSplunk'
+ - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationElasticsearch'
+ type: object
+ CustomDestinationResponseForwardDestinationElasticsearch:
+ description: The Elasticsearch destination.
+ properties:
+ auth:
+ $ref: '#/components/schemas/CustomDestinationResponseElasticsearchDestinationAuth'
+ endpoint:
+ description: 'The destination for which logs will be forwarded to.
+
+ Must have HTTPS scheme and forwarding back to Datadog is not allowed.'
+ example: https://example.com
+ type: string
+ index_name:
+ description: Name of the Elasticsearch index (must follow [Elasticsearch's
+ criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)).
+ example: nginx-logs
+ type: string
+ index_rotation:
+ description: 'Date pattern with US locale and UTC timezone to be appended
+ to the index name after adding `-`
+
+ (that is, `${index_name}-${indexPattern}`).
+
+ You can customize the index rotation naming pattern by choosing one of
+ these options:
+
+ - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: `2022-10-19-09`)
+
+ - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`)
+
+ - Weekly: `yyyy-''W''ww` (as an example, it would render: `2022-W42`)
+
+ - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`)
+
+
+ If this field is missing or is blank, it means that the index name will
+ always be the same
+
+ (that is, no rotation).'
+ example: yyyy-MM-dd
+ type: string
+ type:
+ $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationElasticsearchType'
+ required:
+ - type
+ - endpoint
+ - auth
+ - index_name
+ type: object
+ CustomDestinationResponseForwardDestinationElasticsearchType:
+ default: elasticsearch
+ description: Type of the Elasticsearch destination.
+ enum:
+ - elasticsearch
+ example: elasticsearch
+ type: string
+ x-enum-varnames:
+ - ELASTICSEARCH
+ CustomDestinationResponseForwardDestinationHttp:
+ description: The HTTP destination.
+ properties:
+ auth:
+ $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuth'
+ endpoint:
+ description: 'The destination for which logs will be forwarded to.
+
+ Must have HTTPS scheme and forwarding back to Datadog is not allowed.'
+ example: https://example.com
+ type: string
+ type:
+ $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationHttpType'
+ required:
+ - type
+ - endpoint
+ - auth
+ type: object
+ CustomDestinationResponseForwardDestinationHttpType:
+ default: http
+ description: Type of the HTTP destination.
+ enum:
+ - http
+ example: http
+ type: string
+ x-enum-varnames:
+ - HTTP
+ CustomDestinationResponseForwardDestinationSplunk:
+ description: The Splunk HTTP Event Collector (HEC) destination.
+ properties:
+ endpoint:
+ description: 'The destination for which logs will be forwarded to.
+
+ Must have HTTPS scheme and forwarding back to Datadog is not allowed.'
+ example: https://example.com
+ type: string
+ type:
+ $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationSplunkType'
+ required:
+ - type
+ - endpoint
+ type: object
+ CustomDestinationResponseForwardDestinationSplunkType:
+ default: splunk_hec
+ description: Type of the Splunk HTTP Event Collector (HEC) destination.
+ enum:
+ - splunk_hec
+ example: splunk_hec
+ type: string
+ x-enum-varnames:
+ - SPLUNK_HEC
+ CustomDestinationResponseHttpDestinationAuth:
+ description: Authentication method of the HTTP requests.
+ oneOf:
+ - $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuthBasic'
+ - $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuthCustomHeader'
+ type: object
+ CustomDestinationResponseHttpDestinationAuthBasic:
+ description: Basic access authentication.
+ properties:
+ type:
+ $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuthBasicType'
+ required:
+ - type
+ type: object
+ CustomDestinationResponseHttpDestinationAuthBasicType:
+ default: basic
+ description: Type of the basic access authentication.
+ enum:
+ - basic
+ example: basic
+ type: string
+ x-enum-varnames:
+ - BASIC
+ CustomDestinationResponseHttpDestinationAuthCustomHeader:
+ description: Custom header access authentication.
+ properties:
+ header_name:
+ description: The header name of the authentication.
+ example: CUSTOM-HEADER-NAME
+ type: string
+ type:
+ $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuthCustomHeaderType'
+ required:
+ - type
+ - header_name
+ type: object
+ CustomDestinationResponseHttpDestinationAuthCustomHeaderType:
+ default: custom_header
+ description: Type of the custom header access authentication.
+ enum:
+ - custom_header
+ example: custom_header
+ type: string
+ x-enum-varnames:
+ - CUSTOM_HEADER
+ CustomDestinationType:
+ default: custom_destination
+ description: The type of the resource. The value should always be `custom_destination`.
+ enum:
+ - custom_destination
+ example: custom_destination
+ type: string
+ x-enum-varnames:
+ - CUSTOM_DESTINATION
+ CustomDestinationUpdateRequest:
+ description: The custom destination.
+ properties:
+ data:
+ $ref: '#/components/schemas/CustomDestinationUpdateRequestDefinition'
+ type: object
+ CustomDestinationUpdateRequestAttributes:
+ description: The attributes associated with the custom destination.
+ properties:
+ enabled:
+ default: true
+ description: Whether logs matching this custom destination should be forwarded
+ or not.
+ example: true
+ type: boolean
+ forward_tags:
+ default: true
+ description: Whether tags from the forwarded logs should be forwarded or
+ not.
+ example: true
+ type: boolean
+ forward_tags_restriction_list:
+ default: []
+ description: 'List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags)
+ to be restricted from being forwarded.
+
+ An empty list represents no restriction is in place and either all or
+ no tags will be forwarded depending on `forward_tags_restriction_list_type`
+ parameter.'
+ example:
+ - datacenter
+ - host
+ items:
+ description: The [key part of a tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags).
+ type: string
+ maxItems: 10
+ minItems: 0
+ type: array
+ forward_tags_restriction_list_type:
+ $ref: '#/components/schemas/CustomDestinationAttributeTagsRestrictionListType'
+ forwarder_destination:
+ $ref: '#/components/schemas/CustomDestinationForwardDestination'
+ name:
+ description: The custom destination name.
+ example: Nginx logs
+ type: string
+ query:
+ default: ''
+ description: The custom destination query and filter. Logs matching this
+ query are forwarded to the destination.
+ example: source:nginx
+ type: string
+ type: object
+ CustomDestinationUpdateRequestDefinition:
+ description: The definition of a custom destination.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CustomDestinationUpdateRequestAttributes'
+ id:
+ description: The custom destination ID.
+ example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139
+ type: string
+ type:
+ $ref: '#/components/schemas/CustomDestinationType'
+ required:
+ - type
+ - id
+ type: object
+ CustomDestinationsResponse:
+ description: The available custom destinations.
+ properties:
+ data:
+ description: A list of custom destinations.
+ items:
+ $ref: '#/components/schemas/CustomDestinationResponseDefinition'
+ type: array
+ type: object
DORADeploymentRequest:
description: Request to create a DORA deployment event.
properties:
@@ -4875,6 +5974,10 @@ components:
DORADeploymentRequestAttributes:
description: Attributes to create a DORA deployment event.
properties:
+ env:
+ description: Environment name to where the service was deployed.
+ example: staging
+ type: string
finished_at:
description: Unix timestamp in nanoseconds when the deployment finished.
It should not be older than 3 hours.
@@ -4963,6 +6066,10 @@ components:
DORAIncidentRequestAttributes:
description: Attributes to create a DORA incident event.
properties:
+ env:
+ description: Environment name that was impacted by the incident.
+ example: staging
+ type: string
finished_at:
description: Unix timestamp in nanoseconds when the incident finished. It
should not be older than 3 hours.
@@ -4972,16 +6079,21 @@ components:
git:
$ref: '#/components/schemas/DORAGitInfo'
id:
- description: Incident ID
+ description: Incident ID. Required to update a previously sent incident.
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
+ example: Webserver is down failing all requests.
type: string
+ services:
+ description: Service names impacted by the incident. If possible, use names
+ registered in the Service Catalog. Required when the team field is not
+ provided.
+ example:
+ - shopist
+ items:
+ type: string
+ type: array
severity:
description: Incident severity.
example: High
@@ -4991,12 +6103,17 @@ components:
example: 1693491974000000000
format: int64
type: integer
+ team:
+ description: Name of the team owning the services impacted. If possible,
+ use team handles registered in Datadog. Required when the services field
+ is not provided.
+ example: backend
+ type: string
version:
description: Version to correlate with [APM Deployment Tracking](https://docs.datadoghq.com/tracing/services/deployment_tracking/).
example: v1.12.07
type: string
required:
- - service
- started_at
type: object
DORAIncidentRequestData:
@@ -5650,7 +6767,7 @@ components:
type: string
type: object
DowntimeScheduleOneTimeCreateUpdateRequest:
- additionalProperties: {}
+ additionalProperties: false
description: A one-time downtime definition.
properties:
end:
@@ -5785,6 +6902,7 @@ components:
- recurrences
type: object
DowntimeScheduleRecurrencesUpdateRequest:
+ additionalProperties: false
description: A recurring downtime schedule definition.
properties:
recurrences:
@@ -6925,6 +8043,18 @@ components:
description: Your service account email address.
example: datadog-service-account@test-project.iam.gserviceaccount.com
type: string
+ cloud_run_revision_filters:
+ description: 'List of filters to limit the Cloud Run revisions that are
+ pulled into Datadog by using tags.
+
+ Only Cloud Run revision resources that apply to specified filters are
+ imported into Datadog.'
+ example:
+ - $KEY:$VALUE
+ items:
+ description: Cloud Run Filters
+ type: string
+ type: array
host_filters:
description: Your Host Filters.
items:
@@ -9253,6 +10383,32 @@ components:
- project_key
- account
type: object
+ JiraIssue:
+ description: Jira issue attached to case
+ nullable: true
+ properties:
+ result:
+ $ref: '#/components/schemas/JiraIssueResult'
+ status:
+ $ref: '#/components/schemas/Case3rdPartyTicketStatus'
+ readOnly: true
+ type: object
+ JiraIssueResult:
+ description: Jira issue information
+ properties:
+ issue_id:
+ description: Jira issue ID
+ type: string
+ issue_key:
+ description: Jira issue key
+ type: string
+ issue_url:
+ description: Jira issue URL
+ type: string
+ project_key:
+ description: Jira project key
+ type: string
+ type: object
ListApplicationKeysResponse:
description: Response for a list of application keys.
properties:
@@ -9908,7 +11064,6 @@ components:
example: project-id
type: string
required:
- - project_id
- client_email
type: object
LogsArchiveIntegrationS3:
@@ -10581,6 +11736,136 @@ components:
$ref: '#/components/schemas/MetricAllTags'
readOnly: true
type: object
+ MetricAssetAttributes:
+ description: Assets where only included attribute is its title
+ properties:
+ title:
+ description: Title of the asset.
+ type: string
+ type: object
+ MetricAssetDashboardRelationship:
+ description: An object of type `dashboard` that can be referenced in the `included`
+ data.
+ properties:
+ id:
+ $ref: '#/components/schemas/MetricDashboardID'
+ type:
+ $ref: '#/components/schemas/MetricDashboardType'
+ type: object
+ MetricAssetDashboardRelationships:
+ description: An object containing the list of dashboards that can be referenced
+ in the `included` data.
+ properties:
+ data:
+ description: A list of dashboards that can be referenced in the `included`
+ data.
+ items:
+ $ref: '#/components/schemas/MetricAssetDashboardRelationship'
+ type: array
+ type: object
+ MetricAssetMonitorRelationship:
+ description: An object of type `monitor` that can be referenced in the `included`
+ data.
+ properties:
+ id:
+ $ref: '#/components/schemas/MetricMonitorID'
+ type:
+ $ref: '#/components/schemas/MetricMonitorType'
+ type: object
+ MetricAssetMonitorRelationships:
+ description: A object containing the list of monitors that can be referenced
+ in the `included` data.
+ properties:
+ data:
+ description: A list of monitors that can be referenced in the `included`
+ data.
+ items:
+ $ref: '#/components/schemas/MetricAssetMonitorRelationship'
+ type: array
+ type: object
+ MetricAssetNotebookRelationship:
+ description: An object of type `notebook` that can be referenced in the `included`
+ data.
+ properties:
+ id:
+ $ref: '#/components/schemas/MetricNotebookID'
+ type:
+ $ref: '#/components/schemas/MetricNotebookType'
+ type: object
+ MetricAssetNotebookRelationships:
+ description: An object containing the list of notebooks that can be referenced
+ in the `included` data.
+ properties:
+ data:
+ description: A list of notebooks that can be referenced in the `included`
+ data.
+ items:
+ $ref: '#/components/schemas/MetricAssetNotebookRelationship'
+ type: array
+ type: object
+ MetricAssetResponseData:
+ description: Metric assets response data.
+ properties:
+ id:
+ $ref: '#/components/schemas/MetricName'
+ relationships:
+ $ref: '#/components/schemas/MetricAssetResponseRelationships'
+ type:
+ $ref: '#/components/schemas/MetricType'
+ required:
+ - id
+ - type
+ type: object
+ MetricAssetResponseIncluded:
+ description: List of included assets with full set of attributes.
+ oneOf:
+ - $ref: '#/components/schemas/MetricDashboardAsset'
+ - $ref: '#/components/schemas/MetricMonitorAsset'
+ - $ref: '#/components/schemas/MetricNotebookAsset'
+ - $ref: '#/components/schemas/MetricSLOAsset'
+ MetricAssetResponseRelationships:
+ description: Relationships to assets related to the metric.
+ properties:
+ dashboards:
+ $ref: '#/components/schemas/MetricAssetDashboardRelationships'
+ monitors:
+ $ref: '#/components/schemas/MetricAssetMonitorRelationships'
+ notebooks:
+ $ref: '#/components/schemas/MetricAssetNotebookRelationships'
+ slos:
+ $ref: '#/components/schemas/MetricAssetSLORelationships'
+ type: object
+ MetricAssetSLORelationship:
+ description: An object of type `slos` that can be referenced in the `included`
+ data.
+ properties:
+ id:
+ $ref: '#/components/schemas/MetricSLOID'
+ type:
+ $ref: '#/components/schemas/MetricSLOType'
+ type: object
+ MetricAssetSLORelationships:
+ description: An object containing a list of SLOs that can be referenced in the
+ `included` data.
+ properties:
+ data:
+ description: A list of SLOs that can be referenced in the `included` data.
+ items:
+ $ref: '#/components/schemas/MetricAssetSLORelationship'
+ type: array
+ type: object
+ MetricAssetsResponse:
+ description: Response object that includes related dashboards, monitors, notebooks,
+ and SLOs.
+ properties:
+ data:
+ $ref: '#/components/schemas/MetricAssetResponseData'
+ included:
+ description: Array of objects related to the metric assets.
+ items:
+ $ref: '#/components/schemas/MetricAssetResponseIncluded'
+ type: array
+ type: object
MetricBulkConfigureTagsType:
default: metric_bulk_configure_tags
description: The metric bulk configure tags resource.
@@ -10822,6 +12107,44 @@ components:
- MAX
- MIN
- SUM
+ MetricDashboardAsset:
+ description: A dashboard object with title and popularity.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/MetricDashboardAttributes'
+ id:
+ $ref: '#/components/schemas/MetricDashboardID'
+ type:
+ $ref: '#/components/schemas/MetricDashboardType'
+ required:
+ - id
+ - type
+ type: object
+ MetricDashboardAttributes:
+ description: Attributes related to the dashboard, including title and popularity.
+ properties:
+ popularity:
+ description: Value from 0 to 5 that ranks popularity of the dashboard.
+ format: double
+ maximum: 5
+ minimum: 0
+ type: number
+ title:
+ description: Title of the asset.
+ type: string
+ type: object
+ MetricDashboardID:
+ description: The related dashboard's ID.
+ example: xxx-yyy-zzz
+ type: string
+ MetricDashboardType:
+ description: Dashboard resource type.
+ enum:
+ - dashboards
+ example: dashboards
+ type: string
+ x-enum-varnames:
+ - DASHBOARDS
MetricDistinctVolume:
description: Object for a single metric's distinct volume.
properties:
@@ -10962,10 +12285,60 @@ components:
origin:
$ref: '#/components/schemas/MetricOrigin'
type: object
+ MetricMonitorAsset:
+ description: A monitor object with title.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/MetricAssetAttributes'
+ id:
+ $ref: '#/components/schemas/MetricMonitorID'
+ type:
+ $ref: '#/components/schemas/MetricMonitorType'
+ required:
+ - id
+ - type
+ type: object
+ MetricMonitorID:
+ description: The related monitor's ID.
+ example: '1775073'
+ type: string
+ MetricMonitorType:
+ description: Monitor resource type.
+ enum:
+ - monitors
+ example: monitors
+ type: string
+ x-enum-varnames:
+ - MONITORS
MetricName:
description: The metric name for this resource.
example: test.metric.latency
type: string
+ MetricNotebookAsset:
+ description: A notebook object with title.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/MetricAssetAttributes'
+ id:
+ $ref: '#/components/schemas/MetricNotebookID'
+ type:
+ $ref: '#/components/schemas/MetricNotebookType'
+ required:
+ - id
+ - type
+ type: object
+ MetricNotebookID:
+ description: The related notebook's ID.
+ example: '12345'
+ type: string
+ MetricNotebookType:
+ description: Notebook resource type.
+ enum:
+ - notebooks
+ example: notebooks
+ type: string
+ x-enum-varnames:
+ - NOTEBOOKS
MetricOrigin:
description: Metric origin information.
properties:
@@ -10992,7 +12365,7 @@ components:
description: The metrics' payload.
properties:
series:
- description: A list of time series to submit to Datadog.
+ description: A list of timeseries to submit to Datadog.
example:
- metric: system.load.1
points:
@@ -11039,6 +12412,31 @@ components:
description: The type of the resource.
type: string
type: object
+ MetricSLOAsset:
+ description: A SLO object with title.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/MetricAssetAttributes'
+ id:
+ $ref: '#/components/schemas/MetricSLOID'
+ type:
+ $ref: '#/components/schemas/MetricSLOType'
+ required:
+ - id
+ - type
+ type: object
+ MetricSLOID:
+ description: The SLO ID.
+ example: 9ffef113b389520db54391d67d652dfb
+ type: string
+ MetricSLOType:
+ description: SLO resource type.
+ enum:
+ - slos
+ example: slos
+ type: string
+ x-enum-varnames:
+ - SLOS
MetricSeries:
description: 'A metric to submit to Datadog.
@@ -11852,6 +13250,29 @@ components:
- id
- type
type: object
+ NullableUserRelationship:
+ description: Relationship to user.
+ nullable: true
+ properties:
+ data:
+ $ref: '#/components/schemas/NullableUserRelationshipData'
+ required:
+ - data
+ type: object
+ NullableUserRelationshipData:
+ description: Relationship to user object.
+ nullable: true
+ properties:
+ id:
+ description: A unique identifier that represents the user.
+ example: 00000000-0000-0000-0000-000000000000
+ type: string
+ type:
+ $ref: '#/components/schemas/UserResourceType'
+ required:
+ - id
+ - type
+ type: object
OktaAccount:
description: Schema for an Okta account.
properties:
@@ -12016,6 +13437,24 @@ components:
type: string
x-enum-varnames:
- ON_DEMAND_CONCURRENCY_CAP
+ OpenAPIEndpoint:
+ description: Endpoint info extracted from an `OpenAPI` specification.
+ properties:
+ method:
+ description: The endpoint method.
+ type: string
+ path:
+ description: The endpoint path.
+ type: string
+ type: object
+ OpenAPIFile:
+ description: Object for API data in an `OpenAPI` format as a file.
+ properties:
+ openapi_spec_file:
+ description: Binary `OpenAPI` spec file
+ format: binary
+ type: string
+ type: object
OpsgenieServiceCreateAttributes:
description: The Opsgenie service attributes for a create request.
properties:
@@ -12966,6 +14405,113 @@ components:
type: string
x-enum-varnames:
- PROCESS
+ Project:
+ description: A Project
+ properties:
+ attributes:
+ $ref: '#/components/schemas/ProjectAttributes'
+ id:
+ description: The Project's identifier
+ example: aeadc05e-98a8-11ec-ac2c-da7ad0900001
+ type: string
+ relationships:
+ $ref: '#/components/schemas/ProjectRelationships'
+ type:
+ $ref: '#/components/schemas/ProjectResourceType'
+ required:
+ - id
+ - type
+ - attributes
+ type: object
+ ProjectAttributes:
+ description: Project attributes
+ properties:
+ key:
+ description: The project's key
+ example: CASEM
+ type: string
+ name:
+ description: Project's name
+ type: string
+ type: object
+ ProjectCreate:
+ description: Project create
+ properties:
+ attributes:
+ $ref: '#/components/schemas/ProjectCreateAttributes'
+ type:
+ $ref: '#/components/schemas/ProjectResourceType'
+ required:
+ - attributes
+ - type
+ type: object
+ ProjectCreateAttributes:
+ description: Project creation attributes
+ properties:
+ key:
+ description: Project's key. Cannot be "CASE"
+ example: SEC
+ type: string
+ name:
+ description: name
+ example: Security Investigation
+ type: string
+ required:
+ - name
+ - key
+ type: object
+ ProjectCreateRequest:
+ description: Project create request
+ properties:
+ data:
+ $ref: '#/components/schemas/ProjectCreate'
+ required:
+ - data
+ type: object
+ ProjectRelationship:
+ description: Relationship to project
+ properties:
+ data:
+ $ref: '#/components/schemas/ProjectRelationshipData'
+ required:
+ - data
+ type: object
+ ProjectRelationshipData:
+ description: Relationship to project object
+ properties:
+ id:
+ description: A unique identifier that represents the project
+ example: e555e290-ed65-49bd-ae18-8acbfcf18db7
+ type: string
+ type:
+ $ref: '#/components/schemas/ProjectResourceType'
+ required:
+ - id
+ - type
+ type: object
+ ProjectRelationships:
+ description: Project relationships
+ properties:
+ member_team:
+ $ref: '#/components/schemas/RelationshipToTeamLinks'
+ member_user:
+ $ref: '#/components/schemas/UsersRelationship'
+ type: object
+ ProjectResourceType:
+ default: project
+ description: Project resource type
+ enum:
+ - project
+ example: project
+ type: string
+ x-enum-varnames:
+ - PROJECT
+ ProjectResponse:
+ description: Project response
+ properties:
+ data:
+ $ref: '#/components/schemas/Project'
+ type: object
ProjectedCost:
description: Projected Cost data.
properties:
@@ -13022,6 +14568,15 @@ components:
type: string
x-enum-varnames:
- PROJECt_COST
+ ProjectsResponse:
+ description: Response with projects
+ properties:
+ data:
+ description: Projects response data
+ items:
+ $ref: '#/components/schemas/Project'
+ type: array
+ type: object
QueryFormula:
description: A formula for calculation based on one or more queries.
properties:
@@ -16540,6 +18095,219 @@ components:
description: The version of the rule.
format: int64
type: integer
+ SecurityMonitoringSuppression:
+ description: The suppression rule's properties.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionAttributes'
+ id:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionID'
+ type:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionType'
+ type: object
+ SecurityMonitoringSuppressionAttributes:
+ description: The attributes of the suppression rule.
+ properties:
+ creation_date:
+ description: A Unix millisecond timestamp given the creation date of the
+ suppression rule.
+ format: int64
+ type: integer
+ creator:
+ $ref: '#/components/schemas/SecurityMonitoringUser'
+ description:
+ description: A description for the suppression rule.
+ example: This rule suppresses low-severity signals in staging environments.
+ type: string
+ enabled:
+ description: Whether the suppression rule is enabled.
+ example: true
+ type: boolean
+ expiration_date:
+ description: A Unix millisecond timestamp giving an expiration date for
+ the suppression rule. After this date, it won't suppress signals anymore.
+ example: 1703187336000
+ format: int64
+ type: integer
+ name:
+ description: The name of the suppression rule.
+ example: Custom suppression
+ type: string
+ rule_query:
+ description: The rule query of the suppression rule, with the same syntax
+ as the search bar for detection rules.
+ example: type:log_detection source:cloudtrail
+ type: string
+ suppression_query:
+ description: The suppression query of the suppression rule. If a signal
+ matches this query, it is suppressed and not triggered. Same syntax as
+ the queries to search signals in the signal explorer.
+ example: env:staging status:low
+ type: string
+ update_date:
+ description: A Unix millisecond timestamp given the update date of the suppression
+ rule.
+ format: int64
+ type: integer
+ updater:
+ $ref: '#/components/schemas/SecurityMonitoringUser'
+ version:
+ description: The version of the suppression rule; it starts at 1, and is
+ incremented at each update.
+ example: 42
+ format: int32
+ maximum: 2147483647
+ type: integer
+ type: object
+ SecurityMonitoringSuppressionCreateAttributes:
+ description: Object containing the attributes of the suppression rule to be
+ created.
+ properties:
+ description:
+ description: A description for the suppression rule.
+ example: This rule suppresses low-severity signals in staging environments.
+ type: string
+ enabled:
+ description: Whether the suppression rule is enabled.
+ example: true
+ type: boolean
+ expiration_date:
+ description: A Unix millisecond timestamp giving an expiration date for
+ the suppression rule. After this date, it won't suppress signals anymore.
+ example: 1703187336000
+ format: int64
+ type: integer
+ name:
+ description: The name of the suppression rule.
+ example: Custom suppression
+ type: string
+ rule_query:
+ description: The rule query of the suppression rule, with the same syntax
+ as the search bar for detection rules.
+ example: type:log_detection source:cloudtrail
+ type: string
+ suppression_query:
+ description: The suppression query of the suppression rule. If a signal
+ matches this query, it is suppressed and is not triggered . Same syntax
+ as the queries to search signals in the signal explorer.
+ example: env:staging status:low
+ type: string
+ required:
+ - name
+ - enabled
+ - rule_query
+ - suppression_query
+ type: object
+ SecurityMonitoringSuppressionCreateData:
+ description: Object for a single suppression rule.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateAttributes'
+ type:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionType'
+ required:
+ - type
+ - attributes
+ type: object
+ SecurityMonitoringSuppressionCreateRequest:
+ description: Request object that includes the suppression rule that you would
+ like to create.
+ properties:
+ data:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateData'
+ required:
+ - data
+ type: object
+ SecurityMonitoringSuppressionID:
+ description: The ID of the suppression rule.
+ example: 3dd-0uc-h1s
+ type: string
+ SecurityMonitoringSuppressionResponse:
+ description: Response object containing a single suppression rule.
+ properties:
+ data:
+ $ref: '#/components/schemas/SecurityMonitoringSuppression'
+ type: object
+ SecurityMonitoringSuppressionType:
+ default: suppressions
+ description: The type of the resource. The value should always be `suppressions`.
+ enum:
+ - suppressions
+ example: suppressions
+ type: string
+ x-enum-varnames:
+ - SUPPRESSIONS
+ SecurityMonitoringSuppressionUpdateAttributes:
+ description: The suppression rule properties to be updated.
+ properties:
+ description:
+ description: A description for the suppression rule.
+ example: This rule suppresses low-severity signals in staging environments.
+ type: string
+ enabled:
+ description: Whether the suppression rule is enabled.
+ example: true
+ type: boolean
+ expiration_date:
+ description: A Unix millisecond timestamp giving an expiration date for
+ the suppression rule. After this date, it won't suppress signals anymore.
+ If unset, the expiration date of the suppression rule is left untouched.
+ If set to `null`, the expiration date is removed.
+ example: 1703187336000
+ format: int64
+ nullable: true
+ type: integer
+ name:
+ description: The name of the suppression rule.
+ example: Custom suppression
+ type: string
+ rule_query:
+ description: The rule query of the suppression rule, with the same syntax
+ as the search bar for detection rules.
+ example: type:log_detection source:cloudtrail
+ type: string
+ suppression_query:
+ description: The suppression query of the suppression rule. If a signal
+ matches this query, it is suppressed and not triggered. Same syntax as
+ the queries to search signals in the signal explorer.
+ example: env:staging status:low
+ type: string
+ version:
+ description: The current version of the suppression. This is optional, but
+ it can help prevent concurrent modifications.
+ format: int32
+ maximum: 2147483647
+ type: integer
+ type: object
+ SecurityMonitoringSuppressionUpdateData:
+ description: The new suppression properties; partial updates are supported.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateAttributes'
+ type:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionType'
+ required:
+ - type
+ - attributes
+ type: object
+ SecurityMonitoringSuppressionUpdateRequest:
+ description: Request object containing the fields to update on the suppression
+ rule.
+ properties:
+ data:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateData'
+ required:
+ - data
+ type: object
+ SecurityMonitoringSuppressionsResponse:
+ description: Response object containing the available suppression rules.
+ properties:
+ data:
+ description: A list of suppressions objects.
+ items:
+ $ref: '#/components/schemas/SecurityMonitoringSuppression'
+ type: array
+ type: object
SecurityMonitoringThirdPartyRootQuery:
description: A query to be combined with the third party case query.
properties:
@@ -16618,6 +18386,19 @@ components:
required:
- uuid
type: object
+ SecurityMonitoringUser:
+ description: A user.
+ properties:
+ handle:
+ description: The handle of the user.
+ example: john.doe@datadoghq.com
+ type: string
+ name:
+ description: The name of the user.
+ example: John Doe
+ nullable: true
+ type: string
+ type: object
SensitiveDataScannerConfigRequest:
description: Group reorder request.
properties:
@@ -16878,6 +18659,44 @@ components:
meta:
$ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly'
type: object
+ SensitiveDataScannerIncludedKeywordConfiguration:
+ description: 'Object defining a set of keywords and a number of characters that
+ help reduce noise.
+
+ You can provide a list of keywords you would like to check within a defined
+ proximity of the matching pattern.
+
+ If any of the keywords are found within the proximity check, the match is
+ kept.
+
+ If none are found, the match is discarded.'
+ properties:
+ character_count:
+ description: 'The number of characters behind a match detected by Sensitive
+ Data Scanner to look for the keywords defined.
+
+ `character_count` should be greater than the maximum length of a keyword
+ defined for a rule.'
+ example: 30
+ format: int64
+ maximum: 50
+ minimum: 1
+ type: integer
+ keywords:
+ description: 'Keyword list that will be checked during scanning in order
+ to validate a match.
+
+ The number of keywords in the list must be less than or equal to 30.'
+ example:
+ - credit card
+ - cc
+ items:
+ type: string
+ type: array
+ required:
+ - keywords
+ - character_count
+ type: object
SensitiveDataScannerMeta:
description: Meta response containing information about the API.
properties:
@@ -16971,6 +18790,8 @@ components:
items:
type: string
type: array
+ included_keyword_configuration:
+ $ref: '#/components/schemas/SensitiveDataScannerIncludedKeywordConfiguration'
is_enabled:
description: Whether or not the rule is enabled.
type: boolean
@@ -17149,7 +18970,10 @@ components:
description: Name of the standard pattern.
type: string
pattern:
- description: Regex to match.
+ deprecated: true
+ description: (Deprecated) Regex to match, optionally documented for older
+ standard rules. Refer to the `description` field to understand what the
+ rule does.
type: string
priority:
description: Integer from 1 (high) to 5 (low) indicating standard pattern
@@ -17859,6 +19683,14 @@ components:
feature, which the service is a part of.
example: my-app
type: string
+ ci-pipeline-fingerprints:
+ description: A set of CI fingerprints.
+ example:
+ - j88xdEy0J5lc
+ - eZ7LMljCk8vo
+ items:
+ type: string
+ type: array
contacts:
description: A list of contacts related to the services.
items:
@@ -18239,6 +20071,23 @@ components:
$ref: '#/components/schemas/ServiceDefinitionData'
type: array
type: object
+ ServiceNowTicket:
+ description: ServiceNow ticket attached to case
+ nullable: true
+ properties:
+ result:
+ $ref: '#/components/schemas/ServiceNowTicketResult'
+ status:
+ $ref: '#/components/schemas/Case3rdPartyTicketStatus'
+ readOnly: true
+ type: object
+ ServiceNowTicketResult:
+ description: ServiceNow ticket information
+ properties:
+ sys_target_link:
+ description: Link to the Incident created on ServiceNow
+ type: string
+ type: object
SlackIntegrationMetadata:
description: Incident integration metadata for the Slack integration.
properties:
@@ -19955,6 +21804,29 @@ components:
example: min
type: string
type: object
+ UpdateOpenAPIResponse:
+ description: Response for `UpdateOpenAPI`.
+ properties:
+ data:
+ $ref: '#/components/schemas/UpdateOpenAPIResponseData'
+ type: object
+ UpdateOpenAPIResponseAttributes:
+ description: Attributes for `UpdateOpenAPI`.
+ properties:
+ failed_endpoints:
+ description: List of endpoints which couldn't be parsed.
+ items:
+ $ref: '#/components/schemas/OpenAPIEndpoint'
+ type: array
+ type: object
+ UpdateOpenAPIResponseData:
+ description: Data envelope for `UpdateOpenAPIResponse`.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/UpdateOpenAPIResponseAttributes'
+ id:
+ $ref: '#/components/schemas/ApiID'
+ type: object
UsageApplicationSecurityMonitoringResponse:
description: Application Security Monitoring usage response.
properties:
@@ -20217,12 +22089,34 @@ components:
type: string
x-enum-varnames:
- USER_INVITATIONS
+ UserRelationshipData:
+ description: Relationship to user object.
+ properties:
+ id:
+ description: A unique identifier that represents the user.
+ example: 00000000-0000-0000-0000-000000000000
+ type: string
+ type:
+ $ref: '#/components/schemas/UserResourceType'
+ required:
+ - id
+ - type
+ type: object
UserRelationships:
description: Relationships of the user object.
properties:
roles:
$ref: '#/components/schemas/RelationshipToRoles'
type: object
+ UserResourceType:
+ default: user
+ description: User resource type.
+ enum:
+ - user
+ example: user
+ type: string
+ x-enum-varnames:
+ - USER
UserResponse:
description: Response containing information about a single user.
properties:
@@ -20301,6 +22195,10 @@ components:
required:
- type
type: object
+ UserTeamIncluded:
+ description: Included resources related to the team membership
+ oneOf:
+ - $ref: '#/components/schemas/User'
UserTeamPermission:
description: A user's permissions for a given team
properties:
@@ -20355,6 +22253,11 @@ components:
properties:
data:
$ref: '#/components/schemas/UserTeam'
+ included:
+ description: Resources related to the team memberships
+ items:
+ $ref: '#/components/schemas/UserTeamIncluded'
+ type: array
type: object
UserTeamRole:
description: The user's role within the team
@@ -20417,6 +22320,11 @@ components:
items:
$ref: '#/components/schemas/UserTeam'
type: array
+ included:
+ description: Resources related to the team memberships
+ items:
+ $ref: '#/components/schemas/UserTeamIncluded'
+ type: array
links:
$ref: '#/components/schemas/TeamsResponseLinks'
meta:
@@ -20459,6 +22367,18 @@ components:
required:
- data
type: object
+ UsersRelationship:
+ description: Relationship to users.
+ properties:
+ data:
+ description: Relationships to user objects.
+ example: []
+ items:
+ $ref: '#/components/schemas/UserRelationshipData'
+ type: array
+ required:
+ - data
+ type: object
UsersResponse:
description: Response containing information about multiple users.
properties:
@@ -20531,6 +22451,8 @@ components:
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.
+ cases_read: Read all cases data.
+ cases_write: Create, update and delete cases data.
ci_visibility_pipelines_write: Create CI Visibility pipeline spans using
the API.
ci_visibility_read: View CI Visibility.
@@ -20781,6 +22703,195 @@ paths:
tags:
- Key Management
x-codegen-request-body-name: body
+ /api/v2/apicatalog/api/{id}:
+ delete:
+ description: Delete a specific API by ID.
+ operationId: DeleteOpenAPI
+ parameters:
+ - description: ID of the API to delete
+ in: path
+ name: id
+ required: true
+ schema:
+ $ref: '#/components/schemas/ApiID'
+ responses:
+ '204':
+ description: API deleted successfully
+ '400':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: Bad request
+ '403':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: Forbidden
+ '404':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: API not found error
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ summary: Delete an API
+ tags:
+ - API Management
+ x-unstable: '**Note**: This endpoint is in public beta.
+
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
+ /api/v2/apicatalog/api/{id}/openapi:
+ get:
+ description: Retrieve information about a specific API in [OpenAPI](https://spec.openapis.org/oas/latest.html)
+ format file.
+ operationId: GetOpenAPI
+ parameters:
+ - description: ID of the API to retrieve
+ in: path
+ name: id
+ required: true
+ schema:
+ $ref: '#/components/schemas/ApiID'
+ responses:
+ '200':
+ content:
+ multipart/form-data:
+ schema:
+ format: binary
+ type: string
+ description: OK
+ '400':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: Bad request
+ '403':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: Forbidden
+ '404':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: API not found error
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ summary: Get an API
+ tags:
+ - API Management
+ x-unstable: '**Note**: This endpoint is in public beta.
+
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
+ put:
+ description: 'Update information about a specific API. The given content will
+ replace all API content of the given ID.
+
+ The ID is returned by the create API, or can be found in the URL in the API
+ catalog UI.
+
+ '
+ operationId: UpdateOpenAPI
+ parameters:
+ - description: ID of the API to modify
+ in: path
+ name: id
+ required: true
+ schema:
+ $ref: '#/components/schemas/ApiID'
+ requestBody:
+ content:
+ multipart/form-data:
+ schema:
+ $ref: '#/components/schemas/OpenAPIFile'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/UpdateOpenAPIResponse'
+ description: API updated successfully
+ '400':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: Bad request
+ '403':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: Forbidden
+ '404':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: API not found error
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ summary: Update an API
+ tags:
+ - API Management
+ x-unstable: '**Note**: This endpoint is in public beta.
+
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
+ /api/v2/apicatalog/openapi:
+ post:
+ description: 'Create a new API from the [OpenAPI](https://spec.openapis.org/oas/latest.html)
+ specification given.
+
+ It supports version `2.0`, `3.0` and `3.1` of the specification. A specific
+ extension section, `x-datadog`,
+
+ let you specify the `teamHandle` for your team responsible for the API in
+ Datadog.
+
+ It returns the created API ID.
+
+ '
+ operationId: CreateOpenAPI
+ requestBody:
+ content:
+ multipart/form-data:
+ schema:
+ $ref: '#/components/schemas/OpenAPIFile'
+ required: true
+ responses:
+ '201':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateOpenAPIResponse'
+ description: API created successfully
+ '400':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: Bad request
+ '403':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: Forbidden
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ summary: Create a new API
+ tags:
+ - API Management
+ x-unstable: '**Note**: This endpoint is in public beta.
+
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
/api/v2/apm/config/metrics:
get:
description: Get the list of configured span-based metrics with their definitions.
@@ -21399,137 +23510,603 @@ paths:
appKeyAuth: []
- AuthZ:
- user_access_manage
- summary: Create an AuthN Mapping
+ 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)
- /api/v2/authn_mappings/{authn_mapping_id}:
- delete:
- description: Delete an AuthN Mapping specified by AuthN Mapping UUID.
- operationId: DeleteAuthNMapping
+ /api/v2/cases:
+ get:
+ description: Search cases.
+ operationId: SearchCases
parameters:
- - $ref: '#/components/parameters/AuthNMappingID'
+ - $ref: '#/components/parameters/PageSize'
+ - $ref: '#/components/parameters/PageOffset'
+ - $ref: '#/components/parameters/CaseSortableFieldParameter'
+ - description: Search query
+ in: query
+ name: filter
+ required: false
+ schema:
+ example: status:open (team:case-management OR team:event-management)
+ type: string
+ - description: Specify if order is ascending or not
+ in: query
+ name: sort[asc]
+ required: false
+ schema:
+ default: false
+ type: boolean
responses:
- '204':
- description: OK
- '403':
+ '200':
content:
application/json:
schema:
- $ref: '#/components/schemas/APIErrorResponse'
- description: Authentication Error
+ $ref: '#/components/schemas/CasesResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '401':
+ $ref: '#/components/responses/UnauthorizedResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
'404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - cases_read
+ summary: Search cases
+ tags:
+ - Case Management
+ x-pagination:
+ limitParam: page[size]
+ pageOffsetParam: page[offset]
+ resultsPath: data
+ post:
+ description: Create a Case
+ operationId: CreateCase
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CaseCreateRequest'
+ description: Case payload
+ required: true
+ responses:
+ '201':
content:
application/json:
schema:
- $ref: '#/components/schemas/APIErrorResponse'
- description: Not Found
+ $ref: '#/components/schemas/CaseResponse'
+ description: CREATED
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '401':
+ $ref: '#/components/responses/UnauthorizedResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
security:
- apiKeyAuth: []
appKeyAuth: []
- AuthZ:
- - user_access_manage
- summary: Delete an AuthN Mapping
+ - cases_write
+ summary: Create a case
tags:
- - AuthN Mappings
- x-permission: OR(USER_ACCESS_MANAGE)
+ - Case Management
+ /api/v2/cases/projects:
get:
- description: Get an AuthN Mapping specified by the AuthN Mapping UUID.
- operationId: GetAuthNMapping
- parameters:
- - $ref: '#/components/parameters/AuthNMappingID'
+ description: Get all projects.
+ operationId: GetProjects
responses:
'200':
content:
application/json:
schema:
- $ref: '#/components/schemas/AuthNMappingResponse'
+ $ref: '#/components/schemas/ProjectsResponse'
description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '401':
+ $ref: '#/components/responses/UnauthorizedResponse'
'403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - cases_read
+ summary: Get all projects
+ tags:
+ - Case Management
+ post:
+ description: Create a project.
+ operationId: CreateProject
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ProjectCreateRequest'
+ description: Project payload
+ required: true
+ responses:
+ '201':
content:
application/json:
schema:
- $ref: '#/components/schemas/APIErrorResponse'
- description: Authentication Error
+ $ref: '#/components/schemas/ProjectResponse'
+ description: CREATED
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '401':
+ $ref: '#/components/responses/UnauthorizedResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - cases_write
+ summary: Create a project
+ tags:
+ - Case Management
+ /api/v2/cases/projects/{project_id}:
+ delete:
+ description: Remove a project using the project's `id`.
+ operationId: DeleteProject
+ parameters:
+ - $ref: '#/components/parameters/ProjectIDPathParameter'
+ responses:
+ '204':
+ description: No Content
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
- description: Not Found
+ description: API error response
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
security:
- apiKeyAuth: []
appKeyAuth: []
- - AuthZ: []
- summary: Get an AuthN Mapping by UUID
+ - AuthZ:
+ - cases_write
+ summary: Remove a project
tags:
- - AuthN Mappings
- x-permission: OPEN()
- patch:
- description: Edit an AuthN Mapping.
- operationId: UpdateAuthNMapping
+ - Case Management
+ get:
+ description: Get the details of a project by `project_id`.
+ operationId: GetProject
parameters:
- - $ref: '#/components/parameters/AuthNMappingID'
+ - $ref: '#/components/parameters/ProjectIDPathParameter'
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ProjectResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '401':
+ $ref: '#/components/responses/UnauthorizedResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - cases_read
+ summary: Get the details of a project
+ tags:
+ - Case Management
+ /api/v2/cases/{case_id}:
+ get:
+ description: Get the details of case by `case_id`
+ operationId: GetCase
+ parameters:
+ - $ref: '#/components/parameters/CaseIDPathParameter'
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CaseResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '401':
+ $ref: '#/components/responses/UnauthorizedResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - cases_read
+ summary: Get the details of a case
+ tags:
+ - Case Management
+ /api/v2/cases/{case_id}/archive:
+ post:
+ description: Archive case
+ operationId: ArchiveCase
+ parameters:
+ - $ref: '#/components/parameters/CaseIDPathParameter'
requestBody:
content:
application/json:
schema:
- $ref: '#/components/schemas/AuthNMappingUpdateRequest'
+ $ref: '#/components/schemas/CaseEmptyRequest'
+ description: Archive case payload
required: true
responses:
'200':
content:
application/json:
schema:
- $ref: '#/components/schemas/AuthNMappingResponse'
+ $ref: '#/components/schemas/CaseResponse'
description: OK
'400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '401':
+ $ref: '#/components/responses/UnauthorizedResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - cases_write
+ summary: Archive case
+ tags:
+ - Case Management
+ /api/v2/cases/{case_id}/assign:
+ post:
+ description: Assign case to a user
+ operationId: AssignCase
+ parameters:
+ - $ref: '#/components/parameters/CaseIDPathParameter'
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CaseAssignRequest'
+ description: Assign case payload
+ required: true
+ responses:
+ '200':
content:
application/json:
schema:
- $ref: '#/components/schemas/APIErrorResponse'
- description: Bad Request
+ $ref: '#/components/schemas/CaseResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '401':
+ $ref: '#/components/responses/UnauthorizedResponse'
'403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - cases_write
+ summary: Assign case
+ tags:
+ - Case Management
+ /api/v2/cases/{case_id}/priority:
+ post:
+ description: Update case priority
+ operationId: UpdatePriority
+ parameters:
+ - $ref: '#/components/parameters/CaseIDPathParameter'
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CaseUpdatePriorityRequest'
+ description: Case priority update payload
+ required: true
+ responses:
+ '200':
content:
application/json:
schema:
- $ref: '#/components/schemas/APIErrorResponse'
- description: Authentication Error
+ $ref: '#/components/schemas/CaseResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '401':
+ $ref: '#/components/responses/UnauthorizedResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
'404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - cases_write
+ summary: Update case priority
+ tags:
+ - Case Management
+ /api/v2/cases/{case_id}/status:
+ post:
+ description: Update case status
+ operationId: UpdateStatus
+ parameters:
+ - $ref: '#/components/parameters/CaseIDPathParameter'
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CaseUpdateStatusRequest'
+ description: Case status update payload
+ required: true
+ responses:
+ '200':
content:
application/json:
schema:
- $ref: '#/components/schemas/APIErrorResponse'
- description: Not Found
- '409':
+ $ref: '#/components/schemas/CaseResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '401':
+ $ref: '#/components/responses/UnauthorizedResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - cases_write
+ summary: Update case status
+ tags:
+ - Case Management
+ /api/v2/cases/{case_id}/unarchive:
+ post:
+ description: Unarchive case
+ operationId: UnarchiveCase
+ parameters:
+ - $ref: '#/components/parameters/CaseIDPathParameter'
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CaseEmptyRequest'
+ description: Unarchive case payload
+ required: true
+ responses:
+ '200':
content:
application/json:
schema:
- $ref: '#/components/schemas/APIErrorResponse'
- description: Conflict
- '422':
+ $ref: '#/components/schemas/CaseResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '401':
+ $ref: '#/components/responses/UnauthorizedResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - cases_write
+ summary: Unarchive case
+ tags:
+ - Case Management
+ /api/v2/cases/{case_id}/unassign:
+ post:
+ description: Unassign case
+ operationId: UnassignCase
+ parameters:
+ - $ref: '#/components/parameters/CaseIDPathParameter'
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CaseEmptyRequest'
+ description: Unassign case payload
+ required: true
+ responses:
+ '200':
content:
application/json:
schema:
- $ref: '#/components/schemas/APIErrorResponse'
- description: Unprocessable Entity
+ $ref: '#/components/schemas/CaseResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '401':
+ $ref: '#/components/responses/UnauthorizedResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
security:
- apiKeyAuth: []
appKeyAuth: []
- AuthZ:
- - user_access_manage
- summary: Edit an AuthN Mapping
+ - cases_write
+ summary: Unassign case
tags:
- - AuthN Mappings
- x-codegen-request-body-name: body
- x-permission: OR(USER_ACCESS_MANAGE)
+ - Case Management
/api/v2/ci/pipeline:
post:
description: 'Send your pipeline event to your Datadog platform over HTTP. For
@@ -21802,8 +24379,8 @@ paths:
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/).
+ description: 'List endpoint returns CI Visibility test events that match a [search
+ query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/).
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).
@@ -21886,8 +24463,8 @@ paths:
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/).
+ description: 'List endpoint returns CI Visibility test events that match a [search
+ query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/).
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).
@@ -22100,9 +24677,6 @@ paths:
description: Forbidden
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
- security:
- - apiKeyAuth: []
- appKeyAuth: []
summary: List Cloud Cost Management AWS CUR configs
tags:
- Cloud Cost Management
@@ -22140,9 +24714,6 @@ paths:
description: Forbidden
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
- security:
- - apiKeyAuth: []
- appKeyAuth: []
summary: Create Cloud Cost Management AWS CUR config
tags:
- Cloud Cost Management
@@ -22173,9 +24744,6 @@ paths:
description: Not Found
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
- security:
- - apiKeyAuth: []
- appKeyAuth: []
summary: Delete Cloud Cost Management AWS CUR config
tags:
- Cloud Cost Management
@@ -22209,9 +24777,6 @@ paths:
description: Forbidden
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
- security:
- - apiKeyAuth: []
- appKeyAuth: []
summary: Update Cloud Cost Management AWS CUR config
tags:
- Cloud Cost Management
@@ -22253,9 +24818,6 @@ paths:
description: Forbidden
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
- security:
- - apiKeyAuth: []
- appKeyAuth: []
summary: List related AWS accounts
tags:
- Cloud Cost Management
@@ -22282,9 +24844,6 @@ paths:
description: Forbidden
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
- security:
- - apiKeyAuth: []
- appKeyAuth: []
summary: List Cloud Cost Management Azure configs
tags:
- Cloud Cost Management
@@ -22322,9 +24881,6 @@ paths:
description: Forbidden
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
- security:
- - apiKeyAuth: []
- appKeyAuth: []
summary: Create Cloud Cost Management Azure configs
tags:
- Cloud Cost Management
@@ -22355,9 +24911,6 @@ paths:
description: Not Found
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
- security:
- - apiKeyAuth: []
- appKeyAuth: []
summary: Delete Cloud Cost Management Azure config
tags:
- Cloud Cost Management
@@ -22397,9 +24950,6 @@ paths:
description: Forbidden
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
- security:
- - apiKeyAuth: []
- appKeyAuth: []
summary: Update Cloud Cost Management Azure config
tags:
- Cloud Cost Management
@@ -22426,9 +24976,6 @@ paths:
description: Forbidden
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
- security:
- - apiKeyAuth: []
- appKeyAuth: []
summary: Cloud Cost Enabled
tags:
- Cloud Cost Management
@@ -22439,7 +24986,7 @@ 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.
+ a given month becomes available no later than the 19th of the following month.
operationId: GetActiveBillingDimensions
responses:
'200':
@@ -22469,7 +25016,8 @@ paths:
security:
- apiKeyAuth: []
appKeyAuth: []
- - AuthZ: []
+ - AuthZ:
+ - usage_read
summary: Get active billing dimensions for cost attribution
tags:
- Usage Metering
@@ -22480,7 +25028,7 @@ paths:
get:
description: "Get monthly cost attribution by tag across multi-org and single
root-org accounts.\nCost Attribution data for a given month becomes available
- no later than the 17th of the following month.\nThis API endpoint is paginated.
+ no later than the 19th of the following month.\nThis API endpoint is paginated.
To make sure you receive all records, check if the value of `next_record_id`
is\nset in the response. If it is, make another request and pass `next_record_id`
as a parameter.\nPseudo code example:\n```\nresponse := GetMonthlyCostAttribution(start_month,
@@ -22590,7 +25138,8 @@ paths:
security:
- apiKeyAuth: []
appKeyAuth: []
- - AuthZ: []
+ - AuthZ:
+ - usage_read
summary: Get Monthly Cost Attribution
tags:
- Usage Metering
@@ -25838,6 +28387,135 @@ paths:
tags:
- Logs Archives
x-codegen-request-body-name: body
+ /api/v2/logs/config/custom-destinations:
+ get:
+ description: Get the list of configured custom destinations in your organization
+ with their definitions.
+ operationId: ListLogsCustomDestinations
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CustomDestinationsResponse'
+ description: OK
+ '403':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/APIErrorResponse'
+ description: Forbidden
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ summary: Get all custom destinations
+ tags:
+ - Logs Custom Destinations
+ post:
+ description: Create a custom destination in your organization.
+ operationId: CreateLogsCustomDestination
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CustomDestinationCreateRequest'
+ description: The definition of the new custom destination.
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CustomDestinationResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '409':
+ $ref: '#/components/responses/ConflictResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ summary: Create a custom destination
+ tags:
+ - Logs Custom Destinations
+ x-codegen-request-body-name: body
+ /api/v2/logs/config/custom-destinations/{custom_destination_id}:
+ delete:
+ description: Delete a specific custom destination in your organization.
+ operationId: DeleteLogsCustomDestination
+ parameters:
+ - $ref: '#/components/parameters/CustomDestinationId'
+ responses:
+ '204':
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ summary: Delete a custom destination
+ tags:
+ - Logs Custom Destinations
+ get:
+ description: Get a specific custom destination in your organization.
+ operationId: GetLogsCustomDestination
+ parameters:
+ - $ref: '#/components/parameters/CustomDestinationId'
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CustomDestinationResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ summary: Get a custom destination
+ tags:
+ - Logs Custom Destinations
+ patch:
+ description: Update the given fields of a specific custom destination in your
+ organization.
+ operationId: UpdateLogsCustomDestination
+ parameters:
+ - $ref: '#/components/parameters/CustomDestinationId'
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CustomDestinationUpdateRequest'
+ description: New definition of the custom destination's fields.
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CustomDestinationResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '403':
+ $ref: '#/components/responses/ForbiddenResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '409':
+ $ref: '#/components/responses/ConflictResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ summary: Update a custom destination
+ tags:
+ - Logs Custom Destinations
+ x-codegen-request-body-name: body
/api/v2/logs/config/metrics:
get:
description: Get the list of configured log-based metrics with their definitions.
@@ -26451,6 +29129,51 @@ paths:
summary: List tags by metric name
tags:
- Metrics
+ /api/v2/metrics/{metric_name}/assets:
+ get:
+ description: Returns dashboards, monitors, notebooks, and SLOs that a metric
+ is stored in, if any. Updated every 24 hours.
+ operationId: ListMetricAssets
+ parameters:
+ - $ref: '#/components/parameters/MetricName'
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/MetricAssetsResponse'
+ description: Success
+ '400':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/APIErrorResponse'
+ description: API error response.
+ '403':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/APIErrorResponse'
+ description: API error response.
+ '404':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/APIErrorResponse'
+ description: API error response.
+ '429':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/APIErrorResponse'
+ description: Too Many Requests
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Related Assets to a Metric
+ tags:
+ - Metrics
/api/v2/metrics/{metric_name}/estimate:
get:
description: Returns the estimated cardinality for a metric with a given tag,
@@ -26467,7 +29190,8 @@ paths:
schema:
type: string
- description: The number of hours of look back (from now) to estimate cardinality
- with.
+ with. Estimates are based on historical data, and unspecified fields default
+ to the minimum 49 hours.
example: 49
in: query
name: filter[hours_ago]
@@ -26475,6 +29199,7 @@ paths:
schema:
format: int32
maximum: 2147483647
+ minimum: 49
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.
@@ -26542,19 +29267,6 @@ paths:
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
@@ -27618,10 +30330,9 @@ paths:
- 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.
+ (RUM), Cloud Cost Management, and Log Management data sources.
- Support for logs is in beta. We are gradually onboarding support for more
- sources. If you have any
+ 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:
@@ -27661,12 +30372,159 @@ paths:
- 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.
+ (RUM), Cloud Cost Management, and Log Management data sources.
- Support for logs is in beta. We are gradually onboarding support for more
- sources. If you have any
+ We are gradually onboarding support for more sources. If you have any
feedback, contact [Datadog Support](https://docs.datadoghq.com/help/).'
+ /api/v2/remote_config/products/cws/agent_rules:
+ get:
+ description: Get the list of Cloud Security Management Threats Agent rules.
+ operationId: ListCSMThreatsAgentRules
+ 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 CSM Threats Agent rules
+ tags:
+ - Cloud Workload Security
+ post:
+ description: Create a new Cloud Security Management Threats Agent rule with
+ the given parameters.
+ operationId: CreateCSMThreatsAgentRule
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateRequest'
+ description: The definition of the new Agent rule.
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '403':
+ $ref: '#/components/responses/NotAuthorizedResponse'
+ '409':
+ $ref: '#/components/responses/ConflictResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ summary: Create a CSM Threats Agent rule
+ tags:
+ - Cloud Workload Security
+ x-codegen-request-body-name: body
+ /api/v2/remote_config/products/cws/agent_rules/{agent_rule_id}:
+ delete:
+ description: Delete a specific Cloud Security Management Threats Agent rule.
+ operationId: DeleteCSMThreatsAgentRule
+ 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 CSM Threats Agent rule
+ tags:
+ - Cloud Workload Security
+ get:
+ description: Get the details of a specific Cloud Security Management Threats
+ Agent rule.
+ operationId: GetCSMThreatsAgentRule
+ 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 CSM Threats Agent rule
+ tags:
+ - Cloud Workload Security
+ patch:
+ description: 'Update a specific Cloud Security Management Threats Agent rule.
+
+ Returns the Agent rule object when the request is successful.'
+ operationId: UpdateCSMThreatsAgentRule
+ 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 CSM Threats Agent rule
+ tags:
+ - Cloud Workload Security
+ x-codegen-request-body-name: body
+ /api/v2/remote_config/products/cws/policy/download:
+ get:
+ description: 'The download endpoint generates a CSM Threats policy file from
+ your currently active
+
+ CSM Threats 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: DownloadCSMThreatsPolicy
+ responses:
+ '200':
+ content:
+ application/zip:
+ schema:
+ format: binary
+ type: string
+ description: OK
+ '403':
+ $ref: '#/components/responses/NotAuthorizedResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ summary: Get the latest CSM Threats policy
+ tags:
+ - Cloud Workload Security
/api/v2/restriction_policy/{resource_id}:
delete:
description: Deletes the restriction policy associated with a specified resource.
@@ -28769,10 +31627,9 @@ paths:
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),
+ x-unstable: '**Note**: This endpoint is in public beta.
- and we will be in touch. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
/api/v2/scorecard/rules:
get:
description: Fetch all rules.
@@ -28897,10 +31754,9 @@ paths:
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),
+ x-unstable: '**Note**: This endpoint is in public beta.
- and we will be in touch. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
+ 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.
@@ -28926,10 +31782,9 @@ paths:
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),
+ x-unstable: '**Note**: This endpoint is in public beta.
- and we will be in touch. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
/api/v2/security/cloud_workload/policy/download:
get:
description: 'The download endpoint generates a Cloud Workload Security policy
@@ -29232,6 +32087,149 @@ paths:
tags:
- Security Monitoring
x-codegen-request-body-name: body
+ /api/v2/security_monitoring/configuration/suppressions:
+ get:
+ description: Get the list of all suppression rules.
+ operationId: ListSecurityMonitoringSuppressions
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse'
+ description: OK
+ '403':
+ $ref: '#/components/responses/NotAuthorizedResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - security_monitoring_suppressions_read
+ summary: Get all suppression rules
+ tags:
+ - Security Monitoring
+ post:
+ description: Create a new suppression rule.
+ operationId: CreateSecurityMonitoringSuppression
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateRequest'
+ description: The definition of the new suppression rule.
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '403':
+ $ref: '#/components/responses/NotAuthorizedResponse'
+ '409':
+ $ref: '#/components/responses/ConflictResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - security_monitoring_suppressions_write
+ summary: Create a suppression rule
+ tags:
+ - Security Monitoring
+ x-codegen-request-body-name: body
+ /api/v2/security_monitoring/configuration/suppressions/{suppression_id}:
+ delete:
+ description: Delete a specific suppression rule.
+ operationId: DeleteSecurityMonitoringSuppression
+ parameters:
+ - $ref: '#/components/parameters/SecurityMonitoringSuppressionID'
+ responses:
+ '204':
+ description: OK
+ '403':
+ $ref: '#/components/responses/NotAuthorizedResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - security_monitoring_suppressions_write
+ summary: Delete a suppression rule
+ tags:
+ - Security Monitoring
+ get:
+ description: Get the details of a specific suppression rule.
+ operationId: GetSecurityMonitoringSuppression
+ parameters:
+ - $ref: '#/components/parameters/SecurityMonitoringSuppressionID'
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse'
+ description: OK
+ '403':
+ $ref: '#/components/responses/NotAuthorizedResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - security_monitoring_suppressions_read
+ summary: Get a suppression rule
+ tags:
+ - Security Monitoring
+ patch:
+ description: Update a specific suppression rule.
+ operationId: UpdateSecurityMonitoringSuppression
+ parameters:
+ - $ref: '#/components/parameters/SecurityMonitoringSuppressionID'
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateRequest'
+ description: New definition of the suppression rule. Supports partial updates.
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse'
+ description: OK
+ '400':
+ $ref: '#/components/responses/BadRequestResponse'
+ '403':
+ $ref: '#/components/responses/NotAuthorizedResponse'
+ '404':
+ $ref: '#/components/responses/NotFoundResponse'
+ '409':
+ $ref: '#/components/responses/ConcurrentModificationResponse'
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ:
+ - security_monitoring_suppressions_write
+ summary: Update a suppression rule
+ tags:
+ - Security Monitoring
/api/v2/security_monitoring/rules:
get:
description: List rules.
@@ -30294,6 +33292,7 @@ paths:
x-codegen-request-body-name: body
/api/v2/services:
get:
+ deprecated: true
description: Get all incident services uploaded for the requesting user's organization.
If the `include[users]` query parameter is provided, the included attribute
will contain the users related to these incident services.
@@ -30328,10 +33327,9 @@ paths:
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/).'
+ x-unstable: '**Note**: This endpoint is deprecated.'
post:
+ deprecated: true
description: Creates a new incident service.
operationId: CreateIncidentService
requestBody:
@@ -30367,9 +33365,7 @@ paths:
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/).'
+ x-unstable: '**Note**: This endpoint is deprecated.'
/api/v2/services/definitions:
get:
description: Get a list of all service definitions from the Datadog Service
@@ -30400,7 +33396,7 @@ paths:
- Service Definition
x-pagination:
limitParam: page[size]
- pageOffsetParam: page[number]
+ pageParam: page[number]
resultsPath: data
post:
description: Create or update service definition in the Datadog Service Catalog.
@@ -30494,6 +33490,7 @@ paths:
- Service Definition
/api/v2/services/{service_id}:
delete:
+ deprecated: true
description: Deletes an existing incident service.
operationId: DeleteIncidentService
parameters:
@@ -30519,10 +33516,9 @@ paths:
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/).'
+ x-unstable: '**Note**: This endpoint is deprecated.'
get:
+ deprecated: true
description: 'Get details of an incident service. If the `include[users]` query
parameter is provided,
@@ -30556,10 +33552,9 @@ paths:
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/).'
+ x-unstable: '**Note**: This endpoint is deprecated.'
patch:
+ deprecated: true
description: Updates an existing incident service. Only provide the attributes
which should be updated as this request is a partial update.
operationId: UpdateIncidentService
@@ -30598,9 +33593,7 @@ paths:
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/).'
+ x-unstable: '**Note**: This endpoint is deprecated.'
/api/v2/spans/analytics/aggregate:
post:
description: 'The API endpoint to aggregate spans into buckets and compute metrics
@@ -31294,6 +34287,10 @@ paths:
summary: Get team memberships
tags:
- Teams
+ x-pagination:
+ limitParam: page[size]
+ pageParam: page[number]
+ resultsPath: data
post:
description: Add a user to a team.
operationId: CreateTeamMembership
@@ -31998,10 +34995,10 @@ paths:
`application_security`, `audit_trail`, `serverless`, `ci_app`, `cloud_cost_management`,
`csm_container_enterprise`, `csm_host_enterprise`, `cspm`, `custom_events`,
- `cws`, `dbm`, `fargate`,
+ `cws`, `dbm`, `error_tracking`,
- `infra_hosts`, `incident_management`, `indexed_logs`, `indexed_spans`, `ingested_spans`,
- `iot`,
+ `fargate`, `infra_hosts`, `incident_management`, `indexed_logs`, `indexed_spans`,
+ `ingested_spans`, `iot`,
`lambda_traced_invocations`, `logs`, `network_flows`, `network_hosts`, `netflow_monitoring`,
`observability_pipelines`,
@@ -32098,7 +35095,7 @@ paths:
- Usage Metering
/api/v2/usage/lambda_traced_invocations:
get:
- description: 'Get hourly usage for lambda traced invocations.
+ 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)'
@@ -32152,7 +35149,7 @@ paths:
appKeyAuth: []
- AuthZ:
- usage_read
- summary: Get hourly usage for lambda traced invocations
+ summary: Get hourly usage for Lambda traced invocations
tags:
- Usage Metering
/api/v2/usage/observability_pipelines:
@@ -32736,44 +35733,68 @@ servers:
default: api
description: The subdomain where the API is deployed.
tags:
+- description: Configure your API endpoints through the Datadog API.
+ name: API Management
- description: Manage configuration of [APM retention filters](https://app.datadoghq.com/apm/traces/retention-filters)
for your organization. You need an API and application key with Admin rights to
- interact with this endpoint.
+ interact with this endpoint. See [retention filters](https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/#retention-filters)
+ on the Trace Retention page for more information.
externalDocs:
description: Find out more at
url: https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/
name: APM Retention Filters
- description: Search your Audit Logs events over HTTP.
name: Audit
-- description: '[AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example)
+- description: '[The 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
+ is used to automatically map groups of users to roles in Datadog using attributes
- sent from Identity Providers.'
+ sent from Identity Providers. Use these endpoints to manage your AuthN Mappings.'
name: AuthN Mappings
- description: Search or aggregate your CI Visibility pipeline events and send them
- to your Datadog site over HTTP.
+ to your Datadog site over HTTP. See the [CI Pipeline Visibility in Datadog page](https://docs.datadoghq.com/continuous_integration/pipelines/)
+ for more information.
name: CI Visibility Pipelines
-- description: Search or aggregate your CI Visibility test events over HTTP.
+- description: Search or aggregate your CI Visibility test events over HTTP. See the
+ [Test Visibility in Datadog page](https://docs.datadoghq.com/tests/) for more
+ information.
name: CI Visibility Tests
-- description: The Cloud Cost Management API allows you to setup, edit and delete
- cloud cost management accounts for AWS & Azure.
+- description: Cloud Security Management Threats (CSM Threats) monitors file, network,
+ and process activity across your environment to detect real-time threats to your
+ infrastructure. See [Cloud Security Management Threats](https://docs.datadoghq.com/security/threats/)
+ for more information on setting up CSM Threats.
+ name: CSM Threats
+- description: View and manage cases and projects within Case Management. See the
+ [Case Management page](https://docs.datadoghq.com/service_management/case_management/)
+ for more information.
+ name: Case Management
+- description: The Cloud Cost Management API allows you to set up, edit, and delete
+ Cloud Cost Management accounts for AWS and Azure. See the [Cloud Cost Management
+ page](https://docs.datadoghq.com/cloud_cost_management/) for more information.
name: Cloud Cost Management
- description: Workload activity security rules for generating events using the Datadog
- security Agent.
+ security Agent. See the [Setting up CSM Workload Security page](https://docs.datadoghq.com/security/cloud_security_management/setup/csm_workload_security/)
+ for more information.
name: Cloud Workload Security
-- description: Configure your Datadog Cloudflare integration directly through the
- Datadog API.
+- description: Manage your Datadog Cloudflare integration directly through the Datadog
+ API. See the [Cloudflare integration page](https://docs.datadoghq.com/integrations/cloudflare/)
+ for more information.
name: Cloudflare Integration
-- description: Configure your Datadog Confluent Cloud integration directly through
- the Datadog API.
+- description: Manage your Datadog Confluent Cloud integration accounts and account
+ resources directly through the Datadog API. See the [Confluent Cloud page](https://docs.datadoghq.com/integrations/confluent_cloud/)
+ for more information.
name: Confluent Cloud
- description: The Container Images API allows you to query Container Image data for
- your organization.
+ your organization. See the [Container Images View page](https://docs.datadoghq.com/infrastructure/containers/container_images/)
+ for more information.
name: Container Images
- description: The Containers API allows you to query container data for your organization.
+ See the [Container Monitoring page](https://docs.datadoghq.com/containers/) for
+ more information.
name: Containers
- description: Send events for DORA Metrics to measure and improve software delivery.
+ See the [DORA Metrics page](https://docs.datadoghq.com/dora_metrics/) for more
+ information.
name: DORA Metrics
- description: 'Interact with your dashboard lists through the API to
@@ -32793,18 +35814,15 @@ tags:
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
+- description: 'The Event Management API allows you to programmatically post events
+ to the Events Explorer
- 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.'
+ and fetch events from the Events Explorer. See the [Event Management page](https://docs.datadoghq.com/service_management/events/)
+ for more information.'
name: Events
-- description: Configure your Datadog Fastly integration directly through the Datadog
- API.
+- description: Manage your Datadog Fastly integration accounts and services directly
+ through the Datadog API. See the [Fastly integration page](https://docs.datadoghq.com/integrations/fastly/)
+ for more information.
name: Fastly Integration
- description: 'Configure your Datadog-Google Cloud Platform (GCP) integration directly
@@ -32821,15 +35839,19 @@ tags:
This is an enterprise-only feature. Request access by
- contacting Datadog support.'
+ contacting Datadog support, or see the [IP Allowlist page](https://docs.datadoghq.com/account_management/org_settings/ip_allowlist/)
+ for more information.'
name: IP Allowlist
- description: Create, update, delete, and retrieve services which can be associated
- with incidents.
+ with incidents. See the [Incident Management page](https://docs.datadoghq.com/service_management/incident_management/)
+ for more information.
name: Incident Services
- description: The Incident Teams endpoints are deprecated. See the [Teams API endpoints](https://docs.datadoghq.com/api/latest/teams/)
to create, update, delete, and retrieve teams which can be associated with incidents.
name: Incident Teams
-- description: Manage incident response.
+- description: Manage incident response, as well as associated attachments, metadata,
+ and todos. See the [Incident Management page](https://docs.datadoghq.com/service_management/incident_management/)
+ for more information.
name: Incidents
- description: 'Manage your Datadog API and application keys. You need an API key
and
@@ -32844,17 +35866,28 @@ tags:
url: https://docs.datadoghq.com/account_management/api-app-keys/
name: Key Management
- description: Search your logs and send them to your Datadog platform over HTTP.
+ See the [Log Management page](https://docs.datadoghq.com/logs/) for more information.
name: Logs
- description: 'Archives forward all the logs ingested to a cloud storage system.
See the [Archives Page](https://app.datadoghq.com/logs/pipelines/archives)
- for a list of the archives currently configured in web UI.'
+ for a list of the archives currently configured in Datadog.'
externalDocs:
description: Find out more at
url: https://docs.datadoghq.com/logs/archives/
name: Logs Archives
+- description: 'Custom Destinations forward all the logs ingested to an external destination.
+
+
+ See the [Custom Destinations Page](https://app.datadoghq.com/logs/pipelines/log-forwarding/custom-destinations)
+
+ for a list of the custom destinations currently configured in web UI.'
+ externalDocs:
+ description: Find out more at
+ url: https://docs.datadoghq.com/logs/log_configuration/forwarding_custom_destinations/
+ name: Logs Custom Destinations
- description: Manage configuration of [log-based metrics](https://app.datadoghq.com/logs/pipelines/generate-metrics)
for your organization.
externalDocs:
@@ -32868,7 +35901,8 @@ tags:
points\nand as the timeframe over which a metric is viewed increases,\naggregation
between points occurs to stay below that set number.\n\nThe Post, Patch, and Delete
`manage_tags` API methods can only be performed by\na user who has the `Manage
- Tags for Metrics` permission."
+ Tags for Metrics` permission.\n\nSee the [Metrics page](https://docs.datadoghq.com/metrics/)
+ for more information."
name: Metrics
- description: '[Monitors](https://docs.datadoghq.com/monitors) allow you to watch
a metric or check that you care about and
@@ -32884,8 +35918,8 @@ tags:
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.
+- description: Configure your [Datadog Okta integration](https://docs.datadoghq.com/integrations/okta/)
+ directly through the Datadog API.
name: Okta Integration
- description: 'Configure your [Datadog Opsgenie integration](https://docs.datadoghq.com/integrations/opsgenie/)
@@ -32899,25 +35933,33 @@ tags:
description: Find out more at
url: https://docs.datadoghq.com/account_management/multi_organization
name: Organizations
-- description: 'The powerpack endpoints allow you to:
+- description: 'The Powerpack endpoints allow you to:
+
+ - Get a Powerpack
- - Get a powerpack
+ - Create a Powerpack
- - Create a powerpack
+ - Delete a Powerpack
- - Delete a powerpack
+ - Get a list of all Powerpacks
- - Get a list of all powerpacks
+ The Patch and Delete API methods can only be performed on a Powerpack by
- 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.
- a user who has the powerpack create permission for that specific powerpack.'
+
+ Read [Scale Graphing Expertise with Powerpacks](https://docs.datadoghq.com/dashboards/guide/powerpacks-best-practices/)
+ for more information.'
name: Powerpack
- description: The processes API allows you to query processes data for your organization.
+ See the [Live Processes page](https://docs.datadoghq.com/infrastructure/process/)
+ for more information.
name: Processes
-- description: Search or aggregate your RUM events over HTTP.
+- description: Manage your Real User Monitoring (RUM) applications, and search or
+ aggregate your RUM events over HTTP. See the [RUM & Session Replay page](https://docs.datadoghq.com/real_user_monitoring/)
+ for more information
name: RUM
- description: 'A restriction policy defines the access control rules for a resource,
mapping a set of relations
@@ -32943,20 +35985,24 @@ tags:
[Pipelines page](https://app.datadoghq.com/logs/pipelines).'
name: Roles
-- description: 'Detection rules for generating signals and listing of generated
-
- signals.'
+- description: Create and manage your security rules, signals, filters, and more.
+ See the [Datadog Security page](https://docs.datadoghq.com/security/) for more
+ information.
name: Security Monitoring
- description: Create, update, delete, and retrieve sensitive data scanner groups
- and rules.
+ and rules. See the [Sensitive Data Scanner page](https://docs.datadoghq.com/sensitive_data_scanner/)
+ for more information.
name: Sensitive Data Scanner
-- description: Create, edit, and disable service accounts.
+- description: Create, edit, and disable service accounts. See the [Service Accounts
+ page](https://docs.datadoghq.com/account_management/org_settings/service_accounts/)
+ for more information.
name: Service Accounts
- description: API to create, update, retrieve and delete service definitions.
externalDocs:
url: https://docs.datadoghq.com/tracing/service_catalog/
name: Service Definition
-- description: 'API to create, update scorecard rules and outcomes.
+- description: 'API to create, update scorecard rules and outcomes. See [Service Scorecards](https://docs.datadoghq.com/service_catalog/scorecards)
+ for more information.
This feature is currently in BETA. If you have any feedback, contact [Datadog
@@ -32965,7 +36011,8 @@ tags:
- 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.
+ for your organization. See [Generate Metrics from Spans](https://docs.datadoghq.com/tracing/trace_pipeline/generate_metrics/)
+ for more information.
externalDocs:
description: Find out more at
url: https://docs.datadoghq.com/tracing/metrics/metrics_namespace/
@@ -32977,7 +36024,8 @@ tags:
use Datadog\u2019s API to\nmanage both test types programmatically.\n\nFor more
information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/)."
name: Synthetics
-- description: View and manage teams within Datadog.
+- description: View and manage teams within Datadog. See the [Teams page](https://docs.datadoghq.com/account_management/teams/)
+ for more information.
name: Teams
- description: 'The usage metering API allows you to get hourly, daily, and
@@ -32995,7 +36043,9 @@ tags:
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.'
+ and up to two months of hourly usage data for a single organization in one request.
+
+ Learn more on the [usage details documentation](https://docs.datadoghq.com/account_management/billing/usage_details/).'
externalDocs:
description: Find out more at
url: https://docs.datadoghq.com/account_management/billing/usage_details/
@@ -33004,4 +36054,4 @@ tags:
externalDocs:
url: https://docs.datadoghq.com/account_management/users
name: Users
-x-group-parameters: true
\ No newline at end of file
+x-group-parameters: true
diff --git a/examples/v1_authentication_Validate.rs b/examples/v1_authentication_validate.rs
similarity index 100%
rename from examples/v1_authentication_Validate.rs
rename to examples/v1_authentication_validate.rs
diff --git a/examples/v1_gcp-integration_create_gcp_integration.rs b/examples/v1_gcp-integration_create_gcp_integration.rs
index 904766f7e..654780ad7 100644
--- a/examples/v1_gcp-integration_create_gcp_integration.rs
+++ b/examples/v1_gcp-integration_create_gcp_integration.rs
@@ -13,6 +13,7 @@ async fn main() {
.client_x509_cert_url(
"https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL".to_string(),
)
+ .cloud_run_revision_filters(vec!["dr:dre".to_string()])
.host_filters("key:value,filter:example".to_string())
.is_cspm_enabled(true)
.is_security_command_center_enabled(true)
diff --git a/examples/v1_gcp-integration_update_gcp_integration_3544259255.rs b/examples/v1_gcp-integration_update_gcp_integration_3544259255.rs
new file mode 100644
index 000000000..1b275c7b0
--- /dev/null
+++ b/examples/v1_gcp-integration_update_gcp_integration_3544259255.rs
@@ -0,0 +1,34 @@
+// Update a GCP integration cloud run revision filters returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV1::api::api_gcp_integration::GCPIntegrationAPI;
+use datadog_api_client::datadogV1::model::GCPAccount;
+
+#[tokio::main]
+async fn main() {
+ let body = GCPAccount::new()
+ .auth_provider_x509_cert_url("https://www.googleapis.com/oauth2/v1/certs".to_string())
+ .auth_uri("https://accounts.google.com/o/oauth2/auth".to_string())
+ .client_email("252bf553ef04b351@example.com".to_string())
+ .client_id("163662907116366290710".to_string())
+ .client_x509_cert_url(
+ "https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL".to_string(),
+ )
+ .cloud_run_revision_filters(vec!["merp:derp".to_string()])
+ .host_filters("key:value,filter:example".to_string())
+ .is_cspm_enabled(true)
+ .is_security_command_center_enabled(true)
+ .private_key("private_key".to_string())
+ .private_key_id("123456789abcdefghi123456789abcdefghijklm".to_string())
+ .project_id("datadog-apitest".to_string())
+ .resource_collection_enabled(true)
+ .token_uri("https://accounts.google.com/o/oauth2/token".to_string())
+ .type_("service_account".to_string());
+ let configuration = Configuration::new();
+ let api = GCPIntegrationAPI::with_config(configuration);
+ let resp = api.update_gcp_integration(body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v1_logs-indexes_create_logs_index.rs b/examples/v1_logs-indexes_create_logs_index.rs
index 1c82080d7..d67fba805 100644
--- a/examples/v1_logs-indexes_create_logs_index.rs
+++ b/examples/v1_logs-indexes_create_logs_index.rs
@@ -1,6 +1,7 @@
// Create an index returns "OK" response
use datadog_api_client::datadog::configuration::Configuration;
use datadog_api_client::datadogV1::api::api_logs_indexes::LogsIndexesAPI;
+use datadog_api_client::datadogV1::model::LogsDailyLimitReset;
use datadog_api_client::datadogV1::model::LogsExclusion;
use datadog_api_client::datadogV1::model::LogsExclusionFilter;
use datadog_api_client::datadogV1::model::LogsFilter;
@@ -13,6 +14,12 @@ async fn main() {
"main".to_string(),
)
.daily_limit(300000000)
+ .daily_limit_reset(
+ LogsDailyLimitReset::new()
+ .reset_time("14:00".to_string())
+ .reset_utc_offset("+02:00".to_string()),
+ )
+ .daily_limit_warning_threshold_percentage(70.0 as f64)
.exclusion_filters(vec![LogsExclusion::new("payment".to_string())
.filter(LogsExclusionFilter::new(1.0).query("*".to_string()))])
.num_retention_days(15);
diff --git a/examples/v1_logs-indexes_update_logs_index.rs b/examples/v1_logs-indexes_update_logs_index.rs
index 4b75820c5..28262d510 100644
--- a/examples/v1_logs-indexes_update_logs_index.rs
+++ b/examples/v1_logs-indexes_update_logs_index.rs
@@ -1,6 +1,7 @@
// Update an index returns "OK" response
use datadog_api_client::datadog::configuration::Configuration;
use datadog_api_client::datadogV1::api::api_logs_indexes::LogsIndexesAPI;
+use datadog_api_client::datadogV1::model::LogsDailyLimitReset;
use datadog_api_client::datadogV1::model::LogsExclusion;
use datadog_api_client::datadogV1::model::LogsExclusionFilter;
use datadog_api_client::datadogV1::model::LogsFilter;
@@ -10,6 +11,12 @@ use datadog_api_client::datadogV1::model::LogsIndexUpdateRequest;
async fn main() {
let body = LogsIndexUpdateRequest::new(LogsFilter::new().query("source:python".to_string()))
.daily_limit(300000000)
+ .daily_limit_reset(
+ LogsDailyLimitReset::new()
+ .reset_time("14:00".to_string())
+ .reset_utc_offset("+02:00".to_string()),
+ )
+ .daily_limit_warning_threshold_percentage(70.0 as f64)
.disable_daily_limit(false)
.exclusion_filters(vec![LogsExclusion::new("payment".to_string())
.filter(LogsExclusionFilter::new(1.0).query("*".to_string()))])
diff --git a/examples/v1_service-level-objectives_create_slo_3765703239.rs b/examples/v1_service-level-objectives_create_slo_3765703239.rs
new file mode 100644
index 000000000..3007886ab
--- /dev/null
+++ b/examples/v1_service-level-objectives_create_slo_3765703239.rs
@@ -0,0 +1,59 @@
+// Create a time-slice SLO object returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV1::api::api_service_level_objectives::ServiceLevelObjectivesAPI;
+use datadog_api_client::datadogV1::model::FormulaAndFunctionMetricDataSource;
+use datadog_api_client::datadogV1::model::FormulaAndFunctionMetricQueryDefinition;
+use datadog_api_client::datadogV1::model::SLODataSourceQueryDefinition;
+use datadog_api_client::datadogV1::model::SLOFormula;
+use datadog_api_client::datadogV1::model::SLOSliSpec;
+use datadog_api_client::datadogV1::model::SLOThreshold;
+use datadog_api_client::datadogV1::model::SLOTimeSliceComparator;
+use datadog_api_client::datadogV1::model::SLOTimeSliceCondition;
+use datadog_api_client::datadogV1::model::SLOTimeSliceQuery;
+use datadog_api_client::datadogV1::model::SLOTimeSliceSpec;
+use datadog_api_client::datadogV1::model::SLOTimeframe;
+use datadog_api_client::datadogV1::model::SLOType;
+use datadog_api_client::datadogV1::model::ServiceLevelObjectiveRequest;
+
+#[tokio::main]
+async fn main() {
+ let body = ServiceLevelObjectiveRequest::new(
+ "Example-Service-Level-Objective".to_string(),
+ vec![SLOThreshold::new(97.0, SLOTimeframe::SEVEN_DAYS)
+ .target_display("97.0".to_string())
+ .warning(98.0 as f64)
+ .warning_display("98.0".to_string())],
+ SLOType::TIME_SLICE,
+ )
+ .description(Some("string".to_string()))
+ .sli_specification(SLOSliSpec::SLOTimeSliceSpec(Box::new(
+ SLOTimeSliceSpec::new(SLOTimeSliceCondition::new(
+ SLOTimeSliceComparator::GREATER,
+ SLOTimeSliceQuery::new(
+ vec![SLOFormula::new("query1".to_string())],
+ vec![
+ SLODataSourceQueryDefinition::FormulaAndFunctionMetricQueryDefinition(
+ Box::new(FormulaAndFunctionMetricQueryDefinition::new(
+ FormulaAndFunctionMetricDataSource::METRICS,
+ "query1".to_string(),
+ "trace.servlet.request{env:prod}".to_string(),
+ )),
+ ),
+ ],
+ ),
+ 5.0,
+ )),
+ )))
+ .tags(vec!["env:prod".to_string()])
+ .target_threshold(97.0 as f64)
+ .timeframe(SLOTimeframe::SEVEN_DAYS)
+ .warning_threshold(98.0 as f64);
+ let configuration = Configuration::new();
+ let api = ServiceLevelObjectivesAPI::with_config(configuration);
+ let resp = api.create_slo(body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v1_synthetics_create_synthetics_api_test.rs b/examples/v1_synthetics_create_synthetics_api_test.rs
index a245a3b43..ea43f42b8 100644
--- a/examples/v1_synthetics_create_synthetics_api_test.rs
+++ b/examples/v1_synthetics_create_synthetics_api_test.rs
@@ -45,7 +45,7 @@ async fn main() {
SyntheticsTestOptions::new()
.ci(SyntheticsTestCiOptions::new()
.execution_rule(SyntheticsTestExecutionRule::BLOCKING))
- .device_ids(vec![SyntheticsDeviceID::LAPTOP_LARGE])
+ .device_ids(vec![SyntheticsDeviceID::CHROME_LAPTOP_LARGE])
.http_version(SyntheticsTestOptionsHTTPVersion::HTTP1)
.monitor_options(SyntheticsTestOptionsMonitorOptions::new())
.restricted_roles(vec!["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".to_string()])
diff --git a/examples/v1_synthetics_create_synthetics_api_test_1279271422.rs b/examples/v1_synthetics_create_synthetics_api_test_1279271422.rs
index 824373112..4dc7d2e5c 100644
--- a/examples/v1_synthetics_create_synthetics_api_test_1279271422.rs
+++ b/examples/v1_synthetics_create_synthetics_api_test_1279271422.rs
@@ -16,74 +16,114 @@ use datadog_api_client::datadogV1::model::SyntheticsConfigVariableType;
use datadog_api_client::datadogV1::model::SyntheticsGlobalVariableParseTestOptionsType;
use datadog_api_client::datadogV1::model::SyntheticsGlobalVariableParserType;
use datadog_api_client::datadogV1::model::SyntheticsParsingOptions;
+use datadog_api_client::datadogV1::model::SyntheticsTestCallType;
use datadog_api_client::datadogV1::model::SyntheticsTestDetailsSubType;
use datadog_api_client::datadogV1::model::SyntheticsTestOptions;
+use datadog_api_client::datadogV1::model::SyntheticsTestOptionsHTTPVersion;
use datadog_api_client::datadogV1::model::SyntheticsTestOptionsRetry;
use datadog_api_client::datadogV1::model::SyntheticsTestRequest;
use datadog_api_client::datadogV1::model::SyntheticsVariableParser;
use serde_json::Value;
+use std::collections::BTreeMap;
#[tokio::main]
async fn main() {
- let body = SyntheticsAPITest::new(
- SyntheticsAPITestConfig::new()
- .config_variables(vec![SyntheticsConfigVariable::new(
- "PROPERTY".to_string(),
- SyntheticsConfigVariableType::TEXT,
- )
- .example("content-type".to_string())
- .pattern("content-type".to_string())])
- .steps(vec![SyntheticsAPIStep::new(
- vec![SyntheticsAssertion::SyntheticsAssertionTarget(Box::new(
- SyntheticsAssertionTarget::new(
- SyntheticsAssertionOperator::IS,
- Value::from(200),
- SyntheticsAssertionType::STATUS_CODE,
- ),
- ))],
- "request is sent".to_string(),
- SyntheticsTestRequest::new()
- .method("GET".to_string())
- .timeout(10.0 as f64)
- .url("https://datadoghq.com".to_string()),
- SyntheticsAPIStepSubtype::HTTP,
- )
- .allow_failure(true)
- .extracted_values(vec![SyntheticsParsingOptions::new()
- .field("server".to_string())
- .name("EXTRACTED_VALUE".to_string())
- .parser(SyntheticsVariableParser::new(
- SyntheticsGlobalVariableParserType::RAW,
- ))
- .secure(true)
- .type_(SyntheticsGlobalVariableParseTestOptionsType::HTTP_HEADER)])
- .is_critical(true)
- .retry(
- SyntheticsTestOptionsRetry::new()
- .count(5)
- .interval(1000.0 as f64),
- )]),
- vec!["aws:us-east-2".to_string()],
- "BDD test payload: synthetics_api_test_multi_step_payload.json".to_string(),
- "Example-Synthetic".to_string(),
- SyntheticsTestOptions::new()
- .accept_self_signed(false)
- .allow_insecure(true)
- .follow_redirects(true)
- .min_failure_duration(10)
- .min_location_failed(1)
- .monitor_name("Example-Synthetic".to_string())
- .monitor_priority(5)
- .retry(
- SyntheticsTestOptionsRetry::new()
- .count(3)
- .interval(1000.0 as f64),
- )
- .tick_every(60),
- SyntheticsAPITestType::API,
- )
- .subtype(SyntheticsTestDetailsSubType::MULTI)
- .tags(vec!["testing:api".to_string()]);
+ let body =
+ SyntheticsAPITest::new(
+ SyntheticsAPITestConfig::new()
+ .config_variables(
+ vec![
+ SyntheticsConfigVariable::new("PROPERTY".to_string(), SyntheticsConfigVariableType::TEXT)
+ .example("content-type".to_string())
+ .pattern("content-type".to_string())
+ ],
+ )
+ .steps(
+ vec![
+ SyntheticsAPIStep::new(
+ vec![
+ SyntheticsAssertion::SyntheticsAssertionTarget(
+ Box::new(
+ SyntheticsAssertionTarget::new(
+ SyntheticsAssertionOperator::IS,
+ Value::from(200),
+ SyntheticsAssertionType::STATUS_CODE,
+ ),
+ ),
+ )
+ ],
+ "request is sent".to_string(),
+ SyntheticsTestRequest::new()
+ .http_version(SyntheticsTestOptionsHTTPVersion::HTTP2)
+ .method("GET".to_string())
+ .timeout(10.0 as f64)
+ .url("https://datadoghq.com".to_string()),
+ SyntheticsAPIStepSubtype::HTTP,
+ )
+ .allow_failure(true)
+ .extracted_values(
+ vec![
+ SyntheticsParsingOptions::new()
+ .field("server".to_string())
+ .name("EXTRACTED_VALUE".to_string())
+ .parser(
+ SyntheticsVariableParser::new(SyntheticsGlobalVariableParserType::RAW),
+ )
+ .secure(true)
+ .type_(SyntheticsGlobalVariableParseTestOptionsType::HTTP_HEADER)
+ ],
+ )
+ .is_critical(true)
+ .retry(SyntheticsTestOptionsRetry::new().count(5).interval(1000.0 as f64)),
+ SyntheticsAPIStep::new(
+ vec![
+ SyntheticsAssertion::SyntheticsAssertionTarget(
+ Box::new(
+ SyntheticsAssertionTarget::new(
+ SyntheticsAssertionOperator::LESS_THAN,
+ Value::from(1000),
+ SyntheticsAssertionType::RESPONSE_TIME,
+ ),
+ ),
+ )
+ ],
+ "GRPC CALL".to_string(),
+ SyntheticsTestRequest::new()
+ .call_type(SyntheticsTestCallType::UNARY)
+ .compressed_json_descriptor(
+ "eJy1lU1z2yAQhv+Lzj74I3ETH506bQ7OZOSm1w4Wa4epBARQppqM/3v5koCJJdvtxCdW77vPssCO3zMKUgHOFu/ZXvBiS6hZho/f8qe7pftYgXphWJrlA8XwxywEvNba+6PhkC2yVcVVswYp0R6ykRYlZ1SCV21SDrxsssPIeS9FJKqGfK2rqnmmSBwhWa2XlKgtaQPiDcRGCUDVfwGD2sKUqKEtc1cSoOrsMlaMOec1sySYCCgUYRSVLv2zSva2u+FQkB0pVkIw8bFuIudOOn3pOaKYVT3Iy97Pd0AYhOx5QcMsnxvRHlnuLf8ETDd3CNtrv2nejkDpRnANCmGkkFn/hsYzpBKE7jVbufgnKnV9HRM9zRPDDKPttYT61n0TdWkAAjggk9AhuxIeaXd69CYTcsGw7cBTakLVbNpRzGEgyWjkSOpMbZXkhGL6oX30R49qt3GoHrap7i0XdD41WQ+2icCNm5p1hmFqnHNlcla0riKmDZ183crDxChjbnurtxHPRE784sVhWvDfGP+SsTKibU3o5NtWHuZFGZOxP6P5VXqIOvaOSec4eYohyd7NslHuJbd1bewds85xYrNxkr2d+5IhFWF3NvaO684xjE2S5ulY+tu64Pna0fCPJgzw6vF5/WucLcYjt5xoq19O3UDptOg/OamJQRaCcPPnMTQ2QDFn+uhPvUfnCrMc99upyQY4Ui9Dlc/YoG3R/v4Cs9YE+g==".to_string(),
+ )
+ .host("grpcbin.test.k6.io".to_string())
+ .message("{}".to_string())
+ .metadata(BTreeMap::from([]))
+ .method("Index".to_string())
+ .port(9000)
+ .service("grpcbin.GRPCBin".to_string()),
+ SyntheticsAPIStepSubtype::GRPC,
+ )
+ .allow_failure(false)
+ .extracted_values(vec![])
+ .is_critical(true)
+ .retry(SyntheticsTestOptionsRetry::new().count(0).interval(300.0 as f64))
+ ],
+ ),
+ vec!["aws:us-east-2".to_string()],
+ "BDD test payload: synthetics_api_test_multi_step_payload.json".to_string(),
+ "Example-Synthetic".to_string(),
+ SyntheticsTestOptions::new()
+ .accept_self_signed(false)
+ .allow_insecure(true)
+ .follow_redirects(true)
+ .min_failure_duration(10)
+ .min_location_failed(1)
+ .monitor_name("Example-Synthetic".to_string())
+ .monitor_priority(5)
+ .retry(SyntheticsTestOptionsRetry::new().count(3).interval(1000.0 as f64))
+ .tick_every(60),
+ SyntheticsAPITestType::API,
+ )
+ .subtype(SyntheticsTestDetailsSubType::MULTI)
+ .tags(vec!["testing:api".to_string()]);
let configuration = Configuration::new();
let api = SyntheticsAPI::with_config(configuration);
let resp = api.create_synthetics_api_test(body).await;
diff --git a/examples/v1_synthetics_create_synthetics_browser_test.rs b/examples/v1_synthetics_create_synthetics_browser_test.rs
index a703e24f2..75062625d 100644
--- a/examples/v1_synthetics_create_synthetics_browser_test.rs
+++ b/examples/v1_synthetics_create_synthetics_browser_test.rs
@@ -46,7 +46,7 @@ async fn main() {
SyntheticsTestOptions::new()
.accept_self_signed(false)
.allow_insecure(true)
- .device_ids(vec![SyntheticsDeviceID::TABLET])
+ .device_ids(vec![SyntheticsDeviceID::CHROME_LAPTOP_LARGE])
.disable_cors(true)
.follow_redirects(true)
.min_failure_duration(10)
diff --git a/examples/v1_synthetics_trigger_ci_tests.rs b/examples/v1_synthetics_trigger_ci_tests.rs
index 8379896e2..5d0acf1f7 100644
--- a/examples/v1_synthetics_trigger_ci_tests.rs
+++ b/examples/v1_synthetics_trigger_ci_tests.rs
@@ -22,7 +22,7 @@ async fn main() {
SyntheticsBasicAuthWeb::new("PaSSw0RD!".to_string(), "my_username".to_string())
.type_(SyntheticsBasicAuthWebType::WEB),
)))
- .device_ids(vec![SyntheticsDeviceID::LAPTOP_LARGE])
+ .device_ids(vec![SyntheticsDeviceID::CHROME_LAPTOP_LARGE])
.locations(vec!["aws:eu-west-3".to_string()])
.metadata(
SyntheticsCIBatchMetadata::new()
diff --git a/examples/v1_synthetics_update_browser_test.rs b/examples/v1_synthetics_update_browser_test.rs
index 4fad79f75..733b9f95d 100644
--- a/examples/v1_synthetics_update_browser_test.rs
+++ b/examples/v1_synthetics_update_browser_test.rs
@@ -49,6 +49,7 @@ async fn main() {
.key(SyntheticsTestRequestCertificateItem::new()),
)
.certificate_domains(vec![])
+ .http_version(SyntheticsTestOptionsHTTPVersion::HTTP1)
.proxy(SyntheticsTestRequestProxy::new(
"https://example.com".to_string(),
))
@@ -70,7 +71,7 @@ async fn main() {
SyntheticsTestOptions::new()
.ci(SyntheticsTestCiOptions::new()
.execution_rule(SyntheticsTestExecutionRule::BLOCKING))
- .device_ids(vec![SyntheticsDeviceID::LAPTOP_LARGE])
+ .device_ids(vec![SyntheticsDeviceID::CHROME_LAPTOP_LARGE])
.http_version(SyntheticsTestOptionsHTTPVersion::HTTP1)
.monitor_options(SyntheticsTestOptionsMonitorOptions::new())
.restricted_roles(vec!["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".to_string()])
diff --git a/examples/v1_usage-metering_get_usage_lambda.rs b/examples/v1_usage-metering_get_usage_lambda.rs
index bec4e6bd2..aad0fd21d 100644
--- a/examples/v1_usage-metering_get_usage_lambda.rs
+++ b/examples/v1_usage-metering_get_usage_lambda.rs
@@ -1,4 +1,4 @@
-// Get hourly usage for lambda returns "OK" response
+// Get hourly usage for Lambda returns "OK" response
use datadog_api_client::datadog::configuration::Configuration;
use datadog_api_client::datadogV1::api::api_usage_metering::GetUsageLambdaOptionalParams;
use datadog_api_client::datadogV1::api::api_usage_metering::UsageMeteringAPI;
@@ -9,8 +9,8 @@ async fn main() {
let api = UsageMeteringAPI::with_config(configuration);
let resp = api
.get_usage_lambda(
- "2021-11-11T11:11:11.111000+00:00".to_string(),
- GetUsageLambdaOptionalParams::default(),
+ "2021-11-06T11:11:11+00:00".to_string(),
+ GetUsageLambdaOptionalParams::default().end_hr("2021-11-08T11:11:11+00:00".to_string()),
)
.await;
if let Ok(value) = resp {
diff --git a/examples/v1_usage-metering_get_usage_lambda_3132428705.rs b/examples/v1_usage-metering_get_usage_lambda_3132428705.rs
deleted file mode 100644
index aad0fd21d..000000000
--- a/examples/v1_usage-metering_get_usage_lambda_3132428705.rs
+++ /dev/null
@@ -1,21 +0,0 @@
-// Get hourly usage for Lambda returns "OK" response
-use datadog_api_client::datadog::configuration::Configuration;
-use datadog_api_client::datadogV1::api::api_usage_metering::GetUsageLambdaOptionalParams;
-use datadog_api_client::datadogV1::api::api_usage_metering::UsageMeteringAPI;
-
-#[tokio::main]
-async fn main() {
- let configuration = Configuration::new();
- let api = UsageMeteringAPI::with_config(configuration);
- let resp = api
- .get_usage_lambda(
- "2021-11-06T11:11:11+00:00".to_string(),
- GetUsageLambdaOptionalParams::default().end_hr("2021-11-08T11:11:11+00:00".to_string()),
- )
- .await;
- if let Ok(value) = resp {
- println!("{:#?}", value);
- } else {
- println!("{:#?}", resp.unwrap_err());
- }
-}
diff --git a/examples/v2_api-management_create_open_api.rs b/examples/v2_api-management_create_open_api.rs
new file mode 100644
index 000000000..ee035c595
--- /dev/null
+++ b/examples/v2_api-management_create_open_api.rs
@@ -0,0 +1,23 @@
+// Create a new API returns "API created successfully" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_api_management::APIManagementAPI;
+use datadog_api_client::datadogV2::api::api_api_management::CreateOpenAPIOptionalParams;
+use std::fs;
+
+#[tokio::main]
+async fn main() {
+ let mut configuration = Configuration::new();
+ configuration.set_unstable_operation_enabled("v2.CreateOpenAPI", true);
+ let api = APIManagementAPI::with_config(configuration);
+ let resp = api
+ .create_open_api(
+ CreateOpenAPIOptionalParams::default()
+ .openapi_spec_file(fs::read("openapi-spec.yaml").unwrap()),
+ )
+ .await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_api-management_delete_open_api.rs b/examples/v2_api-management_delete_open_api.rs
new file mode 100644
index 000000000..ab828a3a3
--- /dev/null
+++ b/examples/v2_api-management_delete_open_api.rs
@@ -0,0 +1,18 @@
+// Delete an API returns "API deleted successfully" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_api_management::APIManagementAPI;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "managed_api" in the system
+ let managed_api_data_id = std::env::var("MANAGED_API_DATA_ID").unwrap();
+ let mut configuration = Configuration::new();
+ configuration.set_unstable_operation_enabled("v2.DeleteOpenAPI", true);
+ let api = APIManagementAPI::with_config(configuration);
+ let resp = api.delete_open_api(managed_api_data_id.clone()).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_api-management_get_open_api.rs b/examples/v2_api-management_get_open_api.rs
new file mode 100644
index 000000000..9068a113d
--- /dev/null
+++ b/examples/v2_api-management_get_open_api.rs
@@ -0,0 +1,18 @@
+// Get an API returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_api_management::APIManagementAPI;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "managed_api" in the system
+ let managed_api_data_id = std::env::var("MANAGED_API_DATA_ID").unwrap();
+ let mut configuration = Configuration::new();
+ configuration.set_unstable_operation_enabled("v2.GetOpenAPI", true);
+ let api = APIManagementAPI::with_config(configuration);
+ let resp = api.get_open_api(managed_api_data_id.clone()).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_api-management_update_open_api.rs b/examples/v2_api-management_update_open_api.rs
new file mode 100644
index 000000000..c450a6bb4
--- /dev/null
+++ b/examples/v2_api-management_update_open_api.rs
@@ -0,0 +1,26 @@
+// Update an API returns "API updated successfully" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_api_management::APIManagementAPI;
+use datadog_api_client::datadogV2::api::api_api_management::UpdateOpenAPIOptionalParams;
+use std::fs;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "managed_api" in the system
+ let managed_api_data_id = std::env::var("MANAGED_API_DATA_ID").unwrap();
+ let mut configuration = Configuration::new();
+ configuration.set_unstable_operation_enabled("v2.UpdateOpenAPI", true);
+ let api = APIManagementAPI::with_config(configuration);
+ let resp = api
+ .update_open_api(
+ managed_api_data_id.clone(),
+ UpdateOpenAPIOptionalParams::default()
+ .openapi_spec_file(fs::read("openapi-spec.yaml").unwrap()),
+ )
+ .await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_archive_case.rs b/examples/v2_case-management_archive_case.rs
new file mode 100644
index 000000000..138a43ef5
--- /dev/null
+++ b/examples/v2_case-management_archive_case.rs
@@ -0,0 +1,21 @@
+// Archive case returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+use datadog_api_client::datadogV2::model::CaseEmpty;
+use datadog_api_client::datadogV2::model::CaseEmptyRequest;
+use datadog_api_client::datadogV2::model::CaseResourceType;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "case" in the system
+ let case_id = std::env::var("CASE_ID").unwrap();
+ let body = CaseEmptyRequest::new(CaseEmpty::new(CaseResourceType::CASE));
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.archive_case(case_id.clone(), body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_assign_case.rs b/examples/v2_case-management_assign_case.rs
new file mode 100644
index 000000000..211226a1d
--- /dev/null
+++ b/examples/v2_case-management_assign_case.rs
@@ -0,0 +1,28 @@
+// Assign case returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+use datadog_api_client::datadogV2::model::CaseAssign;
+use datadog_api_client::datadogV2::model::CaseAssignAttributes;
+use datadog_api_client::datadogV2::model::CaseAssignRequest;
+use datadog_api_client::datadogV2::model::CaseResourceType;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "case" in the system
+ let case_id = std::env::var("CASE_ID").unwrap();
+
+ // there is a valid "user" in the system
+ let user_data_id = std::env::var("USER_DATA_ID").unwrap();
+ let body = CaseAssignRequest::new(CaseAssign::new(
+ CaseAssignAttributes::new(user_data_id.clone()),
+ CaseResourceType::CASE,
+ ));
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.assign_case(case_id.clone(), body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_create_case.rs b/examples/v2_case-management_create_case.rs
new file mode 100644
index 000000000..246c6a180
--- /dev/null
+++ b/examples/v2_case-management_create_case.rs
@@ -0,0 +1,49 @@
+// Create a case returns "CREATED" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+use datadog_api_client::datadogV2::model::CaseCreate;
+use datadog_api_client::datadogV2::model::CaseCreateAttributes;
+use datadog_api_client::datadogV2::model::CaseCreateRelationships;
+use datadog_api_client::datadogV2::model::CaseCreateRequest;
+use datadog_api_client::datadogV2::model::CasePriority;
+use datadog_api_client::datadogV2::model::CaseResourceType;
+use datadog_api_client::datadogV2::model::CaseType;
+use datadog_api_client::datadogV2::model::NullableUserRelationship;
+use datadog_api_client::datadogV2::model::NullableUserRelationshipData;
+use datadog_api_client::datadogV2::model::ProjectRelationship;
+use datadog_api_client::datadogV2::model::ProjectRelationshipData;
+use datadog_api_client::datadogV2::model::ProjectResourceType;
+use datadog_api_client::datadogV2::model::UserResourceType;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "user" in the system
+ let user_data_id = std::env::var("USER_DATA_ID").unwrap();
+ let body = CaseCreateRequest::new(
+ CaseCreate::new(
+ CaseCreateAttributes::new(
+ "Security breach investigation in 0cfbc5cbc676ee71".to_string(),
+ CaseType::STANDARD,
+ )
+ .priority(CasePriority::NOT_DEFINED),
+ CaseResourceType::CASE,
+ )
+ .relationships(
+ CaseCreateRelationships::new(ProjectRelationship::new(ProjectRelationshipData::new(
+ "d4bbe1af-f36e-42f1-87c1-493ca35c320e".to_string(),
+ ProjectResourceType::PROJECT,
+ )))
+ .assignee(Some(NullableUserRelationship::new(Some(
+ NullableUserRelationshipData::new(user_data_id.clone(), UserResourceType::USER),
+ )))),
+ ),
+ );
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.create_case(body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_create_project.rs b/examples/v2_case-management_create_project.rs
new file mode 100644
index 000000000..14992ad6f
--- /dev/null
+++ b/examples/v2_case-management_create_project.rs
@@ -0,0 +1,23 @@
+// Create a project returns "CREATED" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+use datadog_api_client::datadogV2::model::ProjectCreate;
+use datadog_api_client::datadogV2::model::ProjectCreateAttributes;
+use datadog_api_client::datadogV2::model::ProjectCreateRequest;
+use datadog_api_client::datadogV2::model::ProjectResourceType;
+
+#[tokio::main]
+async fn main() {
+ let body = ProjectCreateRequest::new(ProjectCreate::new(
+ ProjectCreateAttributes::new("SEC".to_string(), "Security Investigation".to_string()),
+ ProjectResourceType::PROJECT,
+ ));
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.create_project(body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_delete_project.rs b/examples/v2_case-management_delete_project.rs
new file mode 100644
index 000000000..0370c9fac
--- /dev/null
+++ b/examples/v2_case-management_delete_project.rs
@@ -0,0 +1,15 @@
+// Remove a project returns "No Content" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+
+#[tokio::main]
+async fn main() {
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.delete_project("project_id".to_string()).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_get_case.rs b/examples/v2_case-management_get_case.rs
new file mode 100644
index 000000000..daeadbe8d
--- /dev/null
+++ b/examples/v2_case-management_get_case.rs
@@ -0,0 +1,17 @@
+// Get the details of a case returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "case" in the system
+ let case_id = std::env::var("CASE_ID").unwrap();
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.get_case(case_id.clone()).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_get_project.rs b/examples/v2_case-management_get_project.rs
new file mode 100644
index 000000000..59028ae74
--- /dev/null
+++ b/examples/v2_case-management_get_project.rs
@@ -0,0 +1,15 @@
+// Get the details of a project returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+
+#[tokio::main]
+async fn main() {
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.get_project("project_id".to_string()).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_get_projects.rs b/examples/v2_case-management_get_projects.rs
new file mode 100644
index 000000000..d6192db37
--- /dev/null
+++ b/examples/v2_case-management_get_projects.rs
@@ -0,0 +1,15 @@
+// Get all projects returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+
+#[tokio::main]
+async fn main() {
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.get_projects().await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_search_cases.rs b/examples/v2_case-management_search_cases.rs
new file mode 100644
index 000000000..d973e0914
--- /dev/null
+++ b/examples/v2_case-management_search_cases.rs
@@ -0,0 +1,16 @@
+// Search cases returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+use datadog_api_client::datadogV2::api::api_case_management::SearchCasesOptionalParams;
+
+#[tokio::main]
+async fn main() {
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.search_cases(SearchCasesOptionalParams::default()).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_search_cases_3433960044.rs b/examples/v2_case-management_search_cases_3433960044.rs
new file mode 100644
index 000000000..1d5389919
--- /dev/null
+++ b/examples/v2_case-management_search_cases_3433960044.rs
@@ -0,0 +1,21 @@
+// Search cases returns "OK" response with pagination
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+use datadog_api_client::datadogV2::api::api_case_management::SearchCasesOptionalParams;
+use futures_util::pin_mut;
+use futures_util::stream::StreamExt;
+
+#[tokio::main]
+async fn main() {
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let response = api.search_cases_with_pagination(SearchCasesOptionalParams::default());
+ pin_mut!(response);
+ while let Some(resp) = response.next().await {
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+ }
+}
diff --git a/examples/v2_case-management_unarchive_case.rs b/examples/v2_case-management_unarchive_case.rs
new file mode 100644
index 000000000..5f6520b79
--- /dev/null
+++ b/examples/v2_case-management_unarchive_case.rs
@@ -0,0 +1,21 @@
+// Unarchive case returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+use datadog_api_client::datadogV2::model::CaseEmpty;
+use datadog_api_client::datadogV2::model::CaseEmptyRequest;
+use datadog_api_client::datadogV2::model::CaseResourceType;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "case" in the system
+ let case_id = std::env::var("CASE_ID").unwrap();
+ let body = CaseEmptyRequest::new(CaseEmpty::new(CaseResourceType::CASE));
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.unarchive_case(case_id.clone(), body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_unassign_case.rs b/examples/v2_case-management_unassign_case.rs
new file mode 100644
index 000000000..112b7fe33
--- /dev/null
+++ b/examples/v2_case-management_unassign_case.rs
@@ -0,0 +1,21 @@
+// Unassign case returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+use datadog_api_client::datadogV2::model::CaseEmpty;
+use datadog_api_client::datadogV2::model::CaseEmptyRequest;
+use datadog_api_client::datadogV2::model::CaseResourceType;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "case" in the system
+ let case_id = std::env::var("CASE_ID").unwrap();
+ let body = CaseEmptyRequest::new(CaseEmpty::new(CaseResourceType::CASE));
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.unassign_case(case_id.clone(), body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_update_priority.rs b/examples/v2_case-management_update_priority.rs
new file mode 100644
index 000000000..f5e851253
--- /dev/null
+++ b/examples/v2_case-management_update_priority.rs
@@ -0,0 +1,26 @@
+// Update case priority returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+use datadog_api_client::datadogV2::model::CasePriority;
+use datadog_api_client::datadogV2::model::CaseResourceType;
+use datadog_api_client::datadogV2::model::CaseUpdatePriority;
+use datadog_api_client::datadogV2::model::CaseUpdatePriorityAttributes;
+use datadog_api_client::datadogV2::model::CaseUpdatePriorityRequest;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "case" in the system
+ let case_id = std::env::var("CASE_ID").unwrap();
+ let body = CaseUpdatePriorityRequest::new(CaseUpdatePriority::new(
+ CaseUpdatePriorityAttributes::new(CasePriority::P3),
+ CaseResourceType::CASE,
+ ));
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.update_priority(case_id.clone(), body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_case-management_update_status.rs b/examples/v2_case-management_update_status.rs
new file mode 100644
index 000000000..a273ffb3f
--- /dev/null
+++ b/examples/v2_case-management_update_status.rs
@@ -0,0 +1,26 @@
+// Update case status returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_case_management::CaseManagementAPI;
+use datadog_api_client::datadogV2::model::CaseResourceType;
+use datadog_api_client::datadogV2::model::CaseStatus;
+use datadog_api_client::datadogV2::model::CaseUpdateStatus;
+use datadog_api_client::datadogV2::model::CaseUpdateStatusAttributes;
+use datadog_api_client::datadogV2::model::CaseUpdateStatusRequest;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "case" in the system
+ let case_id = std::env::var("CASE_ID").unwrap();
+ let body = CaseUpdateStatusRequest::new(CaseUpdateStatus::new(
+ CaseUpdateStatusAttributes::new(CaseStatus::IN_PROGRESS),
+ CaseResourceType::CASE,
+ ));
+ let configuration = Configuration::new();
+ let api = CaseManagementAPI::with_config(configuration);
+ let resp = api.update_status(case_id.clone(), body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_cloud-workload-security_create_csm_threats_agent_rule.rs b/examples/v2_cloud-workload-security_create_csm_threats_agent_rule.rs
new file mode 100644
index 000000000..ec3cdb51b
--- /dev/null
+++ b/examples/v2_cloud-workload-security_create_csm_threats_agent_rule.rs
@@ -0,0 +1,30 @@
+// Create a CSM Threats Agent rule returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_cloud_workload_security::CloudWorkloadSecurityAPI;
+use datadog_api_client::datadogV2::model::CloudWorkloadSecurityAgentRuleCreateAttributes;
+use datadog_api_client::datadogV2::model::CloudWorkloadSecurityAgentRuleCreateData;
+use datadog_api_client::datadogV2::model::CloudWorkloadSecurityAgentRuleCreateRequest;
+use datadog_api_client::datadogV2::model::CloudWorkloadSecurityAgentRuleType;
+
+#[tokio::main]
+async fn main() {
+ let body = CloudWorkloadSecurityAgentRuleCreateRequest::new(
+ CloudWorkloadSecurityAgentRuleCreateData::new(
+ CloudWorkloadSecurityAgentRuleCreateAttributes::new(
+ r#"exec.file.name == "sh""#.to_string(),
+ "my_agent_rule".to_string(),
+ )
+ .description("My Agent rule".to_string())
+ .enabled(true),
+ CloudWorkloadSecurityAgentRuleType::AGENT_RULE,
+ ),
+ );
+ let configuration = Configuration::new();
+ let api = CloudWorkloadSecurityAPI::with_config(configuration);
+ let resp = api.create_csm_threats_agent_rule(body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_cloud-workload-security_delete_csm_threats_agent_rule.rs b/examples/v2_cloud-workload-security_delete_csm_threats_agent_rule.rs
new file mode 100644
index 000000000..95139d399
--- /dev/null
+++ b/examples/v2_cloud-workload-security_delete_csm_threats_agent_rule.rs
@@ -0,0 +1,19 @@
+// Delete a CSM Threats Agent rule returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_cloud_workload_security::CloudWorkloadSecurityAPI;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "agent_rule_rc" in the system
+ let agent_rule_data_id = std::env::var("AGENT_RULE_DATA_ID").unwrap();
+ let configuration = Configuration::new();
+ let api = CloudWorkloadSecurityAPI::with_config(configuration);
+ let resp = api
+ .delete_csm_threats_agent_rule(agent_rule_data_id.clone())
+ .await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_cloud-workload-security_download_csm_threats_policy.rs b/examples/v2_cloud-workload-security_download_csm_threats_policy.rs
new file mode 100644
index 000000000..e9283b9ee
--- /dev/null
+++ b/examples/v2_cloud-workload-security_download_csm_threats_policy.rs
@@ -0,0 +1,15 @@
+// Get the latest CSM Threats policy returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_cloud_workload_security::CloudWorkloadSecurityAPI;
+
+#[tokio::main]
+async fn main() {
+ let configuration = Configuration::new();
+ let api = CloudWorkloadSecurityAPI::with_config(configuration);
+ let resp = api.download_csm_threats_policy().await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_cloud-workload-security_get_csm_threats_agent_rule.rs b/examples/v2_cloud-workload-security_get_csm_threats_agent_rule.rs
new file mode 100644
index 000000000..7d6f119d8
--- /dev/null
+++ b/examples/v2_cloud-workload-security_get_csm_threats_agent_rule.rs
@@ -0,0 +1,19 @@
+// Get a CSM Threats Agent rule returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_cloud_workload_security::CloudWorkloadSecurityAPI;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "agent_rule_rc" in the system
+ let agent_rule_data_id = std::env::var("AGENT_RULE_DATA_ID").unwrap();
+ let configuration = Configuration::new();
+ let api = CloudWorkloadSecurityAPI::with_config(configuration);
+ let resp = api
+ .get_csm_threats_agent_rule(agent_rule_data_id.clone())
+ .await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_cloud-workload-security_list_csm_threats_agent_rules.rs b/examples/v2_cloud-workload-security_list_csm_threats_agent_rules.rs
new file mode 100644
index 000000000..56bc3cfe8
--- /dev/null
+++ b/examples/v2_cloud-workload-security_list_csm_threats_agent_rules.rs
@@ -0,0 +1,15 @@
+// Get all CSM Threats Agent rules returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_cloud_workload_security::CloudWorkloadSecurityAPI;
+
+#[tokio::main]
+async fn main() {
+ let configuration = Configuration::new();
+ let api = CloudWorkloadSecurityAPI::with_config(configuration);
+ let resp = api.list_csm_threats_agent_rules().await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_cloud-workload-security_update_csm_threats_agent_rule.rs b/examples/v2_cloud-workload-security_update_csm_threats_agent_rule.rs
new file mode 100644
index 000000000..1c603bf7e
--- /dev/null
+++ b/examples/v2_cloud-workload-security_update_csm_threats_agent_rule.rs
@@ -0,0 +1,33 @@
+// Update a CSM Threats Agent rule returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_cloud_workload_security::CloudWorkloadSecurityAPI;
+use datadog_api_client::datadogV2::model::CloudWorkloadSecurityAgentRuleType;
+use datadog_api_client::datadogV2::model::CloudWorkloadSecurityAgentRuleUpdateAttributes;
+use datadog_api_client::datadogV2::model::CloudWorkloadSecurityAgentRuleUpdateData;
+use datadog_api_client::datadogV2::model::CloudWorkloadSecurityAgentRuleUpdateRequest;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "agent_rule_rc" in the system
+ let agent_rule_data_id = std::env::var("AGENT_RULE_DATA_ID").unwrap();
+ let body = CloudWorkloadSecurityAgentRuleUpdateRequest::new(
+ CloudWorkloadSecurityAgentRuleUpdateData::new(
+ CloudWorkloadSecurityAgentRuleUpdateAttributes::new()
+ .description("Test Agent rule".to_string())
+ .enabled(true)
+ .expression(r#"exec.file.name == "sh""#.to_string()),
+ CloudWorkloadSecurityAgentRuleType::AGENT_RULE,
+ )
+ .id(agent_rule_data_id.clone()),
+ );
+ let configuration = Configuration::new();
+ let api = CloudWorkloadSecurityAPI::with_config(configuration);
+ let resp = api
+ .update_csm_threats_agent_rule(agent_rule_data_id.clone(), body)
+ .await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_cloudflare-integration_create_cloudflare_account.rs b/examples/v2_cloudflare-integration_create_cloudflare_account.rs
index f429c3c79..a0b3117d4 100644
--- a/examples/v2_cloudflare-integration_create_cloudflare_account.rs
+++ b/examples/v2_cloudflare-integration_create_cloudflare_account.rs
@@ -13,7 +13,7 @@ async fn main() {
"fakekey".to_string(),
"examplecloudflareintegration".to_string(),
)
- .email("new@email".to_string()),
+ .email("dev@datadoghq.com".to_string()),
CloudflareAccountType::CLOUDFLARE_ACCOUNTS,
));
let configuration = Configuration::new();
diff --git a/examples/v2_cloudflare-integration_update_cloudflare_account.rs b/examples/v2_cloudflare-integration_update_cloudflare_account.rs
index fe988e9e6..942cc08eb 100644
--- a/examples/v2_cloudflare-integration_update_cloudflare_account.rs
+++ b/examples/v2_cloudflare-integration_update_cloudflare_account.rs
@@ -14,7 +14,8 @@ async fn main() {
CloudflareAccountUpdateRequestData::new()
.attributes(
CloudflareAccountUpdateRequestAttributes::new("fakekey".to_string())
- .email("new@email".to_string()),
+ .email("dev@datadoghq.com".to_string())
+ .zones(vec!["zone-id-3".to_string()]),
)
.type_(CloudflareAccountType::CLOUDFLARE_ACCOUNTS),
);
diff --git a/examples/v2_dora-metrics_create_dora_incident.rs b/examples/v2_dora-metrics_create_dora_incident.rs
index 34186e1a7..fef8370cb 100644
--- a/examples/v2_dora-metrics_create_dora_incident.rs
+++ b/examples/v2_dora-metrics_create_dora_incident.rs
@@ -9,14 +9,16 @@ use datadog_api_client::datadogV2::model::DORAIncidentRequestData;
#[tokio::main]
async fn main() {
let body = DORAIncidentRequest::new(DORAIncidentRequestData::new(
- DORAIncidentRequestAttributes::new("shopist".to_string(), 1693491974000000000)
- .finished_at(1693491984000000000)
+ DORAIncidentRequestAttributes::new(1707842944500000000)
+ .finished_at(1707842944600000000)
.git(DORAGitInfo::new(
"66adc9350f2cc9b250b69abddab733dd55e1a588".to_string(),
"https://github.com/organization/example-repository".to_string(),
))
.name("Webserver is down failing all requests".to_string())
+ .services(vec!["shopist".to_string()])
.severity("High".to_string())
+ .team("backend".to_string())
.version("v1.12.07".to_string()),
));
let mut configuration = Configuration::new();
diff --git a/examples/v2_gcp-integration_create_gcpsts_account.rs b/examples/v2_gcp-integration_create_gcpsts_account.rs
index 32be41edc..9290866a7 100644
--- a/examples/v2_gcp-integration_create_gcpsts_account.rs
+++ b/examples/v2_gcp-integration_create_gcpsts_account.rs
@@ -13,7 +13,7 @@ async fn main() {
.attributes(
GCPSTSServiceAccountAttributes::new()
.client_email(
- "252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
+ "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
)
.host_filters(vec![]),
)
diff --git a/examples/v2_gcp-integration_create_gcpsts_account_109518525.rs b/examples/v2_gcp-integration_create_gcpsts_account_109518525.rs
index 74018bd6f..a4b0edb29 100644
--- a/examples/v2_gcp-integration_create_gcpsts_account_109518525.rs
+++ b/examples/v2_gcp-integration_create_gcpsts_account_109518525.rs
@@ -15,7 +15,7 @@ async fn main() {
GCPSTSServiceAccountAttributes::new()
.account_tags(vec!["lorem".to_string(), "ipsum".to_string()])
.client_email(
- "252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
+ "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
)
.host_filters(vec![]),
)
diff --git a/examples/v2_gcp-integration_create_gcpsts_account_130557025.rs b/examples/v2_gcp-integration_create_gcpsts_account_130557025.rs
index d0892da45..377ad87ec 100644
--- a/examples/v2_gcp-integration_create_gcpsts_account_130557025.rs
+++ b/examples/v2_gcp-integration_create_gcpsts_account_130557025.rs
@@ -14,7 +14,7 @@ async fn main() {
.attributes(
GCPSTSServiceAccountAttributes::new()
.client_email(
- "252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
+ "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
)
.host_filters(vec![])
.resource_collection_enabled(true),
diff --git a/examples/v2_gcp-integration_create_gcpsts_account_194782945.rs b/examples/v2_gcp-integration_create_gcpsts_account_194782945.rs
new file mode 100644
index 000000000..9a9107a8a
--- /dev/null
+++ b/examples/v2_gcp-integration_create_gcpsts_account_194782945.rs
@@ -0,0 +1,32 @@
+// Create a new entry for your service account with cloud run revision filters
+// enabled returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_gcp_integration::GCPIntegrationAPI;
+use datadog_api_client::datadogV2::model::GCPSTSServiceAccountAttributes;
+use datadog_api_client::datadogV2::model::GCPSTSServiceAccountCreateRequest;
+use datadog_api_client::datadogV2::model::GCPSTSServiceAccountData;
+use datadog_api_client::datadogV2::model::GCPServiceAccountType;
+
+#[tokio::main]
+async fn main() {
+ let body = GCPSTSServiceAccountCreateRequest::new().data(
+ GCPSTSServiceAccountData::new()
+ .attributes(
+ GCPSTSServiceAccountAttributes::new()
+ .client_email(
+ "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
+ )
+ .cloud_run_revision_filters(vec!["meh:bleh".to_string()])
+ .host_filters(vec![]),
+ )
+ .type_(GCPServiceAccountType::GCP_SERVICE_ACCOUNT),
+ );
+ let configuration = Configuration::new();
+ let api = GCPIntegrationAPI::with_config(configuration);
+ let resp = api.create_gcpsts_account(body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_gcp-integration_create_gcpsts_account_2597004741.rs b/examples/v2_gcp-integration_create_gcpsts_account_2597004741.rs
index 46fbd535d..f23bdf042 100644
--- a/examples/v2_gcp-integration_create_gcpsts_account_2597004741.rs
+++ b/examples/v2_gcp-integration_create_gcpsts_account_2597004741.rs
@@ -14,7 +14,7 @@ async fn main() {
.attributes(
GCPSTSServiceAccountAttributes::new()
.client_email(
- "252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
+ "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
)
.host_filters(vec![])
.is_security_command_center_enabled(true),
diff --git a/examples/v2_gcp-integration_create_gcpsts_account_4235664992.rs b/examples/v2_gcp-integration_create_gcpsts_account_4235664992.rs
index 2743c39df..094a59912 100644
--- a/examples/v2_gcp-integration_create_gcpsts_account_4235664992.rs
+++ b/examples/v2_gcp-integration_create_gcpsts_account_4235664992.rs
@@ -14,7 +14,7 @@ async fn main() {
.attributes(
GCPSTSServiceAccountAttributes::new()
.client_email(
- "252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
+ "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
)
.host_filters(vec![])
.is_cspm_enabled(true)
diff --git a/examples/v2_gcp-integration_update_gcpsts_account.rs b/examples/v2_gcp-integration_update_gcpsts_account.rs
index 16bf928e5..de4eeb635 100644
--- a/examples/v2_gcp-integration_update_gcpsts_account.rs
+++ b/examples/v2_gcp-integration_update_gcpsts_account.rs
@@ -14,7 +14,7 @@ async fn main() {
GCPSTSServiceAccountUpdateRequestData::new()
.attributes(
GCPSTSServiceAccountAttributes::new()
- .client_email("252bf553ef04b351@example.com".to_string())
+ .client_email("Test-252bf553ef04b351@example.com".to_string())
.host_filters(vec!["foo:bar".to_string()]),
)
.id(gcp_sts_account_data_id.clone())
diff --git a/examples/v2_gcp-integration_update_gcpsts_account_2241994060.rs b/examples/v2_gcp-integration_update_gcpsts_account_2241994060.rs
new file mode 100644
index 000000000..d72669a51
--- /dev/null
+++ b/examples/v2_gcp-integration_update_gcpsts_account_2241994060.rs
@@ -0,0 +1,33 @@
+// Update STS Service Account returns "OK" response with cloud run revision filters
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_gcp_integration::GCPIntegrationAPI;
+use datadog_api_client::datadogV2::model::GCPSTSServiceAccountAttributes;
+use datadog_api_client::datadogV2::model::GCPSTSServiceAccountUpdateRequest;
+use datadog_api_client::datadogV2::model::GCPSTSServiceAccountUpdateRequestData;
+use datadog_api_client::datadogV2::model::GCPServiceAccountType;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "gcp_sts_account" in the system
+ let gcp_sts_account_data_id = std::env::var("GCP_STS_ACCOUNT_DATA_ID").unwrap();
+ let body = GCPSTSServiceAccountUpdateRequest::new().data(
+ GCPSTSServiceAccountUpdateRequestData::new()
+ .attributes(
+ GCPSTSServiceAccountAttributes::new()
+ .client_email("Test-252bf553ef04b351@example.com".to_string())
+ .cloud_run_revision_filters(vec!["merp:derp".to_string()]),
+ )
+ .id(gcp_sts_account_data_id.clone())
+ .type_(GCPServiceAccountType::GCP_SERVICE_ACCOUNT),
+ );
+ let configuration = Configuration::new();
+ let api = GCPIntegrationAPI::with_config(configuration);
+ let resp = api
+ .update_gcpsts_account(gcp_sts_account_data_id.clone(), body)
+ .await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_gcp-integration_update_gcpsts_account_3205636354.rs b/examples/v2_gcp-integration_update_gcpsts_account_3205636354.rs
index cabb68285..2b783c7e6 100644
--- a/examples/v2_gcp-integration_update_gcpsts_account_3205636354.rs
+++ b/examples/v2_gcp-integration_update_gcpsts_account_3205636354.rs
@@ -15,7 +15,7 @@ async fn main() {
GCPSTSServiceAccountUpdateRequestData::new()
.attributes(
GCPSTSServiceAccountAttributes::new()
- .client_email("252bf553ef04b351@example.com".to_string())
+ .client_email("Test-252bf553ef04b351@example.com".to_string())
.resource_collection_enabled(true),
)
.id(gcp_sts_account_data_id.clone())
diff --git a/examples/v2_logs-custom-destinations_create_logs_custom_destination.rs b/examples/v2_logs-custom-destinations_create_logs_custom_destination.rs
new file mode 100644
index 000000000..d30c1f357
--- /dev/null
+++ b/examples/v2_logs-custom-destinations_create_logs_custom_destination.rs
@@ -0,0 +1,53 @@
+// Create a custom destination returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_logs_custom_destinations::LogsCustomDestinationsAPI;
+use datadog_api_client::datadogV2::model::CustomDestinationAttributeTagsRestrictionListType;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequest;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequestAttributes;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequestDefinition;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestination;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestinationHttp;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestinationHttpType;
+use datadog_api_client::datadogV2::model::CustomDestinationHttpDestinationAuth;
+use datadog_api_client::datadogV2::model::CustomDestinationHttpDestinationAuthBasic;
+use datadog_api_client::datadogV2::model::CustomDestinationHttpDestinationAuthBasicType;
+use datadog_api_client::datadogV2::model::CustomDestinationType;
+
+#[tokio::main]
+async fn main() {
+ let body = CustomDestinationCreateRequest::new()
+ .data(CustomDestinationCreateRequestDefinition::new(
+ CustomDestinationCreateRequestAttributes::new(
+ CustomDestinationForwardDestination::CustomDestinationForwardDestinationHttp(Box::new(
+ CustomDestinationForwardDestinationHttp::new(
+ CustomDestinationHttpDestinationAuth::CustomDestinationHttpDestinationAuthBasic(
+ Box::new(CustomDestinationHttpDestinationAuthBasic::new(
+ "datadog-custom-destination-password".to_string(),
+ CustomDestinationHttpDestinationAuthBasicType::BASIC,
+ "datadog-custom-destination-username".to_string(),
+ )),
+ ),
+ "https://example.com".to_string(),
+ CustomDestinationForwardDestinationHttpType::HTTP,
+ ),
+ )),
+ "Nginx logs".to_string(),
+ )
+ .enabled(true)
+ .forward_tags(true)
+ .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
+ .forward_tags_restriction_list_type(
+ CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST,
+ )
+ .query("source:nginx".to_string()),
+ CustomDestinationType::CUSTOM_DESTINATION,
+ ));
+ let configuration = Configuration::new();
+ let api = LogsCustomDestinationsAPI::with_config(configuration);
+ let resp = api.create_logs_custom_destination(body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_logs-custom-destinations_create_logs_custom_destination_1091442807.rs b/examples/v2_logs-custom-destinations_create_logs_custom_destination_1091442807.rs
new file mode 100644
index 000000000..36cd873f7
--- /dev/null
+++ b/examples/v2_logs-custom-destinations_create_logs_custom_destination_1091442807.rs
@@ -0,0 +1,58 @@
+// Create a Custom Header HTTP custom destination returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_logs_custom_destinations::LogsCustomDestinationsAPI;
+use datadog_api_client::datadogV2::model::CustomDestinationAttributeTagsRestrictionListType;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequest;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequestAttributes;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequestDefinition;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestination;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestinationHttp;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestinationHttpType;
+use datadog_api_client::datadogV2::model::CustomDestinationHttpDestinationAuth;
+use datadog_api_client::datadogV2::model::CustomDestinationHttpDestinationAuthCustomHeader;
+use datadog_api_client::datadogV2::model::CustomDestinationHttpDestinationAuthCustomHeaderType;
+use datadog_api_client::datadogV2::model::CustomDestinationType;
+
+#[tokio::main]
+async fn main() {
+ let body =
+ CustomDestinationCreateRequest
+ ::new().data(
+ CustomDestinationCreateRequestDefinition::new(
+ CustomDestinationCreateRequestAttributes::new(
+ CustomDestinationForwardDestination::CustomDestinationForwardDestinationHttp(
+ Box::new(
+ CustomDestinationForwardDestinationHttp::new(
+ CustomDestinationHttpDestinationAuth::CustomDestinationHttpDestinationAuthCustomHeader(
+ Box::new(
+ CustomDestinationHttpDestinationAuthCustomHeader::new(
+ "MY-AUTHENTICATION-HEADER".to_string(),
+ "my-secret".to_string(),
+ CustomDestinationHttpDestinationAuthCustomHeaderType::CUSTOM_HEADER,
+ ),
+ ),
+ ),
+ "https://example.com".to_string(),
+ CustomDestinationForwardDestinationHttpType::HTTP,
+ ),
+ ),
+ ),
+ "Nginx logs".to_string(),
+ )
+ .enabled(false)
+ .forward_tags(false)
+ .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
+ .forward_tags_restriction_list_type(CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST)
+ .query("source:nginx".to_string()),
+ CustomDestinationType::CUSTOM_DESTINATION,
+ ),
+ );
+ let configuration = Configuration::new();
+ let api = LogsCustomDestinationsAPI::with_config(configuration);
+ let resp = api.create_logs_custom_destination(body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_logs-custom-destinations_create_logs_custom_destination_1288180912.rs b/examples/v2_logs-custom-destinations_create_logs_custom_destination_1288180912.rs
new file mode 100644
index 000000000..828205472
--- /dev/null
+++ b/examples/v2_logs-custom-destinations_create_logs_custom_destination_1288180912.rs
@@ -0,0 +1,44 @@
+// Create a Splunk custom destination returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_logs_custom_destinations::LogsCustomDestinationsAPI;
+use datadog_api_client::datadogV2::model::CustomDestinationAttributeTagsRestrictionListType;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequest;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequestAttributes;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequestDefinition;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestination;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestinationSplunk;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestinationSplunkType;
+use datadog_api_client::datadogV2::model::CustomDestinationType;
+
+#[tokio::main]
+async fn main() {
+ let body =
+ CustomDestinationCreateRequest::new().data(CustomDestinationCreateRequestDefinition::new(
+ CustomDestinationCreateRequestAttributes::new(
+ CustomDestinationForwardDestination::CustomDestinationForwardDestinationSplunk(
+ Box::new(CustomDestinationForwardDestinationSplunk::new(
+ "my-access-token".to_string(),
+ "https://example.com".to_string(),
+ CustomDestinationForwardDestinationSplunkType::SPLUNK_HEC,
+ )),
+ ),
+ "Nginx logs".to_string(),
+ )
+ .enabled(false)
+ .forward_tags(false)
+ .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
+ .forward_tags_restriction_list_type(
+ CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST,
+ )
+ .query("source:nginx".to_string()),
+ CustomDestinationType::CUSTOM_DESTINATION,
+ ));
+ let configuration = Configuration::new();
+ let api = LogsCustomDestinationsAPI::with_config(configuration);
+ let resp = api.create_logs_custom_destination(body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_logs-custom-destinations_create_logs_custom_destination_141236188.rs b/examples/v2_logs-custom-destinations_create_logs_custom_destination_141236188.rs
new file mode 100644
index 000000000..8640b1a11
--- /dev/null
+++ b/examples/v2_logs-custom-destinations_create_logs_custom_destination_141236188.rs
@@ -0,0 +1,52 @@
+// Create an Elasticsearch custom destination returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_logs_custom_destinations::LogsCustomDestinationsAPI;
+use datadog_api_client::datadogV2::model::CustomDestinationAttributeTagsRestrictionListType;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequest;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequestAttributes;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequestDefinition;
+use datadog_api_client::datadogV2::model::CustomDestinationElasticsearchDestinationAuth;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestination;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestinationElasticsearch;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestinationElasticsearchType;
+use datadog_api_client::datadogV2::model::CustomDestinationType;
+
+#[tokio::main]
+async fn main() {
+ let body = CustomDestinationCreateRequest::new()
+ .data(CustomDestinationCreateRequestDefinition::new(
+ CustomDestinationCreateRequestAttributes::new(
+ CustomDestinationForwardDestination::CustomDestinationForwardDestinationElasticsearch(
+ Box::new(
+ CustomDestinationForwardDestinationElasticsearch::new(
+ CustomDestinationElasticsearchDestinationAuth::new(
+ "my-password".to_string(),
+ "my-username".to_string(),
+ ),
+ "https://example.com".to_string(),
+ "nginx-logs".to_string(),
+ CustomDestinationForwardDestinationElasticsearchType::ELASTICSEARCH,
+ )
+ .index_rotation("yyyy-MM-dd".to_string()),
+ ),
+ ),
+ "Nginx logs".to_string(),
+ )
+ .enabled(false)
+ .forward_tags(false)
+ .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
+ .forward_tags_restriction_list_type(
+ CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST,
+ )
+ .query("source:nginx".to_string()),
+ CustomDestinationType::CUSTOM_DESTINATION,
+ ));
+ let configuration = Configuration::new();
+ let api = LogsCustomDestinationsAPI::with_config(configuration);
+ let resp = api.create_logs_custom_destination(body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_logs-custom-destinations_create_logs_custom_destination_2184123765.rs b/examples/v2_logs-custom-destinations_create_logs_custom_destination_2184123765.rs
new file mode 100644
index 000000000..dcc1ae79d
--- /dev/null
+++ b/examples/v2_logs-custom-destinations_create_logs_custom_destination_2184123765.rs
@@ -0,0 +1,53 @@
+// Create a Basic HTTP custom destination returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_logs_custom_destinations::LogsCustomDestinationsAPI;
+use datadog_api_client::datadogV2::model::CustomDestinationAttributeTagsRestrictionListType;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequest;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequestAttributes;
+use datadog_api_client::datadogV2::model::CustomDestinationCreateRequestDefinition;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestination;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestinationHttp;
+use datadog_api_client::datadogV2::model::CustomDestinationForwardDestinationHttpType;
+use datadog_api_client::datadogV2::model::CustomDestinationHttpDestinationAuth;
+use datadog_api_client::datadogV2::model::CustomDestinationHttpDestinationAuthBasic;
+use datadog_api_client::datadogV2::model::CustomDestinationHttpDestinationAuthBasicType;
+use datadog_api_client::datadogV2::model::CustomDestinationType;
+
+#[tokio::main]
+async fn main() {
+ let body = CustomDestinationCreateRequest::new()
+ .data(CustomDestinationCreateRequestDefinition::new(
+ CustomDestinationCreateRequestAttributes::new(
+ CustomDestinationForwardDestination::CustomDestinationForwardDestinationHttp(Box::new(
+ CustomDestinationForwardDestinationHttp::new(
+ CustomDestinationHttpDestinationAuth::CustomDestinationHttpDestinationAuthBasic(
+ Box::new(CustomDestinationHttpDestinationAuthBasic::new(
+ "datadog-custom-destination-password".to_string(),
+ CustomDestinationHttpDestinationAuthBasicType::BASIC,
+ "datadog-custom-destination-username".to_string(),
+ )),
+ ),
+ "https://example.com".to_string(),
+ CustomDestinationForwardDestinationHttpType::HTTP,
+ ),
+ )),
+ "Nginx logs".to_string(),
+ )
+ .enabled(false)
+ .forward_tags(false)
+ .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
+ .forward_tags_restriction_list_type(
+ CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST,
+ )
+ .query("source:nginx".to_string()),
+ CustomDestinationType::CUSTOM_DESTINATION,
+ ));
+ let configuration = Configuration::new();
+ let api = LogsCustomDestinationsAPI::with_config(configuration);
+ let resp = api.create_logs_custom_destination(body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_logs-custom-destinations_delete_logs_custom_destination.rs b/examples/v2_logs-custom-destinations_delete_logs_custom_destination.rs
new file mode 100644
index 000000000..95656363f
--- /dev/null
+++ b/examples/v2_logs-custom-destinations_delete_logs_custom_destination.rs
@@ -0,0 +1,19 @@
+// Delete a custom destination returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_logs_custom_destinations::LogsCustomDestinationsAPI;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "custom_destination" in the system
+ let custom_destination_data_id = std::env::var("CUSTOM_DESTINATION_DATA_ID").unwrap();
+ let configuration = Configuration::new();
+ let api = LogsCustomDestinationsAPI::with_config(configuration);
+ let resp = api
+ .delete_logs_custom_destination(custom_destination_data_id.clone())
+ .await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_logs-custom-destinations_get_logs_custom_destination.rs b/examples/v2_logs-custom-destinations_get_logs_custom_destination.rs
new file mode 100644
index 000000000..e103735ac
--- /dev/null
+++ b/examples/v2_logs-custom-destinations_get_logs_custom_destination.rs
@@ -0,0 +1,19 @@
+// Get a custom destination returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_logs_custom_destinations::LogsCustomDestinationsAPI;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "custom_destination" in the system
+ let custom_destination_data_id = std::env::var("CUSTOM_DESTINATION_DATA_ID").unwrap();
+ let configuration = Configuration::new();
+ let api = LogsCustomDestinationsAPI::with_config(configuration);
+ let resp = api
+ .get_logs_custom_destination(custom_destination_data_id.clone())
+ .await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_logs-custom-destinations_list_logs_custom_destinations.rs b/examples/v2_logs-custom-destinations_list_logs_custom_destinations.rs
new file mode 100644
index 000000000..e1725c3e5
--- /dev/null
+++ b/examples/v2_logs-custom-destinations_list_logs_custom_destinations.rs
@@ -0,0 +1,15 @@
+// Get all custom destinations returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_logs_custom_destinations::LogsCustomDestinationsAPI;
+
+#[tokio::main]
+async fn main() {
+ let configuration = Configuration::new();
+ let api = LogsCustomDestinationsAPI::with_config(configuration);
+ let resp = api.list_logs_custom_destinations().await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_logs-custom-destinations_update_logs_custom_destination.rs b/examples/v2_logs-custom-destinations_update_logs_custom_destination.rs
new file mode 100644
index 000000000..30ea195ae
--- /dev/null
+++ b/examples/v2_logs-custom-destinations_update_logs_custom_destination.rs
@@ -0,0 +1,33 @@
+// Update a custom destination returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_logs_custom_destinations::LogsCustomDestinationsAPI;
+use datadog_api_client::datadogV2::model::CustomDestinationType;
+use datadog_api_client::datadogV2::model::CustomDestinationUpdateRequest;
+use datadog_api_client::datadogV2::model::CustomDestinationUpdateRequestAttributes;
+use datadog_api_client::datadogV2::model::CustomDestinationUpdateRequestDefinition;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "custom_destination" in the system
+ let custom_destination_data_id = std::env::var("CUSTOM_DESTINATION_DATA_ID").unwrap();
+ let body = CustomDestinationUpdateRequest::new().data(
+ CustomDestinationUpdateRequestDefinition::new(
+ custom_destination_data_id.clone(),
+ CustomDestinationType::CUSTOM_DESTINATION,
+ )
+ .attributes(
+ CustomDestinationUpdateRequestAttributes::new()
+ .name("Nginx logs (Updated)".to_string()),
+ ),
+ );
+ let configuration = Configuration::new();
+ let api = LogsCustomDestinationsAPI::with_config(configuration);
+ let resp = api
+ .update_logs_custom_destination(custom_destination_data_id.clone(), body)
+ .await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_metrics_list_metric_assets.rs b/examples/v2_metrics_list_metric_assets.rs
new file mode 100644
index 000000000..ce9f0663c
--- /dev/null
+++ b/examples/v2_metrics_list_metric_assets.rs
@@ -0,0 +1,15 @@
+// Related Assets to a Metric returns "Success" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_metrics::MetricsAPI;
+
+#[tokio::main]
+async fn main() {
+ let configuration = Configuration::new();
+ let api = MetricsAPI::with_config(configuration);
+ let resp = api.list_metric_assets("system.cpu.user".to_string()).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_okta-integration_create_okta_account.rs b/examples/v2_okta-integration_create_okta_account.rs
index 89848502e..989b3a745 100644
--- a/examples/v2_okta-integration_create_okta_account.rs
+++ b/examples/v2_okta-integration_create_okta_account.rs
@@ -13,7 +13,7 @@ async fn main() {
OktaAccountAttributes::new(
"oauth".to_string(),
"https://example.okta.com/".to_string(),
- "Okta_Prod".to_string(),
+ "exampleoktaintegration".to_string(),
)
.client_id("client_id".to_string())
.client_secret("client_secret".to_string()),
diff --git a/examples/v2_security-monitoring_create_security_monitoring_suppression.rs b/examples/v2_security-monitoring_create_security_monitoring_suppression.rs
new file mode 100644
index 000000000..4e4de2036
--- /dev/null
+++ b/examples/v2_security-monitoring_create_security_monitoring_suppression.rs
@@ -0,0 +1,34 @@
+// Create a suppression rule returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_security_monitoring::SecurityMonitoringAPI;
+use datadog_api_client::datadogV2::model::SecurityMonitoringSuppressionCreateAttributes;
+use datadog_api_client::datadogV2::model::SecurityMonitoringSuppressionCreateData;
+use datadog_api_client::datadogV2::model::SecurityMonitoringSuppressionCreateRequest;
+use datadog_api_client::datadogV2::model::SecurityMonitoringSuppressionType;
+
+#[tokio::main]
+async fn main() {
+ let body = SecurityMonitoringSuppressionCreateRequest::new(
+ SecurityMonitoringSuppressionCreateData::new(
+ SecurityMonitoringSuppressionCreateAttributes::new(
+ true,
+ "Example-Security-Monitoring".to_string(),
+ "type:log_detection source:cloudtrail".to_string(),
+ "env:staging status:low".to_string(),
+ )
+ .description(
+ "This rule suppresses low-severity signals in staging environments.".to_string(),
+ )
+ .expiration_date(1703187336000),
+ SecurityMonitoringSuppressionType::SUPPRESSIONS,
+ ),
+ );
+ let configuration = Configuration::new();
+ let api = SecurityMonitoringAPI::with_config(configuration);
+ let resp = api.create_security_monitoring_suppression(body).await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_security-monitoring_delete_security_monitoring_suppression.rs b/examples/v2_security-monitoring_delete_security_monitoring_suppression.rs
new file mode 100644
index 000000000..0cbab276f
--- /dev/null
+++ b/examples/v2_security-monitoring_delete_security_monitoring_suppression.rs
@@ -0,0 +1,19 @@
+// Delete a suppression rule returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_security_monitoring::SecurityMonitoringAPI;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "suppression" in the system
+ let suppression_data_id = std::env::var("SUPPRESSION_DATA_ID").unwrap();
+ let configuration = Configuration::new();
+ let api = SecurityMonitoringAPI::with_config(configuration);
+ let resp = api
+ .delete_security_monitoring_suppression(suppression_data_id.clone())
+ .await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_security-monitoring_get_security_monitoring_suppression.rs b/examples/v2_security-monitoring_get_security_monitoring_suppression.rs
new file mode 100644
index 000000000..c7ea76f74
--- /dev/null
+++ b/examples/v2_security-monitoring_get_security_monitoring_suppression.rs
@@ -0,0 +1,19 @@
+// Get a suppression rule returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_security_monitoring::SecurityMonitoringAPI;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "suppression" in the system
+ let suppression_data_id = std::env::var("SUPPRESSION_DATA_ID").unwrap();
+ let configuration = Configuration::new();
+ let api = SecurityMonitoringAPI::with_config(configuration);
+ let resp = api
+ .get_security_monitoring_suppression(suppression_data_id.clone())
+ .await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_security-monitoring_list_security_monitoring_suppressions.rs b/examples/v2_security-monitoring_list_security_monitoring_suppressions.rs
new file mode 100644
index 000000000..7f8f21dc6
--- /dev/null
+++ b/examples/v2_security-monitoring_list_security_monitoring_suppressions.rs
@@ -0,0 +1,15 @@
+// Get all suppression rules returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_security_monitoring::SecurityMonitoringAPI;
+
+#[tokio::main]
+async fn main() {
+ let configuration = Configuration::new();
+ let api = SecurityMonitoringAPI::with_config(configuration);
+ let resp = api.list_security_monitoring_suppressions().await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_security-monitoring_update_security_monitoring_suppression.rs b/examples/v2_security-monitoring_update_security_monitoring_suppression.rs
new file mode 100644
index 000000000..2e3a8c4a9
--- /dev/null
+++ b/examples/v2_security-monitoring_update_security_monitoring_suppression.rs
@@ -0,0 +1,30 @@
+// Update a suppression rule returns "OK" response
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_security_monitoring::SecurityMonitoringAPI;
+use datadog_api_client::datadogV2::model::SecurityMonitoringSuppressionType;
+use datadog_api_client::datadogV2::model::SecurityMonitoringSuppressionUpdateAttributes;
+use datadog_api_client::datadogV2::model::SecurityMonitoringSuppressionUpdateData;
+use datadog_api_client::datadogV2::model::SecurityMonitoringSuppressionUpdateRequest;
+
+#[tokio::main]
+async fn main() {
+ // there is a valid "suppression" in the system
+ let suppression_data_id = std::env::var("SUPPRESSION_DATA_ID").unwrap();
+ let body = SecurityMonitoringSuppressionUpdateRequest::new(
+ SecurityMonitoringSuppressionUpdateData::new(
+ SecurityMonitoringSuppressionUpdateAttributes::new()
+ .suppression_query("env:staging status:low".to_string()),
+ SecurityMonitoringSuppressionType::SUPPRESSIONS,
+ ),
+ );
+ let configuration = Configuration::new();
+ let api = SecurityMonitoringAPI::with_config(configuration);
+ let resp = api
+ .update_security_monitoring_suppression(suppression_data_id.clone(), body)
+ .await;
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+}
diff --git a/examples/v2_sensitive-data-scanner_create_scanning_rule.rs b/examples/v2_sensitive-data-scanner_create_scanning_rule.rs
index 414cfc5df..b40bdc718 100644
--- a/examples/v2_sensitive-data-scanner_create_scanning_rule.rs
+++ b/examples/v2_sensitive-data-scanner_create_scanning_rule.rs
@@ -4,6 +4,7 @@ use datadog_api_client::datadogV2::api::api_sensitive_data_scanner::SensitiveDat
use datadog_api_client::datadogV2::model::SensitiveDataScannerGroup;
use datadog_api_client::datadogV2::model::SensitiveDataScannerGroupData;
use datadog_api_client::datadogV2::model::SensitiveDataScannerGroupType;
+use datadog_api_client::datadogV2::model::SensitiveDataScannerIncludedKeywordConfiguration;
use datadog_api_client::datadogV2::model::SensitiveDataScannerMetaVersionOnly;
use datadog_api_client::datadogV2::model::SensitiveDataScannerRuleAttributes;
use datadog_api_client::datadogV2::model::SensitiveDataScannerRuleCreate;
@@ -21,6 +22,12 @@ async fn main() {
SensitiveDataScannerRuleCreate::new(
SensitiveDataScannerRuleAttributes::new()
.excluded_namespaces(vec!["admin.name".to_string()])
+ .included_keyword_configuration(
+ SensitiveDataScannerIncludedKeywordConfiguration::new(
+ 35,
+ vec!["credit card".to_string()],
+ ),
+ )
.is_enabled(true)
.name("Example-Sensitive-Data-Scanner".to_string())
.namespaces(vec!["admin".to_string()])
diff --git a/examples/v2_sensitive-data-scanner_update_scanning_rule.rs b/examples/v2_sensitive-data-scanner_update_scanning_rule.rs
index 1e7735f29..b15b632a0 100644
--- a/examples/v2_sensitive-data-scanner_update_scanning_rule.rs
+++ b/examples/v2_sensitive-data-scanner_update_scanning_rule.rs
@@ -1,12 +1,9 @@
// Update Scanning Rule returns "OK" response
use datadog_api_client::datadog::configuration::Configuration;
use datadog_api_client::datadogV2::api::api_sensitive_data_scanner::SensitiveDataScannerAPI;
-use datadog_api_client::datadogV2::model::SensitiveDataScannerGroup;
-use datadog_api_client::datadogV2::model::SensitiveDataScannerGroupData;
-use datadog_api_client::datadogV2::model::SensitiveDataScannerGroupType;
+use datadog_api_client::datadogV2::model::SensitiveDataScannerIncludedKeywordConfiguration;
use datadog_api_client::datadogV2::model::SensitiveDataScannerMetaVersionOnly;
use datadog_api_client::datadogV2::model::SensitiveDataScannerRuleAttributes;
-use datadog_api_client::datadogV2::model::SensitiveDataScannerRuleRelationships;
use datadog_api_client::datadogV2::model::SensitiveDataScannerRuleType;
use datadog_api_client::datadogV2::model::SensitiveDataScannerRuleUpdate;
use datadog_api_client::datadogV2::model::SensitiveDataScannerRuleUpdateRequest;
@@ -17,13 +14,16 @@ use datadog_api_client::datadogV2::model::SensitiveDataScannerTextReplacementTyp
async fn main() {
// the "scanning_group" has a "scanning_rule"
let rule_data_id = std::env::var("RULE_DATA_ID").unwrap();
-
- // there is a valid "scanning_group" in the system
- let group_data_id = std::env::var("GROUP_DATA_ID").unwrap();
let body = SensitiveDataScannerRuleUpdateRequest::new(
SensitiveDataScannerRuleUpdate::new()
.attributes(
SensitiveDataScannerRuleAttributes::new()
+ .included_keyword_configuration(
+ SensitiveDataScannerIncludedKeywordConfiguration::new(
+ 35,
+ vec!["credit card".to_string(), "cc".to_string()],
+ ),
+ )
.is_enabled(true)
.name("Example-Sensitive-Data-Scanner".to_string())
.pattern("pattern".to_string())
@@ -35,15 +35,6 @@ async fn main() {
),
)
.id(rule_data_id.clone())
- .relationships(
- SensitiveDataScannerRuleRelationships::new().group(
- SensitiveDataScannerGroupData::new().data(
- SensitiveDataScannerGroup::new()
- .id(group_data_id.clone())
- .type_(SensitiveDataScannerGroupType::SENSITIVE_DATA_SCANNER_GROUP),
- ),
- ),
- )
.type_(SensitiveDataScannerRuleType::SENSITIVE_DATA_SCANNER_RULE),
SensitiveDataScannerMetaVersionOnly::new(),
);
diff --git a/examples/v2_service-definition_create_or_update_service_definitions.rs b/examples/v2_service-definition_create_or_update_service_definitions.rs
index ac48ffb59..a526f87c7 100644
--- a/examples/v2_service-definition_create_or_update_service_definitions.rs
+++ b/examples/v2_service-definition_create_or_update_service_definitions.rs
@@ -22,6 +22,7 @@ async fn main() {
ServiceDefinitionV2Dot2Version::V2_2,
)
.application("my-app".to_string())
+ .ci_pipeline_fingerprints(vec!["j88xdEy0J5lc".to_string(), "eZ7LMljCk8vo".to_string()])
.contacts(vec![ServiceDefinitionV2Dot2Contact::new(
"https://teams.microsoft.com/myteam".to_string(),
"slack".to_string(),
diff --git a/examples/v2_teams_get_team_memberships_3799131168.rs b/examples/v2_teams_get_team_memberships_3799131168.rs
new file mode 100644
index 000000000..6b1d9fd26
--- /dev/null
+++ b/examples/v2_teams_get_team_memberships_3799131168.rs
@@ -0,0 +1,25 @@
+// Get team memberships returns "Represents a user's association to a team"
+// response with pagination
+use datadog_api_client::datadog::configuration::Configuration;
+use datadog_api_client::datadogV2::api::api_teams::GetTeamMembershipsOptionalParams;
+use datadog_api_client::datadogV2::api::api_teams::TeamsAPI;
+use futures_util::pin_mut;
+use futures_util::stream::StreamExt;
+
+#[tokio::main]
+async fn main() {
+ let configuration = Configuration::new();
+ let api = TeamsAPI::with_config(configuration);
+ let response = api.get_team_memberships_with_pagination(
+ "2e06bf2c-193b-41d4-b3c2-afccc080458f".to_string(),
+ GetTeamMembershipsOptionalParams::default().page_size(2),
+ );
+ pin_mut!(response);
+ while let Some(resp) = response.next().await {
+ if let Ok(value) = resp {
+ println!("{:#?}", value);
+ } else {
+ println!("{:#?}", resp.unwrap_err());
+ }
+ }
+}
diff --git a/examples/v2_usage-metering_get_usage_lambda_traced_invocations.rs b/examples/v2_usage-metering_get_usage_lambda_traced_invocations.rs
index 947c37261..ed288af43 100644
--- a/examples/v2_usage-metering_get_usage_lambda_traced_invocations.rs
+++ b/examples/v2_usage-metering_get_usage_lambda_traced_invocations.rs
@@ -1,4 +1,4 @@
-// Get hourly usage for lambda traced invocations returns "OK" response
+// Get hourly usage for Lambda traced invocations returns "OK" response
use datadog_api_client::datadog::configuration::Configuration;
use datadog_api_client::datadogV2::api::api_usage_metering::GetUsageLambdaTracedInvocationsOptionalParams;
use datadog_api_client::datadogV2::api::api_usage_metering::UsageMeteringAPI;
diff --git a/src/datadog/configuration.rs b/src/datadog/configuration.rs
index 87d8106f5..56b1f8b6d 100644
--- a/src/datadog/configuration.rs
+++ b/src/datadog/configuration.rs
@@ -129,6 +129,10 @@ impl Default for Configuration {
env::consts::ARCH,
);
let unstable_operations = HashMap::from([
+ ("v2.create_open_api".to_owned(), false),
+ ("v2.delete_open_api".to_owned(), false),
+ ("v2.get_open_api".to_owned(), false),
+ ("v2.update_open_api".to_owned(), false),
("v2.get_active_billing_dimensions".to_owned(), false),
("v2.get_monthly_cost_attribution".to_owned(), false),
("v2.create_dora_deployment".to_owned(), false),
diff --git a/src/datadogV1/api/api_monitors.rs b/src/datadogV1/api/api_monitors.rs
index e98e13132..38db4eae7 100644
--- a/src/datadogV1/api/api_monitors.rs
+++ b/src/datadogV1/api/api_monitors.rs
@@ -510,7 +510,7 @@ impl MonitorsAPI {
/// - database-monitoring: `database-monitoring alert`
///
/// **Notes**:
- /// - Synthetic monitors are created through the Synthetics API. See the [Synthetics API] () documentation for more information.
+ /// - Synthetic monitors are created through the Synthetics API. See the [Synthetics API]() documentation for more information.
/// - Log monitors require an unscoped App Key.
///
/// #### Query Types
@@ -661,8 +661,6 @@ impl MonitorsAPI {
/// - `time_window` #m (between 1 and 2880), #h (between 1 and 48).
/// - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.
/// - `#` an integer or decimal number used to set the threshold.
- ///
- /// **NOTE** Database Monitoring monitors are in alpha on US1.
pub async fn create_monitor(
&self,
body: crate::datadogV1::model::Monitor,
@@ -710,7 +708,7 @@ impl MonitorsAPI {
/// - database-monitoring: `database-monitoring alert`
///
/// **Notes**:
- /// - Synthetic monitors are created through the Synthetics API. See the [Synthetics API] () documentation for more information.
+ /// - Synthetic monitors are created through the Synthetics API. See the [Synthetics API]() documentation for more information.
/// - Log monitors require an unscoped App Key.
///
/// #### Query Types
@@ -861,8 +859,6 @@ impl MonitorsAPI {
/// - `time_window` #m (between 1 and 2880), #h (between 1 and 48).
/// - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.
/// - `#` an integer or decimal number used to set the threshold.
- ///
- /// **NOTE** Database Monitoring monitors are in alpha on US1.
pub async fn create_monitor_with_http_info(
&self,
body: crate::datadogV1::model::Monitor,
diff --git a/src/datadogV1/api/api_usage_metering.rs b/src/datadogV1/api/api_usage_metering.rs
index 443264b69..e2364308d 100644
--- a/src/datadogV1/api/api_usage_metering.rs
+++ b/src/datadogV1/api/api_usage_metering.rs
@@ -3361,7 +3361,7 @@ impl UsageMeteringAPI {
}
}
- /// Get hourly usage for lambda.
+ /// Get hourly usage for Lambda.
/// **Note:** hourly usage data for all products is now available in the [Get hourly usage by product family API](). Refer to [Migrating from the V1 Hourly Usage APIs to V2]() for the associated migration guide.
pub async fn get_usage_lambda(
&self,
@@ -3382,7 +3382,7 @@ impl UsageMeteringAPI {
}
}
- /// Get hourly usage for lambda.
+ /// Get hourly usage for Lambda.
/// **Note:** hourly usage data for all products is now available in the [Get hourly usage by product family API](). Refer to [Migrating from the V1 Hourly Usage APIs to V2]() for the associated migration guide.
pub async fn get_usage_lambda_with_http_info(
&self,
diff --git a/src/datadogV1/model/mod.rs b/src/datadogV1/model/mod.rs
index 4e2f1f306..6cec703fa 100644
--- a/src/datadogV1/model/mod.rs
+++ b/src/datadogV1/model/mod.rs
@@ -756,6 +756,8 @@ pub mod model_logs_index_list_response;
pub use self::model_logs_index_list_response::LogsIndexListResponse;
pub mod model_logs_index;
pub use self::model_logs_index::LogsIndex;
+pub mod model_logs_daily_limit_reset;
+pub use self::model_logs_daily_limit_reset::LogsDailyLimitReset;
pub mod model_logs_exclusion;
pub use self::model_logs_exclusion::LogsExclusion;
pub mod model_logs_exclusion_filter;
@@ -1070,6 +1072,20 @@ pub mod model_service_level_objective;
pub use self::model_service_level_objective::ServiceLevelObjective;
pub mod model_service_level_objective_query;
pub use self::model_service_level_objective_query::ServiceLevelObjectiveQuery;
+pub mod model_slo_time_slice_spec;
+pub use self::model_slo_time_slice_spec::SLOTimeSliceSpec;
+pub mod model_slo_time_slice_condition;
+pub use self::model_slo_time_slice_condition::SLOTimeSliceCondition;
+pub mod model_slo_time_slice_comparator;
+pub use self::model_slo_time_slice_comparator::SLOTimeSliceComparator;
+pub mod model_slo_time_slice_query;
+pub use self::model_slo_time_slice_query::SLOTimeSliceQuery;
+pub mod model_slo_formula;
+pub use self::model_slo_formula::SLOFormula;
+pub mod model_slo_data_source_query_definition;
+pub use self::model_slo_data_source_query_definition::SLODataSourceQueryDefinition;
+pub mod model_slo_sli_spec;
+pub use self::model_slo_sli_spec::SLOSliSpec;
pub mod model_slo_threshold;
pub use self::model_slo_threshold::SLOThreshold;
pub mod model_slo_timeframe;
@@ -1304,6 +1320,8 @@ pub mod model_synthetics_test_request_certificate;
pub use self::model_synthetics_test_request_certificate::SyntheticsTestRequestCertificate;
pub mod model_synthetics_test_request_certificate_item;
pub use self::model_synthetics_test_request_certificate_item::SyntheticsTestRequestCertificateItem;
+pub mod model_synthetics_test_options_http_version;
+pub use self::model_synthetics_test_options_http_version::SyntheticsTestOptionsHTTPVersion;
pub mod model_synthetics_test_request_proxy;
pub use self::model_synthetics_test_request_proxy::SyntheticsTestRequestProxy;
pub mod model_synthetics_browser_variable;
@@ -1314,8 +1332,6 @@ pub mod model_synthetics_test_options;
pub use self::model_synthetics_test_options::SyntheticsTestOptions;
pub mod model_synthetics_test_ci_options;
pub use self::model_synthetics_test_ci_options::SyntheticsTestCiOptions;
-pub mod model_synthetics_test_options_http_version;
-pub use self::model_synthetics_test_options_http_version::SyntheticsTestOptionsHTTPVersion;
pub mod model_synthetics_test_options_monitor_options;
pub use self::model_synthetics_test_options_monitor_options::SyntheticsTestOptionsMonitorOptions;
pub mod model_synthetics_test_options_retry;
diff --git a/src/datadogV1/model/model_dashboard.rs b/src/datadogV1/model/model_dashboard.rs
index 12e3eb491..e3e2e704a 100644
--- a/src/datadogV1/model/model_dashboard.rs
+++ b/src/datadogV1/model/model_dashboard.rs
@@ -35,7 +35,9 @@ pub struct Dashboard {
/// ID of the dashboard.
#[serde(rename = "id")]
pub id: Option,
- /// Whether this dashboard is read-only. If True, only the author and admins can make changes to it. Prefer using `restricted_roles` to manage write authorization.
+ /// Whether this dashboard is read-only. If True, only the author and admins can make changes to it.
+ ///
+ /// This property is deprecated; please use the [Restriction Policies API]() instead to manage write authorization for individual dashboards.
#[deprecated]
#[serde(rename = "is_read_only")]
pub is_read_only: Option,
@@ -58,6 +60,9 @@ pub struct Dashboard {
#[serde(rename = "reflow_type")]
pub reflow_type: Option,
/// A list of role identifiers. Only the author and users associated with at least one of these roles can edit this dashboard.
+ ///
+ /// This property is deprecated; please use the [Restriction Policies API]() instead to manage write authorization for individual dashboards.
+ #[deprecated]
#[serde(rename = "restricted_roles")]
pub restricted_roles: Option>,
/// List of team names representing ownership of a dashboard.
diff --git a/src/datadogV1/model/model_dashboard_summary_definition.rs b/src/datadogV1/model/model_dashboard_summary_definition.rs
index 9b8d53e58..5df251d8a 100644
--- a/src/datadogV1/model/model_dashboard_summary_definition.rs
+++ b/src/datadogV1/model/model_dashboard_summary_definition.rs
@@ -28,6 +28,9 @@ pub struct DashboardSummaryDefinition {
#[serde(rename = "id")]
pub id: Option,
/// Whether this dashboard is read-only. If True, only the author and admins can make changes to it.
+ ///
+ /// This property is deprecated; please use the [Restriction Policies API]() instead to manage write authorization for individual dashboards.
+ #[deprecated]
#[serde(rename = "is_read_only")]
pub is_read_only: Option,
/// Layout type of the dashboard.
@@ -49,6 +52,7 @@ pub struct DashboardSummaryDefinition {
impl DashboardSummaryDefinition {
pub fn new() -> DashboardSummaryDefinition {
+ #[allow(deprecated)]
DashboardSummaryDefinition {
author_handle: None,
created_at: None,
@@ -63,46 +67,55 @@ impl DashboardSummaryDefinition {
}
}
+ #[allow(deprecated)]
pub fn author_handle(mut self, value: String) -> Self {
self.author_handle = Some(value);
self
}
+ #[allow(deprecated)]
pub fn created_at(mut self, value: String) -> Self {
self.created_at = Some(value);
self
}
+ #[allow(deprecated)]
pub fn description(mut self, value: Option) -> Self {
self.description = Some(value);
self
}
+ #[allow(deprecated)]
pub fn id(mut self, value: String) -> Self {
self.id = Some(value);
self
}
+ #[allow(deprecated)]
pub fn is_read_only(mut self, value: bool) -> Self {
self.is_read_only = Some(value);
self
}
+ #[allow(deprecated)]
pub fn layout_type(mut self, value: crate::datadogV1::model::DashboardLayoutType) -> Self {
self.layout_type = Some(value);
self
}
+ #[allow(deprecated)]
pub fn modified_at(mut self, value: String) -> Self {
self.modified_at = Some(value);
self
}
+ #[allow(deprecated)]
pub fn title(mut self, value: String) -> Self {
self.title = Some(value);
self
}
+ #[allow(deprecated)]
pub fn url(mut self, value: String) -> Self {
self.url = Some(value);
self
@@ -213,6 +226,7 @@ impl<'de> Deserialize<'de> for DashboardSummaryDefinition {
}
}
+ #[allow(deprecated)]
let content = DashboardSummaryDefinition {
author_handle,
created_at,
diff --git a/src/datadogV1/model/model_gcp_account.rs b/src/datadogV1/model/model_gcp_account.rs
index d28a5fcfc..9abd66a79 100644
--- a/src/datadogV1/model/model_gcp_account.rs
+++ b/src/datadogV1/model/model_gcp_account.rs
@@ -30,6 +30,10 @@ pub struct GCPAccount {
/// where `$CLIENT_EMAIL` is the email found in your JSON service account key.
#[serde(rename = "client_x509_cert_url")]
pub client_x509_cert_url: Option,
+ /// Limit the Cloud Run revisions that are pulled into Datadog by using tags.
+ /// Only Cloud Run revision resources that apply to specified filters are imported into Datadog.
+ #[serde(rename = "cloud_run_revision_filters")]
+ pub cloud_run_revision_filters: Option>,
/// An array of errors.
#[serde(rename = "errors")]
pub errors: Option>,
@@ -75,6 +79,7 @@ impl GCPAccount {
client_email: None,
client_id: None,
client_x509_cert_url: None,
+ cloud_run_revision_filters: None,
errors: None,
host_filters: None,
is_cspm_enabled: None,
@@ -119,6 +124,11 @@ impl GCPAccount {
self
}
+ pub fn cloud_run_revision_filters(mut self, value: Vec) -> Self {
+ self.cloud_run_revision_filters = Some(value);
+ self
+ }
+
pub fn errors(mut self, value: Vec) -> Self {
self.errors = Some(value);
self
@@ -199,6 +209,7 @@ impl<'de> Deserialize<'de> for GCPAccount {
let mut client_email: Option = None;
let mut client_id: Option = None;
let mut client_x509_cert_url: Option = None;
+ let mut cloud_run_revision_filters: Option> = None;
let mut errors: Option> = None;
let mut host_filters: Option = None;
let mut is_cspm_enabled: Option = None;
@@ -252,6 +263,13 @@ impl<'de> Deserialize<'de> for GCPAccount {
client_x509_cert_url =
Some(serde_json::from_value(v).map_err(M::Error::custom)?);
}
+ "cloud_run_revision_filters" => {
+ if v.is_null() {
+ continue;
+ }
+ cloud_run_revision_filters =
+ Some(serde_json::from_value(v).map_err(M::Error::custom)?);
+ }
"errors" => {
if v.is_null() {
continue;
@@ -329,6 +347,7 @@ impl<'de> Deserialize<'de> for GCPAccount {
client_email,
client_id,
client_x509_cert_url,
+ cloud_run_revision_filters,
errors,
host_filters,
is_cspm_enabled,
diff --git a/src/datadogV1/model/model_hourly_usage_attribution_usage_type.rs b/src/datadogV1/model/model_hourly_usage_attribution_usage_type.rs
index 7d176551b..dda85d497 100644
--- a/src/datadogV1/model/model_hourly_usage_attribution_usage_type.rs
+++ b/src/datadogV1/model/model_hourly_usage_attribution_usage_type.rs
@@ -13,6 +13,8 @@ pub enum HourlyUsageAttributionUsageType {
APM_USM_USAGE,
APPSEC_FARGATE_USAGE,
APPSEC_USAGE,
+ ASM_SERVERLESS_TRACED_INVOCATIONS_USAGE,
+ ASM_SERVERLESS_TRACED_INVOCATIONS_PERCENTAGE,
BROWSER_USAGE,
CI_PIPELINE_INDEXED_SPANS_USAGE,
CI_TEST_INDEXED_SPANS_USAGE,
@@ -29,6 +31,8 @@ pub enum HourlyUsageAttributionUsageType {
CWS_HOSTS_USAGE,
DBM_HOSTS_USAGE,
DBM_QUERIES_USAGE,
+ ERROR_TRACKING_USAGE,
+ ERROR_TRACKING_PERCENTAGE,
ESTIMATED_INDEXED_LOGS_USAGE,
ESTIMATED_INDEXED_SPANS_USAGE,
ESTIMATED_INGESTED_LOGS_USAGE,
@@ -56,6 +60,7 @@ pub enum HourlyUsageAttributionUsageType {
NDM_NETFLOW_USAGE,
NPM_HOST_USAGE,
OBS_PIPELINE_BYTES_USAGE,
+ OBS_PIPELINE_VCPU_USAGE,
PROFILED_CONTAINER_USAGE,
PROFILED_FARGATE_USAGE,
PROFILED_HOST_USAGE,
@@ -67,6 +72,7 @@ pub enum HourlyUsageAttributionUsageType {
SNMP_USAGE,
UNIVERSAL_SERVICE_MONITORING_USAGE,
VULN_MANAGEMENT_HOSTS_USAGE,
+ WORKFLOW_EXECUTIONS_USAGE,
UnparsedObject(crate::datadog::UnparsedObject),
}
@@ -79,6 +85,12 @@ impl ToString for HourlyUsageAttributionUsageType {
Self::APM_USM_USAGE => String::from("apm_usm_usage"),
Self::APPSEC_FARGATE_USAGE => String::from("appsec_fargate_usage"),
Self::APPSEC_USAGE => String::from("appsec_usage"),
+ Self::ASM_SERVERLESS_TRACED_INVOCATIONS_USAGE => {
+ String::from("asm_serverless_traced_invocations_usage")
+ }
+ Self::ASM_SERVERLESS_TRACED_INVOCATIONS_PERCENTAGE => {
+ String::from("asm_serverless_traced_invocations_percentage")
+ }
Self::BROWSER_USAGE => String::from("browser_usage"),
Self::CI_PIPELINE_INDEXED_SPANS_USAGE => {
String::from("ci_pipeline_indexed_spans_usage")
@@ -99,6 +111,8 @@ impl ToString for HourlyUsageAttributionUsageType {
Self::CWS_HOSTS_USAGE => String::from("cws_hosts_usage"),
Self::DBM_HOSTS_USAGE => String::from("dbm_hosts_usage"),
Self::DBM_QUERIES_USAGE => String::from("dbm_queries_usage"),
+ Self::ERROR_TRACKING_USAGE => String::from("error_tracking_usage"),
+ Self::ERROR_TRACKING_PERCENTAGE => String::from("error_tracking_percentage"),
Self::ESTIMATED_INDEXED_LOGS_USAGE => String::from("estimated_indexed_logs_usage"),
Self::ESTIMATED_INDEXED_SPANS_USAGE => String::from("estimated_indexed_spans_usage"),
Self::ESTIMATED_INGESTED_LOGS_USAGE => String::from("estimated_ingested_logs_usage"),
@@ -130,6 +144,7 @@ impl ToString for HourlyUsageAttributionUsageType {
Self::NDM_NETFLOW_USAGE => String::from("ndm_netflow_usage"),
Self::NPM_HOST_USAGE => String::from("npm_host_usage"),
Self::OBS_PIPELINE_BYTES_USAGE => String::from("obs_pipeline_bytes_usage"),
+ Self::OBS_PIPELINE_VCPU_USAGE => String::from("obs_pipelines_vcpu_usage"),
Self::PROFILED_CONTAINER_USAGE => String::from("profiled_container_usage"),
Self::PROFILED_FARGATE_USAGE => String::from("profiled_fargate_usage"),
Self::PROFILED_HOST_USAGE => String::from("profiled_host_usage"),
@@ -145,6 +160,7 @@ impl ToString for HourlyUsageAttributionUsageType {
String::from("universal_service_monitoring_usage")
}
Self::VULN_MANAGEMENT_HOSTS_USAGE => String::from("vuln_management_hosts_usage"),
+ Self::WORKFLOW_EXECUTIONS_USAGE => String::from("workflow_executions_usage"),
Self::UnparsedObject(v) => v.value.to_string(),
}
}
@@ -175,6 +191,12 @@ impl<'de> Deserialize<'de> for HourlyUsageAttributionUsageType {
"apm_usm_usage" => Self::APM_USM_USAGE,
"appsec_fargate_usage" => Self::APPSEC_FARGATE_USAGE,
"appsec_usage" => Self::APPSEC_USAGE,
+ "asm_serverless_traced_invocations_usage" => {
+ Self::ASM_SERVERLESS_TRACED_INVOCATIONS_USAGE
+ }
+ "asm_serverless_traced_invocations_percentage" => {
+ Self::ASM_SERVERLESS_TRACED_INVOCATIONS_PERCENTAGE
+ }
"browser_usage" => Self::BROWSER_USAGE,
"ci_pipeline_indexed_spans_usage" => Self::CI_PIPELINE_INDEXED_SPANS_USAGE,
"ci_test_indexed_spans_usage" => Self::CI_TEST_INDEXED_SPANS_USAGE,
@@ -191,6 +213,8 @@ impl<'de> Deserialize<'de> for HourlyUsageAttributionUsageType {
"cws_hosts_usage" => Self::CWS_HOSTS_USAGE,
"dbm_hosts_usage" => Self::DBM_HOSTS_USAGE,
"dbm_queries_usage" => Self::DBM_QUERIES_USAGE,
+ "error_tracking_usage" => Self::ERROR_TRACKING_USAGE,
+ "error_tracking_percentage" => Self::ERROR_TRACKING_PERCENTAGE,
"estimated_indexed_logs_usage" => Self::ESTIMATED_INDEXED_LOGS_USAGE,
"estimated_indexed_spans_usage" => Self::ESTIMATED_INDEXED_SPANS_USAGE,
"estimated_ingested_logs_usage" => Self::ESTIMATED_INGESTED_LOGS_USAGE,
@@ -218,6 +242,7 @@ impl<'de> Deserialize<'de> for HourlyUsageAttributionUsageType {
"ndm_netflow_usage" => Self::NDM_NETFLOW_USAGE,
"npm_host_usage" => Self::NPM_HOST_USAGE,
"obs_pipeline_bytes_usage" => Self::OBS_PIPELINE_BYTES_USAGE,
+ "obs_pipelines_vcpu_usage" => Self::OBS_PIPELINE_VCPU_USAGE,
"profiled_container_usage" => Self::PROFILED_CONTAINER_USAGE,
"profiled_fargate_usage" => Self::PROFILED_FARGATE_USAGE,
"profiled_host_usage" => Self::PROFILED_HOST_USAGE,
@@ -229,6 +254,7 @@ impl<'de> Deserialize<'de> for HourlyUsageAttributionUsageType {
"snmp_usage" => Self::SNMP_USAGE,
"universal_service_monitoring_usage" => Self::UNIVERSAL_SERVICE_MONITORING_USAGE,
"vuln_management_hosts_usage" => Self::VULN_MANAGEMENT_HOSTS_USAGE,
+ "workflow_executions_usage" => Self::WORKFLOW_EXECUTIONS_USAGE,
_ => Self::UnparsedObject(crate::datadog::UnparsedObject {
value: serde_json::Value::String(s.into()),
}),
diff --git a/src/datadogV1/model/model_log.rs b/src/datadogV1/model/model_log.rs
index e3c9b0f79..b014056c4 100644
--- a/src/datadogV1/model/model_log.rs
+++ b/src/datadogV1/model/model_log.rs
@@ -14,7 +14,7 @@ pub struct Log {
/// JSON object containing all log attributes and their associated values.
#[serde(rename = "content")]
pub content: Option,
- /// Unique ID of the Log.
+ /// ID of the Log.
#[serde(rename = "id")]
pub id: Option,
#[serde(skip)]
diff --git a/src/datadogV1/model/model_logs_daily_limit_reset.rs b/src/datadogV1/model/model_logs_daily_limit_reset.rs
new file mode 100644
index 000000000..9f4603ecb
--- /dev/null
+++ b/src/datadogV1/model/model_logs_daily_limit_reset.rs
@@ -0,0 +1,103 @@
+// Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
+// This product includes software developed at Datadog (https://www.datadoghq.com/).
+// Copyright 2019-Present Datadog, Inc.
+use serde::de::{Error, MapAccess, Visitor};
+use serde::{Deserialize, Deserializer, Serialize};
+use serde_with::skip_serializing_none;
+use std::fmt::{self, Formatter};
+
+/// Object containing options to override the default daily limit reset time.
+#[non_exhaustive]
+#[skip_serializing_none]
+#[derive(Clone, Debug, PartialEq, Serialize)]
+pub struct LogsDailyLimitReset {
+ /// String in `HH:00` format representing the time of day the daily limit should be reset. The hours must be between 00 and 23 (inclusive).
+ #[serde(rename = "reset_time")]
+ pub reset_time: Option,
+ /// String in `(-|+)HH:00` format representing the UTC offset to apply to the given reset time. The hours must be between -12 and +14 (inclusive).
+ #[serde(rename = "reset_utc_offset")]
+ pub reset_utc_offset: Option,
+ #[serde(skip)]
+ #[serde(default)]
+ pub(crate) _unparsed: bool,
+}
+
+impl LogsDailyLimitReset {
+ pub fn new() -> LogsDailyLimitReset {
+ LogsDailyLimitReset {
+ reset_time: None,
+ reset_utc_offset: None,
+ _unparsed: false,
+ }
+ }
+
+ pub fn reset_time(mut self, value: String) -> Self {
+ self.reset_time = Some(value);
+ self
+ }
+
+ pub fn reset_utc_offset(mut self, value: String) -> Self {
+ self.reset_utc_offset = Some(value);
+ self
+ }
+}
+
+impl Default for LogsDailyLimitReset {
+ fn default() -> Self {
+ Self::new()
+ }
+}
+
+impl<'de> Deserialize<'de> for LogsDailyLimitReset {
+ fn deserialize(deserializer: D) -> Result
+ where
+ D: Deserializer<'de>,
+ {
+ struct LogsDailyLimitResetVisitor;
+ impl<'a> Visitor<'a> for LogsDailyLimitResetVisitor {
+ type Value = LogsDailyLimitReset;
+
+ fn expecting(&self, f: &mut Formatter<'_>) -> fmt::Result {
+ f.write_str("a mapping")
+ }
+
+ fn visit_map(self, mut map: M) -> Result
+ where
+ M: MapAccess<'a>,
+ {
+ let mut reset_time: Option = None;
+ let mut reset_utc_offset: Option = None;
+ let mut _unparsed = false;
+
+ while let Some((k, v)) = map.next_entry::()? {
+ match k.as_str() {
+ "reset_time" => {
+ if v.is_null() {
+ continue;
+ }
+ reset_time = Some(serde_json::from_value(v).map_err(M::Error::custom)?);
+ }
+ "reset_utc_offset" => {
+ if v.is_null() {
+ continue;
+ }
+ reset_utc_offset =
+ Some(serde_json::from_value(v).map_err(M::Error::custom)?);
+ }
+ &_ => {}
+ }
+ }
+
+ let content = LogsDailyLimitReset {
+ reset_time,
+ reset_utc_offset,
+ _unparsed,
+ };
+
+ Ok(content)
+ }
+ }
+
+ deserializer.deserialize_any(LogsDailyLimitResetVisitor)
+ }
+}
diff --git a/src/datadogV1/model/model_logs_index.rs b/src/datadogV1/model/model_logs_index.rs
index e4cc0ed54..c999c71fe 100644
--- a/src/datadogV1/model/model_logs_index.rs
+++ b/src/datadogV1/model/model_logs_index.rs
@@ -14,6 +14,12 @@ pub struct LogsIndex {
/// The number of log events you can send in this index per day before you are rate-limited.
#[serde(rename = "daily_limit")]
pub daily_limit: Option,
+ /// Object containing options to override the default daily limit reset time.
+ #[serde(rename = "daily_limit_reset")]
+ pub daily_limit_reset: Option,
+ /// A percentage threshold of the daily quota at which a Datadog warning event is generated.
+ #[serde(rename = "daily_limit_warning_threshold_percentage")]
+ pub daily_limit_warning_threshold_percentage: Option,
/// An array of exclusion objects. The logs are tested against the query of each filter,
/// following the order of the array. Only the first matching active exclusion matters,
/// others (if any) are ignored.
@@ -42,6 +48,8 @@ impl LogsIndex {
pub fn new(filter: crate::datadogV1::model::LogsFilter, name: String) -> LogsIndex {
LogsIndex {
daily_limit: None,
+ daily_limit_reset: None,
+ daily_limit_warning_threshold_percentage: None,
exclusion_filters: None,
filter,
is_rate_limited: None,
@@ -56,6 +64,19 @@ impl LogsIndex {
self
}
+ pub fn daily_limit_reset(
+ mut self,
+ value: crate::datadogV1::model::LogsDailyLimitReset,
+ ) -> Self {
+ self.daily_limit_reset = Some(value);
+ self
+ }
+
+ pub fn daily_limit_warning_threshold_percentage(mut self, value: f64) -> Self {
+ self.daily_limit_warning_threshold_percentage = Some(value);
+ self
+ }
+
pub fn exclusion_filters(mut self, value: Vec) -> Self {
self.exclusion_filters = Some(value);
self
@@ -90,6 +111,9 @@ impl<'de> Deserialize<'de> for LogsIndex {
M: MapAccess<'a>,
{
let mut daily_limit: Option = None;
+ let mut daily_limit_reset: Option =
+ None;
+ let mut daily_limit_warning_threshold_percentage: Option = None;
let mut exclusion_filters: Option> =
None;
let mut filter: Option = None;
@@ -107,6 +131,20 @@ impl<'de> Deserialize<'de> for LogsIndex {
daily_limit =
Some(serde_json::from_value(v).map_err(M::Error::custom)?);
}
+ "daily_limit_reset" => {
+ if v.is_null() {
+ continue;
+ }
+ daily_limit_reset =
+ Some(serde_json::from_value(v).map_err(M::Error::custom)?);
+ }
+ "daily_limit_warning_threshold_percentage" => {
+ if v.is_null() {
+ continue;
+ }
+ daily_limit_warning_threshold_percentage =
+ Some(serde_json::from_value(v).map_err(M::Error::custom)?);
+ }
"exclusion_filters" => {
if v.is_null() {
continue;
@@ -142,6 +180,8 @@ impl<'de> Deserialize<'de> for LogsIndex {
let content = LogsIndex {
daily_limit,
+ daily_limit_reset,
+ daily_limit_warning_threshold_percentage,
exclusion_filters,
filter,
is_rate_limited,
diff --git a/src/datadogV1/model/model_logs_index_update_request.rs b/src/datadogV1/model/model_logs_index_update_request.rs
index dfe82dd51..6b1ba63dc 100644
--- a/src/datadogV1/model/model_logs_index_update_request.rs
+++ b/src/datadogV1/model/model_logs_index_update_request.rs
@@ -14,6 +14,12 @@ pub struct LogsIndexUpdateRequest {
/// The number of log events you can send in this index per day before you are rate-limited.
#[serde(rename = "daily_limit")]
pub daily_limit: Option,
+ /// Object containing options to override the default daily limit reset time.
+ #[serde(rename = "daily_limit_reset")]
+ pub daily_limit_reset: Option,
+ /// A percentage threshold of the daily quota at which a Datadog warning event is generated.
+ #[serde(rename = "daily_limit_warning_threshold_percentage")]
+ pub daily_limit_warning_threshold_percentage: Option,
/// If true, sets the `daily_limit` value to null and the index is not limited on a daily basis (any
/// specified `daily_limit` value in the request is ignored). If false or omitted, the index's current
/// `daily_limit` is maintained.
@@ -43,6 +49,8 @@ impl LogsIndexUpdateRequest {
pub fn new(filter: crate::datadogV1::model::LogsFilter) -> LogsIndexUpdateRequest {
LogsIndexUpdateRequest {
daily_limit: None,
+ daily_limit_reset: None,
+ daily_limit_warning_threshold_percentage: None,
disable_daily_limit: None,
exclusion_filters: None,
filter,
@@ -56,6 +64,19 @@ impl LogsIndexUpdateRequest {
self
}
+ pub fn daily_limit_reset(
+ mut self,
+ value: crate::datadogV1::model::LogsDailyLimitReset,
+ ) -> Self {
+ self.daily_limit_reset = Some(value);
+ self
+ }
+
+ pub fn daily_limit_warning_threshold_percentage(mut self, value: f64) -> Self {
+ self.daily_limit_warning_threshold_percentage = Some(value);
+ self
+ }
+
pub fn disable_daily_limit(mut self, value: bool) -> Self {
self.disable_daily_limit = Some(value);
self
@@ -90,6 +111,9 @@ impl<'de> Deserialize<'de> for LogsIndexUpdateRequest {
M: MapAccess<'a>,
{
let mut daily_limit: Option = None;
+ let mut daily_limit_reset: Option =
+ None;
+ let mut daily_limit_warning_threshold_percentage: Option = None;
let mut disable_daily_limit: Option = None;
let mut exclusion_filters: Option> =
None;
@@ -106,6 +130,20 @@ impl<'de> Deserialize<'de> for LogsIndexUpdateRequest {
daily_limit =
Some(serde_json::from_value(v).map_err(M::Error::custom)?);
}
+ "daily_limit_reset" => {
+ if v.is_null() {
+ continue;
+ }
+ daily_limit_reset =
+ Some(serde_json::from_value(v).map_err(M::Error::custom)?);
+ }
+ "daily_limit_warning_threshold_percentage" => {
+ if v.is_null() {
+ continue;
+ }
+ daily_limit_warning_threshold_percentage =
+ Some(serde_json::from_value(v).map_err(M::Error::custom)?);
+ }
"disable_daily_limit" => {
if v.is_null() {
continue;
@@ -137,6 +175,8 @@ impl<'de> Deserialize<'de> for LogsIndexUpdateRequest {
let content = LogsIndexUpdateRequest {
daily_limit,
+ daily_limit_reset,
+ daily_limit_warning_threshold_percentage,
disable_daily_limit,
exclusion_filters,
filter,
diff --git a/src/datadogV1/model/model_metrics_payload.rs b/src/datadogV1/model/model_metrics_payload.rs
index bb05abc2f..7fb33f082 100644
--- a/src/datadogV1/model/model_metrics_payload.rs
+++ b/src/datadogV1/model/model_metrics_payload.rs
@@ -11,7 +11,7 @@ use std::fmt::{self, Formatter};
#[skip_serializing_none]
#[derive(Clone, Debug, PartialEq, Serialize)]
pub struct MetricsPayload {
- /// A list of time series to submit to Datadog.
+ /// A list of timeseries to submit to Datadog.
#[serde(rename = "series")]
pub series: Vec,
#[serde(skip)]
diff --git a/src/datadogV1/model/model_metrics_query_metadata.rs b/src/datadogV1/model/model_metrics_query_metadata.rs
index d6ff0757d..96d2885f2 100644
--- a/src/datadogV1/model/model_metrics_query_metadata.rs
+++ b/src/datadogV1/model/model_metrics_query_metadata.rs
@@ -32,7 +32,7 @@ pub struct MetricsQueryMetadata {
/// Metric name.
#[serde(rename = "metric")]
pub metric: Option,
- /// List of points of the time series in milliseconds.
+ /// List of points of the timeseries in milliseconds.
#[serde(rename = "pointlist")]
pub pointlist: Option>>>,
/// The index of the series' query within the request.
diff --git a/src/datadogV1/model/model_monitor_formula_and_function_events_data_source.rs b/src/datadogV1/model/model_monitor_formula_and_function_events_data_source.rs
index 28b286abd..4cfb6d46a 100644
--- a/src/datadogV1/model/model_monitor_formula_and_function_events_data_source.rs
+++ b/src/datadogV1/model/model_monitor_formula_and_function_events_data_source.rs
@@ -14,6 +14,7 @@ pub enum MonitorFormulaAndFunctionEventsDataSource {
EVENTS,
LOGS,
SPANS,
+ DATABASE_QUERIES,
UnparsedObject(crate::datadog::UnparsedObject),
}
@@ -27,6 +28,7 @@ impl ToString for MonitorFormulaAndFunctionEventsDataSource {
Self::EVENTS => String::from("events"),
Self::LOGS => String::from("logs"),
Self::SPANS => String::from("spans"),
+ Self::DATABASE_QUERIES => String::from("database_queries"),
Self::UnparsedObject(v) => v.value.to_string(),
}
}
@@ -58,6 +60,7 @@ impl<'de> Deserialize<'de> for MonitorFormulaAndFunctionEventsDataSource {
"events" => Self::EVENTS,
"logs" => Self::LOGS,
"spans" => Self::SPANS,
+ "database_queries" => Self::DATABASE_QUERIES,
_ => Self::UnparsedObject(crate::datadog::UnparsedObject {
value: serde_json::Value::String(s.into()),
}),
diff --git a/src/datadogV1/model/model_monitor_options.rs b/src/datadogV1/model/model_monitor_options.rs
index ca6a809b0..a6aa0ed9a 100644
--- a/src/datadogV1/model/model_monitor_options.rs
+++ b/src/datadogV1/model/model_monitor_options.rs
@@ -156,7 +156,8 @@ pub struct MonitorOptions {
pub renotify_statuses: Option