This product is not supported for your selected Datadog site. ().

Get On-Call team routing rules

GET https://api.ap1.datadoghq.com/api/v2/on-call/teams/{team_id}/routing-ruleshttps://api.ap2.datadoghq.com/api/v2/on-call/teams/{team_id}/routing-ruleshttps://api.datadoghq.eu/api/v2/on-call/teams/{team_id}/routing-ruleshttps://api.ddog-gov.com/api/v2/on-call/teams/{team_id}/routing-ruleshttps://api.us2.ddog-gov.com/api/v2/on-call/teams/{team_id}/routing-ruleshttps://api.datadoghq.com/api/v2/on-call/teams/{team_id}/routing-ruleshttps://api.us3.datadoghq.com/api/v2/on-call/teams/{team_id}/routing-ruleshttps://api.us5.datadoghq.com/api/v2/on-call/teams/{team_id}/routing-rules

Overview

Get a team’s On-Call routing rules This endpoint requires the on_call_read permission.

Arguments

Path Parameters

Name

Type

Description

team_id [required]

string

The team ID

Query Strings

Name

Type

Description

include

string

Comma-separated list of included relationships to be returned. Allowed values: rules, rules.policy.

Response

OK

Represents a complete set of team routing rules, including data and optionally included related resources.

Expand All

Field

Type

Description

data

object

Represents the top-level data object for team routing rules, containing the ID, relationships, and resource type.

id

string

Specifies the unique identifier of this team routing rules record.

relationships

object

Specifies relationships for team routing rules, including rule references.

rules

object

Holds references to a set of routing rules in a relationship.

data

[object]

An array of references to the routing rules associated with this team.

id [required]

string

Specifies the unique identifier for the related routing rule.

type [required]

enum

Indicates that the resource is of type 'team_routing_rules'. Allowed enum values: team_routing_rules

default: team_routing_rules

type [required]

enum

Team routing rules resource type. Allowed enum values: team_routing_rules

default: team_routing_rules

included

[ <oneOf>]

Provides related routing rules or other included resources.

Option 1

object

Represents a routing rule, including its attributes, relationships, and unique identifier.

attributes

object

Defines the configurable attributes of a routing rule, such as actions, query, time restriction, and urgency.

actions

[ <oneOf>]

Specifies the list of actions to perform when the routing rule matches.

Option 1

object

Sends a message to a Slack channel.

channel [required]

string

The channel ID.

type [required]

enum

Indicates that the action is a send Slack message action. Allowed enum values: send_slack_message

default: send_slack_message

workspace [required]

string

The workspace ID.

Option 2

object

Sends a message to a Microsoft Teams channel.

channel [required]

string

The channel ID.

team [required]

string

The team ID.

tenant [required]

string

The tenant ID.

type [required]

enum

Indicates that the action is a send Microsoft Teams message action. Allowed enum values: send_teams_message

default: send_teams_message

Option 3

object

Triggers a Workflow Automation.

handle [required]

string

The handle of the Workflow Automation to trigger.

type [required]

enum

Indicates that the action triggers a Workflow Automation. Allowed enum values: workflow

default: workflow

Option 4

object

Triggers an escalation policy.

ack_timeout_minutes

int64

The number of minutes before an acknowledged page is re-triggered.

policy_id [required]

string

The ID of the escalation policy to route to.

support_hours

object

Support hours during which the escalation policy will be executed. Outside of these hours, the escalation policy will be on hold and triggered once the next support hours window starts. This is mutually exclusive with the top-level time_restriction field on the routing rule.

restrictions

[object]

The list of support hours time windows.

end_day

enum

A day of the week. Allowed enum values: monday,tuesday,wednesday,thursday,friday,saturday,sunday

end_time

string

Specifies the ending time for this restriction.

start_day

enum

A day of the week. Allowed enum values: monday,tuesday,wednesday,thursday,friday,saturday,sunday

start_time

string

Specifies the starting time for this restriction.

time_zone [required]

string

The time zone in which the support hours are expressed.

type [required]

enum

Indicates that the action pages an escalation policy. This action can be set once per routing rule item, and is mutually exclusive with the top-level policy_id field on the routing rule. Allowed enum values: escalation_policy

default: escalation_policy

urgency

enum

Specifies the level of urgency for a routing rule (low, high, or dynamic). Allowed enum values: low,high,dynamic

query

string

Defines the query or condition that triggers this routing rule.

time_restriction

object

Time restrictions during which the routing rule is active. Outside of these hours, the rule does not match and routing continues to subsequent rules. This is mutually exclusive with the action-level support_hours field.

restrictions [required]

[object]

Defines the list of time-based restrictions.

end_day

enum

A day of the week. Allowed enum values: monday,tuesday,wednesday,thursday,friday,saturday,sunday

end_time

string

Specifies the ending time for this restriction.

start_day

enum

A day of the week. Allowed enum values: monday,tuesday,wednesday,thursday,friday,saturday,sunday

start_time

string

Specifies the starting time for this restriction.

time_zone [required]

string

Specifies the time zone applicable to the restrictions.

urgency

enum

Specifies the level of urgency for a routing rule (low, high, or dynamic). Allowed enum values: low,high,dynamic

id

string

Specifies the unique identifier of this routing rule.

relationships

object

Specifies relationships for a routing rule, linking to associated policy resources.

policy

object

