diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 5da2e75e80..8b24223a17 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -26516,6 +26516,24 @@ components: required: - data type: object + FormTrigger: + description: Trigger a workflow from a Form. + properties: + formId: + description: The form UUID. + example: '' + type: string + type: object + FormTriggerWrapper: + description: Schema for a Form-based trigger. + properties: + formTrigger: + $ref: '#/components/schemas/FormTrigger' + startStepNames: + $ref: '#/components/schemas/StartStepNames' + required: + - formTrigger + type: object FormulaLimit: description: 'Message for specifying limits to the number of values returned by a query. @@ -66222,6 +66240,7 @@ components: - $ref: '#/components/schemas/DatabaseMonitoringTriggerWrapper' - $ref: '#/components/schemas/DatastoreTriggerWrapper' - $ref: '#/components/schemas/DashboardTriggerWrapper' + - $ref: '#/components/schemas/FormTriggerWrapper' - $ref: '#/components/schemas/GithubWebhookTriggerWrapper' - $ref: '#/components/schemas/IncidentTriggerWrapper' - $ref: '#/components/schemas/MonitorTriggerWrapper' diff --git a/docs/datadog_api_client.v2.model.rst b/docs/datadog_api_client.v2.model.rst index 414b401cd5..84048c4ec5 100644 --- a/docs/datadog_api_client.v2.model.rst +++ b/docs/datadog_api_client.v2.model.rst @@ -11022,6 +11022,20 @@ datadog\_api\_client.v2.model.fleet\_schedules\_response module :members: :show-inheritance: +datadog\_api\_client.v2.model.form\_trigger module +-------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.form_trigger + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.form\_trigger\_wrapper module +----------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.form_trigger_wrapper + :members: + :show-inheritance: + datadog\_api\_client.v2.model.formula\_limit module --------------------------------------------------- diff --git a/src/datadog_api_client/v2/model/form_trigger.py b/src/datadog_api_client/v2/model/form_trigger.py new file mode 100644 index 0000000000..84d5bf0d0a --- /dev/null +++ b/src/datadog_api_client/v2/model/form_trigger.py @@ -0,0 +1,36 @@ +# 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 + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class FormTrigger(ModelNormal): + @cached_property + def openapi_types(_): + return { + "form_id": (str,), + } + + attribute_map = { + "form_id": "formId", + } + + def __init__(self_, form_id: Union[str, UnsetType] = unset, **kwargs): + """ + Trigger a workflow from a Form. + + :param form_id: The form UUID. + :type form_id: str, optional + """ + if form_id is not unset: + kwargs["form_id"] = form_id + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/form_trigger_wrapper.py b/src/datadog_api_client/v2/model/form_trigger_wrapper.py new file mode 100644 index 0000000000..a51ad8f6f7 --- /dev/null +++ b/src/datadog_api_client/v2/model/form_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.form_trigger import FormTrigger + + +class FormTriggerWrapper(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.form_trigger import FormTrigger + + return { + "form_trigger": (FormTrigger,), + "start_step_names": ([str],), + } + + attribute_map = { + "form_trigger": "formTrigger", + "start_step_names": "startStepNames", + } + + def __init__(self_, form_trigger: FormTrigger, start_step_names: Union[List[str], UnsetType] = unset, **kwargs): + """ + Schema for a Form-based trigger. + + :param form_trigger: Trigger a workflow from a Form. + :type form_trigger: FormTrigger + + :param start_step_names: A list of 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_.form_trigger = form_trigger diff --git a/src/datadog_api_client/v2/model/spec.py b/src/datadog_api_client/v2/model/spec.py index 6f6eaff2c6..3ea379b448 100644 --- a/src/datadog_api_client/v2/model/spec.py +++ b/src/datadog_api_client/v2/model/spec.py @@ -27,6 +27,7 @@ from datadog_api_client.v2.model.database_monitoring_trigger_wrapper import DatabaseMonitoringTriggerWrapper from datadog_api_client.v2.model.datastore_trigger_wrapper import DatastoreTriggerWrapper from datadog_api_client.v2.model.dashboard_trigger_wrapper import DashboardTriggerWrapper + from datadog_api_client.v2.model.form_trigger_wrapper import FormTriggerWrapper from datadog_api_client.v2.model.github_webhook_trigger_wrapper import GithubWebhookTriggerWrapper from datadog_api_client.v2.model.incident_trigger_wrapper import IncidentTriggerWrapper from datadog_api_client.v2.model.monitor_trigger_wrapper import MonitorTriggerWrapper @@ -89,6 +90,7 @@ def __init__( DatabaseMonitoringTriggerWrapper, DatastoreTriggerWrapper, DashboardTriggerWrapper, + FormTriggerWrapper, GithubWebhookTriggerWrapper, IncidentTriggerWrapper, MonitorTriggerWrapper, diff --git a/src/datadog_api_client/v2/model/trigger.py b/src/datadog_api_client/v2/model/trigger.py index fca4cf463b..1b3fe5a051 100644 --- a/src/datadog_api_client/v2/model/trigger.py +++ b/src/datadog_api_client/v2/model/trigger.py @@ -39,6 +39,9 @@ def __init__(self, **kwargs): :param dashboard_trigger: Trigger a workflow from a Dashboard. :type dashboard_trigger: dict + :param form_trigger: Trigger a workflow from a Form. + :type form_trigger: FormTrigger + :param github_webhook_trigger: Trigger a workflow from a GitHub webhook. To trigger a workflow from GitHub, you must set a `webhookSecret`. In your GitHub Webhook Settings, set the Payload URL to "base_url"/api/v2/workflows/"workflow_id"/webhook?orgId="org_id", select application/json for the content type, and be highly recommend enabling SSL verification for security. The workflow must be published. :type github_webhook_trigger: GithubWebhookTrigger @@ -90,6 +93,7 @@ def _composed_schemas(_): from datadog_api_client.v2.model.database_monitoring_trigger_wrapper import DatabaseMonitoringTriggerWrapper from datadog_api_client.v2.model.datastore_trigger_wrapper import DatastoreTriggerWrapper from datadog_api_client.v2.model.dashboard_trigger_wrapper import DashboardTriggerWrapper + from datadog_api_client.v2.model.form_trigger_wrapper import FormTriggerWrapper from datadog_api_client.v2.model.github_webhook_trigger_wrapper import GithubWebhookTriggerWrapper from datadog_api_client.v2.model.incident_trigger_wrapper import IncidentTriggerWrapper from datadog_api_client.v2.model.monitor_trigger_wrapper import MonitorTriggerWrapper @@ -111,6 +115,7 @@ def _composed_schemas(_): DatabaseMonitoringTriggerWrapper, DatastoreTriggerWrapper, DashboardTriggerWrapper, + FormTriggerWrapper, GithubWebhookTriggerWrapper, IncidentTriggerWrapper, MonitorTriggerWrapper, diff --git a/src/datadog_api_client/v2/models/__init__.py b/src/datadog_api_client/v2/models/__init__.py index b3c37091fc..b6f6dc53cb 100644 --- a/src/datadog_api_client/v2/models/__init__.py +++ b/src/datadog_api_client/v2/models/__init__.py @@ -2129,6 +2129,8 @@ from datadog_api_client.v2.model.fleet_schedule_response import FleetScheduleResponse from datadog_api_client.v2.model.fleet_schedule_status import FleetScheduleStatus from datadog_api_client.v2.model.fleet_schedules_response import FleetSchedulesResponse +from datadog_api_client.v2.model.form_trigger import FormTrigger +from datadog_api_client.v2.model.form_trigger_wrapper import FormTriggerWrapper from datadog_api_client.v2.model.formula_limit import FormulaLimit from datadog_api_client.v2.model.framework_handle_and_version_response_data import FrameworkHandleAndVersionResponseData from datadog_api_client.v2.model.freshservice_api_key import FreshserviceAPIKey @@ -7746,6 +7748,8 @@ "FleetScheduleResponse", "FleetScheduleStatus", "FleetSchedulesResponse", + "FormTrigger", + "FormTriggerWrapper", "FormulaLimit", "FrameworkHandleAndVersionResponseData", "FreshserviceAPIKey",