Update team notification rule
https://api.datadoghq.com/api/v2/team/{team_id}/notification-rules/{rule_id}https://api.us3.datadoghq.com/api/v2/team/{team_id}/notification-rules/{rule_id}https://api.us5.datadoghq.com/api/v2/team/{team_id}/notification-rules/{rule_id}https://api.datadoghq.eu/api/v2/team/{team_id}/notification-rules/{rule_id}https://api.ap1.datadoghq.com/api/v2/team/{team_id}/notification-rules/{rule_id}https://api.ap2.datadoghq.com/api/v2/team/{team_id}/notification-rules/{rule_id}https://api.uk1.datadoghq.com/api/v2/team/{team_id}/notification-rules/{rule_id}https://api.ddog-gov.com/api/v2/team/{team_id}/notification-rules/{rule_id}https://api.us2.ddog-gov.com/api/v2/team/{team_id}/notification-rules/{rule_id}Overview
OAuth apps require the teams_read authorization scope to access this endpoint.
Arguments
Path Parameters
team_id [required]None
rule_id [required]None
Request
Body Data (required)
data [required]Team notification rule
attributes [required]Team notification rule attributes
emailEmail notification settings for the team
enabledFlag indicating email notification
recipient_emailEmail address to notify. When omitted and email notifications are enabled, notifications are sent to all team members.
ms_teamsMS Teams notification settings for the team
connector_nameHandle for MS Teams
pagerdutyPagerDuty notification settings for the team
service_nameService name for PagerDuty
servicenowServiceNow notification settings for the team.
templatesServiceNow template handle names to use for notifications.
slackSlack notification settings for the team
channelChannel for Slack notification
workspaceWorkspace for Slack notification
idThe identifier of the team notification rule
type [required]Team notification rule type
team_notification_rulesteam_notification_rules{
"data": {
"type": "team_notification_rules",
"id": "b8626d7e-cedd-11eb-abf5-da7ad0900001",
"attributes": {
"pagerduty": {
"service_name": "Datadog-prod"
},
"slack": {
"workspace": "Datadog",
"channel": "aaa-governance-ops"
}
}
}
}Response
OK
Team notification rule response
dataTeam notification rule
attributes [required]Team notification rule attributes
emailEmail notification settings for the team
enabledFlag indicating email notification
recipient_emailEmail address to notify. When omitted and email notifications are enabled, notifications are sent to all team members.
ms_teamsMS Teams notification settings for the team
connector_nameHandle for MS Teams
pagerdutyPagerDuty notification settings for the team
service_nameService name for PagerDuty
servicenowServiceNow notification settings for the team.
templatesServiceNow template handle names to use for notifications.
slackSlack notification settings for the team
channelChannel for Slack notification
workspaceWorkspace for Slack notification
idThe identifier of the team notification rule
type [required]Team notification rule type
team_notification_rulesteam_notification_rules{
"data": {
"attributes": {
"email": {
"enabled": false,
"recipient_email": "string"
},
"ms_teams": {
"connector_name": "string"
},
"pagerduty": {
"service_name": "string"
},
"servicenow": {
"templates": []
},
"slack": {
"channel": "string",
"workspace": "string"
}
},
"id": "b8626d7e-cedd-11eb-abf5-da7ad0900001",
"type": "team_notification_rules"
}
}Forbidden
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}API error response.
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}Too many requests
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}Code Example
# Path parameters
export team_id="CHANGE_ME"
export rule_id="CHANGE_ME"
# Set your Datadog site and credentials
export DD_SITE="datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PUT "https://api.${DD_SITE}/api/v2/team/${team_id}/notification-rules/${rule_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "team_notification_rules",
"id": "b8626d7e-cedd-11eb-abf5-da7ad0900001",
"attributes": {
"pagerduty": {
"service_name": "Datadog-prod"
},
"slack": {
"workspace": "Datadog",
"channel": "aaa-governance-ops"
}
}
}
}
EOF# Path parameters
export team_id="CHANGE_ME"
export rule_id="CHANGE_ME"
# Set your Datadog site and credentials
export DD_SITE="us3.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PUT "https://api.${DD_SITE}/api/v2/team/${team_id}/notification-rules/${rule_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "team_notification_rules",
"id": "b8626d7e-cedd-11eb-abf5-da7ad0900001",
"attributes": {
"pagerduty": {
"service_name": "Datadog-prod"
},
"slack": {
"workspace": "Datadog",
"channel": "aaa-governance-ops"
}
}
}
}
EOF# Path parameters
export team_id="CHANGE_ME"
export rule_id="CHANGE_ME"
# Set your Datadog site and credentials
export DD_SITE="us5.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PUT "https://api.${DD_SITE}/api/v2/team/${team_id}/notification-rules/${rule_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "team_notification_rules",
"id": "b8626d7e-cedd-11eb-abf5-da7ad0900001",
"attributes": {
"pagerduty": {
"service_name": "Datadog-prod"
},
"slack": {
"workspace": "Datadog",
"channel": "aaa-governance-ops"
}
}
}
}
EOF# Path parameters
export team_id="CHANGE_ME"
export rule_id="CHANGE_ME"
# Set your Datadog site and credentials
export DD_SITE="datadoghq.eu"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PUT "https://api.${DD_SITE}/api/v2/team/${team_id}/notification-rules/${rule_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "team_notification_rules",
"id": "b8626d7e-cedd-11eb-abf5-da7ad0900001",
"attributes": {
"pagerduty": {
"service_name": "Datadog-prod"
},
"slack": {
"workspace": "Datadog",
"channel": "aaa-governance-ops"
}
}
}
}
EOF# Path parameters
export team_id="CHANGE_ME"
export rule_id="CHANGE_ME"
# Set your Datadog site and credentials
export DD_SITE="ap1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PUT "https://api.${DD_SITE}/api/v2/team/${team_id}/notification-rules/${rule_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "team_notification_rules",
"id": "b8626d7e-cedd-11eb-abf5-da7ad0900001",
"attributes": {
"pagerduty": {
"service_name": "Datadog-prod"
},
"slack": {
"workspace": "Datadog",
"channel": "aaa-governance-ops"
}
}
}
}
EOF# Path parameters
export team_id="CHANGE_ME"
export rule_id="CHANGE_ME"
# Set your Datadog site and credentials
export DD_SITE="ap2.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PUT "https://api.${DD_SITE}/api/v2/team/${team_id}/notification-rules/${rule_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "team_notification_rules",
"id": "b8626d7e-cedd-11eb-abf5-da7ad0900001",
"attributes": {
"pagerduty": {
"service_name": "Datadog-prod"
},
"slack": {
"workspace": "Datadog",
"channel": "aaa-governance-ops"
}
}
}
}
EOF# Path parameters
export team_id="CHANGE_ME"
export rule_id="CHANGE_ME"
# Set your Datadog site and credentials
export DD_SITE="uk1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PUT "https://api.${DD_SITE}/api/v2/team/${team_id}/notification-rules/${rule_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "team_notification_rules",
"id": "b8626d7e-cedd-11eb-abf5-da7ad0900001",
"attributes": {
"pagerduty": {
"service_name": "Datadog-prod"
},
"slack": {
"workspace": "Datadog",
"channel": "aaa-governance-ops"
}
}
}
}
EOF# Path parameters
export team_id="CHANGE_ME"
export rule_id="CHANGE_ME"
# Set your Datadog site and credentials
export DD_SITE="ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PUT "https://api.${DD_SITE}/api/v2/team/${team_id}/notification-rules/${rule_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "team_notification_rules",
"id": "b8626d7e-cedd-11eb-abf5-da7ad0900001",
"attributes": {
"pagerduty": {
"service_name": "Datadog-prod"
},
"slack": {
"workspace": "Datadog",
"channel": "aaa-governance-ops"
}
}
}
}
EOF# Path parameters
export team_id="CHANGE_ME"
export rule_id="CHANGE_ME"
# Set your Datadog site and credentials
export DD_SITE="us2.ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PUT "https://api.${DD_SITE}/api/v2/team/${team_id}/notification-rules/${rule_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "team_notification_rules",
"id": "b8626d7e-cedd-11eb-abf5-da7ad0900001",
"attributes": {
"pagerduty": {
"service_name": "Datadog-prod"
},
"slack": {
"workspace": "Datadog",
"channel": "aaa-governance-ops"
}
}
}
}
EOF// Update team notification rule returns "OK" response
package main
import (
"context"
"encoding/json"
"fmt"
"os"
"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
"github.com/DataDog/datadog-api-client-go/v2/api/datadogV2"
)
func main() {
// there is a valid "dd_team" in the system
DdTeamDataID := os.Getenv("DD_TEAM_DATA_ID")
// there is a valid "team_notification_rule" in the system
TeamNotificationRuleDataID := os.Getenv("TEAM_NOTIFICATION_RULE_DATA_ID")
body := datadogV2.TeamNotificationRuleRequest{
Data: datadogV2.TeamNotificationRule{
Type: datadogV2.TEAMNOTIFICATIONRULETYPE_TEAM_NOTIFICATION_RULES,
Id: datadog.PtrString(TeamNotificationRuleDataID),
Attributes: datadogV2.TeamNotificationRuleAttributes{
Pagerduty: &datadogV2.TeamNotificationRuleAttributesPagerduty{
ServiceName: datadog.PtrString("Datadog-prod"),
},
Slack: &datadogV2.TeamNotificationRuleAttributesSlack{
Workspace: datadog.PtrString("Datadog"),
Channel: datadog.PtrString("aaa-governance-ops"),
},
},
},
}
ctx := datadog.NewDefaultContext(context.Background())
ctx = context.WithValue(ctx, datadog.ContextAccessToken, os.Getenv("DD_BEARER_TOKEN"))
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV2.NewTeamsApi(apiClient)
resp, r, err := api.UpdateTeamNotificationRule(ctx, DdTeamDataID, TeamNotificationRuleDataID, body)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `TeamsApi.UpdateTeamNotificationRule`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `TeamsApi.UpdateTeamNotificationRule`:\n%s\n", responseContent)
}
Instructions
First install the library and its dependencies and then save the example to main.go and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"// Update team notification rule returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.TeamsApi;
import com.datadog.api.client.v2.model.TeamNotificationRule;
import com.datadog.api.client.v2.model.TeamNotificationRuleAttributes;
import com.datadog.api.client.v2.model.TeamNotificationRuleAttributesPagerduty;
import com.datadog.api.client.v2.model.TeamNotificationRuleAttributesSlack;
import com.datadog.api.client.v2.model.TeamNotificationRuleRequest;
import com.datadog.api.client.v2.model.TeamNotificationRuleResponse;
import com.datadog.api.client.v2.model.TeamNotificationRuleType;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
TeamsApi apiInstance = new TeamsApi(defaultClient);
// there is a valid "dd_team" in the system
String DD_TEAM_DATA_ID = System.getenv("DD_TEAM_DATA_ID");
// there is a valid "team_notification_rule" in the system
String TEAM_NOTIFICATION_RULE_DATA_ID = System.getenv("TEAM_NOTIFICATION_RULE_DATA_ID");
TeamNotificationRuleRequest body =
new TeamNotificationRuleRequest()
.data(
new TeamNotificationRule()
.type(TeamNotificationRuleType.TEAM_NOTIFICATION_RULES)
.id(TEAM_NOTIFICATION_RULE_DATA_ID)
.attributes(
new TeamNotificationRuleAttributes()
.pagerduty(
new TeamNotificationRuleAttributesPagerduty()
.serviceName("Datadog-prod"))
.slack(
new TeamNotificationRuleAttributesSlack()
.workspace("Datadog")
.channel("aaa-governance-ops"))));
try {
TeamNotificationRuleResponse result =
apiInstance.updateTeamNotificationRule(
DD_TEAM_DATA_ID, TEAM_NOTIFICATION_RULE_DATA_ID, body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling TeamsApi#updateTeamNotificationRule");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
Instructions
First install the library and its dependencies and then save the example to Example.java and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java""""
Update team notification rule returns "OK" response
"""
from os import environ
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.teams_api import TeamsApi
from datadog_api_client.v2.model.team_notification_rule import TeamNotificationRule
from datadog_api_client.v2.model.team_notification_rule_attributes import TeamNotificationRuleAttributes
from datadog_api_client.v2.model.team_notification_rule_attributes_pagerduty import (
TeamNotificationRuleAttributesPagerduty,
)
from datadog_api_client.v2.model.team_notification_rule_attributes_slack import TeamNotificationRuleAttributesSlack
from datadog_api_client.v2.model.team_notification_rule_request import TeamNotificationRuleRequest
from datadog_api_client.v2.model.team_notification_rule_type import TeamNotificationRuleType
# there is a valid "dd_team" in the system
DD_TEAM_DATA_ID = environ["DD_TEAM_DATA_ID"]
# there is a valid "team_notification_rule" in the system
TEAM_NOTIFICATION_RULE_DATA_ID = environ["TEAM_NOTIFICATION_RULE_DATA_ID"]
body = TeamNotificationRuleRequest(
data=TeamNotificationRule(
type=TeamNotificationRuleType.TEAM_NOTIFICATION_RULES,
id=TEAM_NOTIFICATION_RULE_DATA_ID,
attributes=TeamNotificationRuleAttributes(
pagerduty=TeamNotificationRuleAttributesPagerduty(
service_name="Datadog-prod",
),
slack=TeamNotificationRuleAttributesSlack(
workspace="Datadog",
channel="aaa-governance-ops",
),
),
),
)
configuration = Configuration()
configuration.access_token = environ["DD_BEARER_TOKEN"]
with ApiClient(configuration) as api_client:
api_instance = TeamsApi(api_client)
response = api_instance.update_team_notification_rule(
team_id=DD_TEAM_DATA_ID, rule_id=TEAM_NOTIFICATION_RULE_DATA_ID, body=body
)
print(response)
Instructions
First install the library and its dependencies and then save the example to example.py and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"# Update team notification rule returns "OK" response
require "datadog_api_client"
DatadogAPIClient.configure do |config|
config.access_token = ENV["DD_BEARER_TOKEN"]
end
api_instance = DatadogAPIClient::V2::TeamsAPI.new
# there is a valid "dd_team" in the system
DD_TEAM_DATA_ID = ENV["DD_TEAM_DATA_ID"]
# there is a valid "team_notification_rule" in the system
TEAM_NOTIFICATION_RULE_DATA_ID = ENV["TEAM_NOTIFICATION_RULE_DATA_ID"]
body = DatadogAPIClient::V2::TeamNotificationRuleRequest.new({
data: DatadogAPIClient::V2::TeamNotificationRule.new({
type: DatadogAPIClient::V2::TeamNotificationRuleType::TEAM_NOTIFICATION_RULES,
id: TEAM_NOTIFICATION_RULE_DATA_ID,
attributes: DatadogAPIClient::V2::TeamNotificationRuleAttributes.new({
pagerduty: DatadogAPIClient::V2::TeamNotificationRuleAttributesPagerduty.new({
service_name: "Datadog-prod",
}),
slack: DatadogAPIClient::V2::TeamNotificationRuleAttributesSlack.new({
workspace: "Datadog",
channel: "aaa-governance-ops",
}),
}),
}),
})
p api_instance.update_team_notification_rule(DD_TEAM_DATA_ID, TEAM_NOTIFICATION_RULE_DATA_ID, body)
Instructions
First install the library and its dependencies and then save the example to example.rb and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"// Update team notification rule returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_teams::TeamsAPI;
use datadog_api_client::datadogV2::model::TeamNotificationRule;
use datadog_api_client::datadogV2::model::TeamNotificationRuleAttributes;
use datadog_api_client::datadogV2::model::TeamNotificationRuleAttributesPagerduty;
use datadog_api_client::datadogV2::model::TeamNotificationRuleAttributesSlack;
use datadog_api_client::datadogV2::model::TeamNotificationRuleRequest;
use datadog_api_client::datadogV2::model::TeamNotificationRuleType;
#[tokio::main]
async fn main() {
// there is a valid "dd_team" in the system
let dd_team_data_id = std::env::var("DD_TEAM_DATA_ID").unwrap();
// there is a valid "team_notification_rule" in the system
let team_notification_rule_data_id = std::env::var("TEAM_NOTIFICATION_RULE_DATA_ID").unwrap();
let body = TeamNotificationRuleRequest::new(
TeamNotificationRule::new(
TeamNotificationRuleAttributes::new()
.pagerduty(
TeamNotificationRuleAttributesPagerduty::new()
.service_name("Datadog-prod".to_string()),
)
.slack(
TeamNotificationRuleAttributesSlack::new()
.channel("aaa-governance-ops".to_string())
.workspace("Datadog".to_string()),
),
TeamNotificationRuleType::TEAM_NOTIFICATION_RULES,
)
.id(team_notification_rule_data_id.clone()),
);
let configuration = datadog::Configuration::new();
let api = TeamsAPI::with_config(configuration);
let resp = api
.update_team_notification_rule(
dd_team_data_id.clone(),
team_notification_rule_data_id.clone(),
body,
)
.await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
Instructions
First install the library and its dependencies and then save the example to src/main.rs and run following commands:
DD_SITE="datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="us3.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="us5.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="datadoghq.eu" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="ap1.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="ap2.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="uk1.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="us2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo run/**
* Update team notification rule returns "OK" response
*/
import { client, v2 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration({
authMethods: {
AuthZ: {
accessToken: process.env.DD_BEARER_TOKEN as string,
},
},
});
const apiInstance = new v2.TeamsApi(configuration);
// there is a valid "dd_team" in the system
const DD_TEAM_DATA_ID = process.env.DD_TEAM_DATA_ID as string;
// there is a valid "team_notification_rule" in the system
const TEAM_NOTIFICATION_RULE_DATA_ID = process.env
.TEAM_NOTIFICATION_RULE_DATA_ID as string;
const params: v2.TeamsApiUpdateTeamNotificationRuleRequest = {
body: {
data: {
type: "team_notification_rules",
id: TEAM_NOTIFICATION_RULE_DATA_ID,
attributes: {
pagerduty: {
serviceName: "Datadog-prod",
},
slack: {
workspace: "Datadog",
channel: "aaa-governance-ops",
},
},
},
},
teamId: DD_TEAM_DATA_ID,
ruleId: TEAM_NOTIFICATION_RULE_DATA_ID,
};
apiInstance
.updateTeamNotificationRule(params)
.then((data: v2.TeamNotificationRuleResponse) => {
console.log(
"API called successfully. Returned data: " + JSON.stringify(data)
);
})
.catch((error: any) => console.error(error));
Instructions
First install the library and its dependencies and then save the example to example.ts and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"