From a101eb7ee0a112d05ca84d8a44908a08833e9f4e Mon Sep 17 00:00:00 2001 From: "ci.datadog-api-spec" Date: Wed, 12 Aug 2026 12:08:56 +0000 Subject: [PATCH] Regenerate client from commit 3a1d4b2 of spec repo --- .generator/schemas/v2/openapi.yaml | 17 +++++++ docs/datadog_api_client.v2.model.rst | 14 ++++++ .../v2/model/agent_trigger.py | 42 ++++++++++++++++ .../v2/model/agent_trigger_wrapper.py | 49 +++++++++++++++++++ src/datadog_api_client/v2/model/spec.py | 2 + src/datadog_api_client/v2/model/trigger.py | 9 +++- src/datadog_api_client/v2/models/__init__.py | 4 ++ 7 files changed, 135 insertions(+), 2 deletions(-) create mode 100644 src/datadog_api_client/v2/model/agent_trigger.py create mode 100644 src/datadog_api_client/v2/model/agent_trigger_wrapper.py diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index bf83e44268..a5b1012c5d 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -4591,6 +4591,22 @@ components: - id - base_severity type: object + AgentTrigger: + description: "Trigger a workflow from an agent via the MCP execute tool. Workflow can be executed from Bits Chat, Bits Agent Builder, Claude Code, Codex, Cursor, and any other coding agent using the Datadog MCP." + properties: + rateLimit: + $ref: "#/components/schemas/TriggerRateLimit" + type: object + AgentTriggerWrapper: + description: "Schema for an agent-based trigger." + properties: + agentTrigger: + $ref: "#/components/schemas/AgentTrigger" + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - agentTrigger + type: object AggregatedHighFrozenFrameRate: description: Aggregated high frozen frame rate detection at view level. properties: @@ -114425,6 +114441,7 @@ components: Trigger: description: "One of the triggers that can start the execution of a workflow." oneOf: + - $ref: "#/components/schemas/AgentTriggerWrapper" - $ref: "#/components/schemas/APITriggerWrapper" - $ref: "#/components/schemas/AppTriggerWrapper" - $ref: "#/components/schemas/CaseTriggerWrapper" diff --git a/docs/datadog_api_client.v2.model.rst b/docs/datadog_api_client.v2.model.rst index 0ae45f5ae9..c2a5e5aa47 100644 --- a/docs/datadog_api_client.v2.model.rst +++ b/docs/datadog_api_client.v2.model.rst @@ -305,6 +305,20 @@ datadog\_api\_client.v2.model.advisory module :members: :show-inheritance: +datadog\_api\_client.v2.model.agent\_trigger module +--------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.agent_trigger + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.agent\_trigger\_wrapper module +------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.agent_trigger_wrapper + :members: + :show-inheritance: + datadog\_api\_client.v2.model.aggregated\_high\_frozen\_frame\_rate module -------------------------------------------------------------------------- diff --git a/src/datadog_api_client/v2/model/agent_trigger.py b/src/datadog_api_client/v2/model/agent_trigger.py new file mode 100644 index 0000000000..8cc3886ba0 --- /dev/null +++ b/src/datadog_api_client/v2/model/agent_trigger.py @@ -0,0 +1,42 @@ +# 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. +from __future__ import annotations + +from typing import Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.trigger_rate_limit import TriggerRateLimit + + +class AgentTrigger(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.trigger_rate_limit import TriggerRateLimit + + return { + "rate_limit": (TriggerRateLimit,), + } + + attribute_map = { + "rate_limit": "rateLimit", + } + + def __init__(self_, rate_limit: Union[TriggerRateLimit, UnsetType] = unset, **kwargs): + """ + Trigger a workflow from an agent via the MCP execute tool. Workflow can be executed from Bits Chat, Bits Agent Builder, Claude Code, Codex, Cursor, and any other coding agent using the Datadog MCP. + + :param rate_limit: Defines a rate limit for a trigger. + :type rate_limit: TriggerRateLimit, optional + """ + if rate_limit is not unset: + kwargs["rate_limit"] = rate_limit + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/agent_trigger_wrapper.py b/src/datadog_api_client/v2/model/agent_trigger_wrapper.py new file mode 100644 index 0000000000..a9d0521436 --- /dev/null +++ b/src/datadog_api_client/v2/model/agent_trigger_wrapper.py @@ -0,0 +1,49 @@ +# 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. +from __future__ import annotations + +from typing import List, Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.agent_trigger import AgentTrigger + + +class AgentTriggerWrapper(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.agent_trigger import AgentTrigger + + return { + "agent_trigger": (AgentTrigger,), + "start_step_names": ([str],), + } + + attribute_map = { + "agent_trigger": "agentTrigger", + "start_step_names": "startStepNames", + } + + def __init__(self_, agent_trigger: AgentTrigger, start_step_names: Union[List[str], UnsetType] = unset, **kwargs): + """ + Schema for an agent-based trigger. + + :param agent_trigger: Trigger a workflow from an agent via the MCP execute tool. Workflow can be executed from Bits Chat, Bits Agent Builder, Claude Code, Codex, Cursor, and any other coding agent using the Datadog MCP. + :type agent_trigger: AgentTrigger + + :param start_step_names: Names of existing workflow steps that run first after a trigger fires. + :type start_step_names: [str], optional + """ + if start_step_names is not unset: + kwargs["start_step_names"] = start_step_names + super().__init__(kwargs) + + self_.agent_trigger = agent_trigger diff --git a/src/datadog_api_client/v2/model/spec.py b/src/datadog_api_client/v2/model/spec.py index 6ab88b75d0..4dd786009f 100644 --- a/src/datadog_api_client/v2/model/spec.py +++ b/src/datadog_api_client/v2/model/spec.py @@ -20,6 +20,7 @@ from datadog_api_client.v2.model.output_schema import OutputSchema from datadog_api_client.v2.model.step import Step from datadog_api_client.v2.model.trigger import Trigger + from datadog_api_client.v2.model.agent_trigger_wrapper import AgentTriggerWrapper from datadog_api_client.v2.model.api_trigger_wrapper import APITriggerWrapper from datadog_api_client.v2.model.app_trigger_wrapper import AppTriggerWrapper from datadog_api_client.v2.model.case_trigger_wrapper import CaseTriggerWrapper @@ -83,6 +84,7 @@ def __init__( List[ Union[ Trigger, + AgentTriggerWrapper, APITriggerWrapper, AppTriggerWrapper, CaseTriggerWrapper, diff --git a/src/datadog_api_client/v2/model/trigger.py b/src/datadog_api_client/v2/model/trigger.py index cbf7706a2a..01cff86475 100644 --- a/src/datadog_api_client/v2/model/trigger.py +++ b/src/datadog_api_client/v2/model/trigger.py @@ -15,12 +15,15 @@ def __init__(self, **kwargs): """ One of the triggers that can start the execution of a workflow. - :param api_trigger: Trigger a workflow from an API request. The workflow must be published. - :type api_trigger: APITrigger + :param agent_trigger: Trigger a workflow from an agent via the MCP execute tool. Workflow can be executed from Bits Chat, Bits Agent Builder, Claude Code, Codex, Cursor, and any other coding agent using the Datadog MCP. + :type agent_trigger: AgentTrigger :param start_step_names: Names of existing workflow steps that run first after a trigger fires. :type start_step_names: [str], optional + :param api_trigger: Trigger a workflow from an API request. The workflow must be published. + :type api_trigger: APITrigger + :param app_trigger: Trigger a workflow from an App. :type app_trigger: dict @@ -86,6 +89,7 @@ def _composed_schemas(_): # code would be run when this module is imported, and these composed # classes don't exist yet because their module has not finished # loading + from datadog_api_client.v2.model.agent_trigger_wrapper import AgentTriggerWrapper from datadog_api_client.v2.model.api_trigger_wrapper import APITriggerWrapper from datadog_api_client.v2.model.app_trigger_wrapper import AppTriggerWrapper from datadog_api_client.v2.model.case_trigger_wrapper import CaseTriggerWrapper @@ -108,6 +112,7 @@ def _composed_schemas(_): return { "oneOf": [ + AgentTriggerWrapper, APITriggerWrapper, AppTriggerWrapper, CaseTriggerWrapper, diff --git a/src/datadog_api_client/v2/models/__init__.py b/src/datadog_api_client/v2/models/__init__.py index 8cbadd6142..7200f76674 100644 --- a/src/datadog_api_client/v2/models/__init__.py +++ b/src/datadog_api_client/v2/models/__init__.py @@ -206,6 +206,8 @@ from datadog_api_client.v2.model.active_billing_dimensions_type import ActiveBillingDimensionsType from datadog_api_client.v2.model.add_member_team_request import AddMemberTeamRequest from datadog_api_client.v2.model.advisory import Advisory +from datadog_api_client.v2.model.agent_trigger import AgentTrigger +from datadog_api_client.v2.model.agent_trigger_wrapper import AgentTriggerWrapper from datadog_api_client.v2.model.aggregated_high_frozen_frame_rate import AggregatedHighFrozenFrameRate from datadog_api_client.v2.model.aggregated_high_script_eval import AggregatedHighScriptEval from datadog_api_client.v2.model.aggregated_long_tasks_by_invoker_type import AggregatedLongTasksByInvokerType @@ -10762,6 +10764,8 @@ "ActiveBillingDimensionsType", "AddMemberTeamRequest", "Advisory", + "AgentTrigger", + "AgentTriggerWrapper", "AggregatedHighFrozenFrameRate", "AggregatedHighScriptEval", "AggregatedLongTasksByInvokerType",