Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .generator/schemas/v2/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down Expand Up @@ -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"
Expand Down
143 changes: 143 additions & 0 deletions src/main/java/com/datadog/api/client/v2/model/AgentTrigger.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
/*
* 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.
*/

package com.datadog.api.client.v2.model;

import com.fasterxml.jackson.annotation.JsonAnyGetter;
import com.fasterxml.jackson.annotation.JsonAnySetter;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;

/**
* 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.
*/
@JsonPropertyOrder({AgentTrigger.JSON_PROPERTY_RATE_LIMIT})
@jakarta.annotation.Generated(
value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
public class AgentTrigger {
@JsonIgnore public boolean unparsed = false;
public static final String JSON_PROPERTY_RATE_LIMIT = "rateLimit";
private TriggerRateLimit rateLimit;

public AgentTrigger rateLimit(TriggerRateLimit rateLimit) {
this.rateLimit = rateLimit;
this.unparsed |= rateLimit.unparsed;
return this;
}

/**
* Defines a rate limit for a trigger.
*
* @return rateLimit
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_RATE_LIMIT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public TriggerRateLimit getRateLimit() {
return rateLimit;
}

public void setRateLimit(TriggerRateLimit rateLimit) {
this.rateLimit = rateLimit;
if (rateLimit != null) {
this.unparsed |= rateLimit.unparsed;
}
}

/**
* A container for additional, undeclared properties. This is a holder for any undeclared
* properties as specified with the 'additionalProperties' keyword in the OAS document.
*/
private Map<String, Object> additionalProperties;

/**
* Set the additional (undeclared) property with the specified name and value. If the property
* does not already exist, create it otherwise replace it.
*
* @param key The arbitrary key to set
* @param value The associated value
* @return AgentTrigger
*/
@JsonAnySetter
public AgentTrigger putAdditionalProperty(String key, Object value) {
if (this.additionalProperties == null) {
this.additionalProperties = new HashMap<String, Object>();
}
this.additionalProperties.put(key, value);
return this;
}

/**
* Return the additional (undeclared) property.
*
* @return The additional properties
*/
@JsonAnyGetter
public Map<String, Object> getAdditionalProperties() {
return additionalProperties;
}

/**
* Return the additional (undeclared) property with the specified name.
*
* @param key The arbitrary key to get
* @return The specific additional property for the given key
*/
public Object getAdditionalProperty(String key) {
if (this.additionalProperties == null) {
return null;
}
return this.additionalProperties.get(key);
}

/** Return true if this AgentTrigger object is equal to o. */
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
AgentTrigger agentTrigger = (AgentTrigger) o;
return Objects.equals(this.rateLimit, agentTrigger.rateLimit)
&& Objects.equals(this.additionalProperties, agentTrigger.additionalProperties);
}

@Override
public int hashCode() {
return Objects.hash(rateLimit, additionalProperties);
}

@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class AgentTrigger {\n");
sb.append(" rateLimit: ").append(toIndentedString(rateLimit)).append("\n");
sb.append(" additionalProperties: ")
.append(toIndentedString(additionalProperties))
.append("\n");
sb.append('}');
return sb.toString();
}

/**
* Convert the given object to string with each line indented by 4 spaces (except the first line).
*/
private String toIndentedString(Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,190 @@
/*
* 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.
*/

package com.datadog.api.client.v2.model;

import com.fasterxml.jackson.annotation.JsonAnyGetter;
import com.fasterxml.jackson.annotation.JsonAnySetter;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;

/** Schema for an agent-based trigger. */
@JsonPropertyOrder({
AgentTriggerWrapper.JSON_PROPERTY_AGENT_TRIGGER,
AgentTriggerWrapper.JSON_PROPERTY_START_STEP_NAMES
})
@jakarta.annotation.Generated(
value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
public class AgentTriggerWrapper {
@JsonIgnore public boolean unparsed = false;
public static final String JSON_PROPERTY_AGENT_TRIGGER = "agentTrigger";
private AgentTrigger agentTrigger;

public static final String JSON_PROPERTY_START_STEP_NAMES = "startStepNames";
private List<String> startStepNames = null;

public AgentTriggerWrapper() {}

@JsonCreator
public AgentTriggerWrapper(
@JsonProperty(required = true, value = JSON_PROPERTY_AGENT_TRIGGER)
AgentTrigger agentTrigger) {
this.agentTrigger = agentTrigger;
this.unparsed |= agentTrigger.unparsed;
}

public AgentTriggerWrapper agentTrigger(AgentTrigger agentTrigger) {
this.agentTrigger = agentTrigger;
this.unparsed |= agentTrigger.unparsed;
return this;
}

/**
* 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.
*
* @return agentTrigger
*/
@JsonProperty(JSON_PROPERTY_AGENT_TRIGGER)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public AgentTrigger getAgentTrigger() {
return agentTrigger;
}

public void setAgentTrigger(AgentTrigger agentTrigger) {
this.agentTrigger = agentTrigger;
if (agentTrigger != null) {
this.unparsed |= agentTrigger.unparsed;
}
}

public AgentTriggerWrapper startStepNames(List<String> startStepNames) {
this.startStepNames = startStepNames;
return this;
}

public AgentTriggerWrapper addStartStepNamesItem(String startStepNamesItem) {
if (this.startStepNames == null) {
this.startStepNames = new ArrayList<>();
}
this.startStepNames.add(startStepNamesItem);
return this;
}

/**
* Names of existing workflow steps that run first after a trigger fires.
*
* @return startStepNames
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_START_STEP_NAMES)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public List<String> getStartStepNames() {
return startStepNames;
}

public void setStartStepNames(List<String> startStepNames) {
this.startStepNames = startStepNames;
}

/**
* A container for additional, undeclared properties. This is a holder for any undeclared
* properties as specified with the 'additionalProperties' keyword in the OAS document.
*/
private Map<String, Object> additionalProperties;

/**
* Set the additional (undeclared) property with the specified name and value. If the property
* does not already exist, create it otherwise replace it.
*
* @param key The arbitrary key to set
* @param value The associated value
* @return AgentTriggerWrapper
*/
@JsonAnySetter
public AgentTriggerWrapper putAdditionalProperty(String key, Object value) {
if (this.additionalProperties == null) {
this.additionalProperties = new HashMap<String, Object>();
}
this.additionalProperties.put(key, value);
return this;
}

/**
* Return the additional (undeclared) property.
*
* @return The additional properties
*/
@JsonAnyGetter
public Map<String, Object> getAdditionalProperties() {
return additionalProperties;
}

/**
* Return the additional (undeclared) property with the specified name.
*
* @param key The arbitrary key to get
* @return The specific additional property for the given key
*/
public Object getAdditionalProperty(String key) {
if (this.additionalProperties == null) {
return null;
}
return this.additionalProperties.get(key);
}

/** Return true if this AgentTriggerWrapper object is equal to o. */
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
AgentTriggerWrapper agentTriggerWrapper = (AgentTriggerWrapper) o;
return Objects.equals(this.agentTrigger, agentTriggerWrapper.agentTrigger)
&& Objects.equals(this.startStepNames, agentTriggerWrapper.startStepNames)
&& Objects.equals(this.additionalProperties, agentTriggerWrapper.additionalProperties);
}

@Override
public int hashCode() {
return Objects.hash(agentTrigger, startStepNames, additionalProperties);
}

@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class AgentTriggerWrapper {\n");
sb.append(" agentTrigger: ").append(toIndentedString(agentTrigger)).append("\n");
sb.append(" startStepNames: ").append(toIndentedString(startStepNames)).append("\n");
sb.append(" additionalProperties: ")
.append(toIndentedString(additionalProperties))
.append("\n");
sb.append('}');
return sb.toString();
}

/**
* Convert the given object to string with each line indented by 4 spaces (except the first line).
*/
private String toIndentedString(Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
}
Loading
Loading