Defines the relationship that links a routing rule to a policy.

data

object

Represents the policy data reference, containing the policy's ID and resource type.

id [required]

string

Specifies the unique identifier of the policy.

type [required]

enum

Indicates that the resource is of type 'policies'. Allowed enum values: policies

default: policies

type [required]

enum

Team routing rules resource type. Allowed enum values: team_routing_rules

default: team_routing_rules

{
  "data": {
    "id": "27590dae-47be-4a7d-9abf-8f4e45124020",
    "relationships": {
      "rules": {
        "data": [
          {
            "id": "03aff2d6-6cbf-496c-997f-a857bbe9a94a",
            "type": "team_routing_rules"
          },
          {
            "id": "03aff2d6-6cbf-496c-997f-a857bbe9a94a",
            "type": "team_routing_rules"
          }
        ]
      }
    },
    "type": "team_routing_rules"
  },
  "included": [
    {
      "attributes": {
        "actions": null,
        "query": "tags.service:test",
        "time_restriction": {
          "restrictions": [
            {
              "end_day": "monday",
              "end_time": "17:00:00",
              "start_day": "monday",
              "start_time": "09:00:00"
            },
            {
              "end_day": "tuesday",
              "end_time": "17:00:00",
              "start_day": "tuesday",
              "start_time": "09:00:00"
            }
          ],
          "time_zone": ""
        },
        "urgency": "high"
      },
      "id": "03aff2d6-6cbf-496c-997f-a857bbe9a94a",
      "relationships": {
        "policy": {
          "data": null
        }
      },
      "type": "team_routing_rules"
    }
  ]
}

Too many requests

API error response.

Expand All

Field

Type

Description

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Code Example

                  # Path parameters
export team_id="27590dae-47be-4a7d-9abf-8f4e45124020"
# Curl command
curl -X GET "https://api.ap1.datadoghq.com"https://api.ap2.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.us2.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/on-call/teams/${team_id}/routing-rules" \ -H "Accept: application/json" \ -H "DD-API-KEY: ${DD_API_KEY}" \ -H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
"""
Get On-Call team routing rules returns "OK" response
"""

from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.on_call_api import OnCallApi

configuration = Configuration()
with ApiClient(configuration) as api_client:
    api_instance = OnCallApi(api_client)
    response = api_instance.get_on_call_team_routing_rules(
        team_id="27590dae-47be-4a7d-9abf-8f4e45124020",
    )

    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.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" python3 "example.py"
# Get On-Call team routing rules returns "OK" response

require "datadog_api_client"
api_instance = DatadogAPIClient::V2::OnCallAPI.new
p api_instance.get_on_call_team_routing_rules("27590dae-47be-4a7d-9abf-8f4e45124020")

Instructions

First install the library and its dependencies and then save the example to example.rb and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" rb "example.rb"
// Get On-Call team routing rules 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() {
	ctx := datadog.NewDefaultContext(context.Background())
	configuration := datadog.NewConfiguration()
	apiClient := datadog.NewAPIClient(configuration)
	api := datadogV2.NewOnCallApi(apiClient)
	resp, r, err := api.GetOnCallTeamRoutingRules(ctx, "27590dae-47be-4a7d-9abf-8f4e45124020", *datadogV2.NewGetOnCallTeamRoutingRulesOptionalParameters())

	if err != nil {
		fmt.Fprintf(os.Stderr, "Error when calling `OnCallApi.GetOnCallTeamRoutingRules`: %v\n", err)
		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
	}

	responseContent, _ := json.MarshalIndent(resp, "", "  ")
	fmt.Fprintf(os.Stdout, "Response from `OnCallApi.GetOnCallTeamRoutingRules`:\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.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" go run "main.go"
// Get On-Call team routing rules returns "OK" response

import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.OnCallApi;
import com.datadog.api.client.v2.model.TeamRoutingRules;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = ApiClient.getDefaultApiClient();
    OnCallApi apiInstance = new OnCallApi(defaultClient);

    try {
      TeamRoutingRules result =
          apiInstance.getOnCallTeamRoutingRules("27590dae-47be-4a7d-9abf-8f4e45124020");
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling OnCallApi#getOnCallTeamRoutingRules");
      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.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" java "Example.java"
// Get On-Call team routing rules returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_on_call::GetOnCallTeamRoutingRulesOptionalParams;
use datadog_api_client::datadogV2::api_on_call::OnCallAPI;

#[tokio::main]
async fn main() {
    let configuration = datadog::Configuration::new();
    let api = OnCallAPI::with_config(configuration);
    let resp = api
        .get_on_call_team_routing_rules(
            "27590dae-47be-4a7d-9abf-8f4e45124020".to_string(),
            GetOnCallTeamRoutingRulesOptionalParams::default(),
        )
        .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.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo run
/**
 * Get On-Call team routing rules returns "OK" response
 */

import { client, v2 } from "@datadog/datadog-api-client";

const configuration = client.createConfiguration();
const apiInstance = new v2.OnCallApi(configuration);

const params: v2.OnCallApiGetOnCallTeamRoutingRulesRequest = {
  teamId: "27590dae-47be-4a7d-9abf-8f4e45124020",
};

apiInstance
  .getOnCallTeamRoutingRules(params)
  .then((data: v2.TeamRoutingRules) => {
    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.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" tsc "example.ts"