{ "name": "CreateOnCallSchedule", "fully_qualified_name": "DatadogApi.CreateOnCallSchedule@0.1.0", "description": "Create a new on-call schedule in Datadog.\n\nThis tool is used to create a new on-call schedule in Datadog. It should be called when there is a need to set up a schedule for on-call duties, allowing teams to manage availability and response times. The tool returns a confirmation of the schedule created along with its details.", "toolkit": { "name": "ArcadeDatadogApi", "description": null, "version": "0.1.0" }, "input": { "parameters": [ { "name": "schedule_data", "required": true, "description": "JSON object containing details for creating an on-call schedule, including attributes like name, layers, and time zone, and relationships like associated teams.", "value_schema": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "data": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "attributes": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "layers": { "val_type": "array", "inner_val_type": "json", "enum": null, "properties": null, "inner_properties": { "effective_date": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The date/time when this layer becomes active (in ISO 8601)." }, "end_date": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The date/time after which this layer no longer applies (in ISO 8601)." }, "interval": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "days": { "val_type": "integer", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The number of days in each rotation cycle." }, "seconds": { "val_type": "integer", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "Any additional seconds for the rotation cycle (up to 30 days)." } }, "inner_properties": null, "description": "Defines how often the rotation repeats, using a combination of days and optional seconds. Should be at least 1 hour." }, "members": { "val_type": "array", "inner_val_type": "json", "enum": null, "properties": null, "inner_properties": { "user": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "id": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The user's ID." } }, "inner_properties": null, "description": "Identifies the user participating in this layer as a single object with an `id`." } }, "description": "A list of members who participate in this layer's rotation." }, "name": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The name of this layer." }, "restrictions": { "val_type": "array", "inner_val_type": "json", "enum": null, "properties": null, "inner_properties": { "end_day": { "val_type": "string", "inner_val_type": null, "enum": [ "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday" ], "properties": null, "inner_properties": null, "description": "A day of the week." }, "end_time": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "Specifies the ending time for this restriction." }, "start_day": { "val_type": "string", "inner_val_type": null, "enum": [ "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday" ], "properties": null, "inner_properties": null, "description": "A day of the week." }, "start_time": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "Specifies the starting time for this restriction." } }, "description": "Zero or more time-based restrictions (for example, only weekdays, during business hours)." }, "rotation_start": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The date/time when the rotation for this layer starts (in ISO 8601)." } }, "description": "The layers of On-Call coverage that define rotation intervals and restrictions." }, "name": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "A human-readable name for the new schedule." }, "time_zone": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The time zone in which the schedule is defined." } }, "inner_properties": null, "description": "Describes the main attributes for creating a new schedule, including name, layers, and time zone." }, "relationships": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "teams": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "data": { "val_type": "array", "inner_val_type": "json", "enum": null, "properties": null, "inner_properties": { "id": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The unique identifier of the team in this relationship." }, "type": { "val_type": "string", "inner_val_type": null, "enum": [ "teams" ], "properties": null, "inner_properties": null, "description": "Teams resource type." } }, "description": "An array of team references for this schedule." } }, "inner_properties": null, "description": "Associates teams with this schedule in a data structure." } }, "inner_properties": null, "description": "Gathers relationship objects for the schedule creation request, including the teams to associate." }, "type": { "val_type": "string", "inner_val_type": null, "enum": [ "schedules" ], "properties": null, "inner_properties": null, "description": "Schedules resource type." } }, "inner_properties": null, "description": "The core data wrapper for creating a schedule, encompassing attributes, relationships, and the resource type." } }, "inner_properties": null, "description": "" }, "inferrable": true, "http_endpoint_parameter_name": "requestBody" }, { "name": "include_relationships", "required": false, "description": "Comma-separated list of relationships to return with the schedule. Options: `teams`, `layers`, `layers.members`, `layers.members.user`.", "value_schema": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "Comma-separated list of included relationships to be returned. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`." }, "inferrable": true, "http_endpoint_parameter_name": "include" } ] }, "output": { "description": "Response from the API endpoint 'CreateOnCallSchedule'.", "available_modes": [ "value", "error", "null" ], "value_schema": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": null } }, "requirements": { "authorization": null, "secrets": [ { "key": "DATADOG_API_KEY" }, { "key": "DATADOG_APPLICATION_KEY" }, { "key": "DATADOG_BASE_URL" } ], "metadata": null }, "deprecation_message": null, "metadata": { "object_type": "api_wrapper_tool", "version": "1.1.0", "description": "Tools that enable LLMs to interact directly with the Datadog API." }, "http_endpoint": { "metadata": { "object_type": "http_endpoint", "version": "1.2.0", "description": "" }, "url": "https://{datadog_base_url}/api/v2/on-call/schedules", "http_method": "POST", "headers": {}, "parameters": [ { "name": "include", "tool_parameter_name": "include_relationships", "description": "Comma-separated list of included relationships to be returned. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`.", "value_schema": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "Comma-separated list of included relationships to be returned. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`." }, "accepted_as": "query", "required": false, "deprecated": false, "default": null, "documentation_urls": [] }, { "name": "requestBody", "tool_parameter_name": "schedule_data", "description": "", "value_schema": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "data": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "attributes": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "layers": { "val_type": "array", "inner_val_type": "json", "enum": null, "properties": null, "inner_properties": { "effective_date": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The date/time when this layer becomes active (in ISO 8601)." }, "end_date": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The date/time after which this layer no longer applies (in ISO 8601)." }, "interval": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "days": { "val_type": "integer", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The number of days in each rotation cycle." }, "seconds": { "val_type": "integer", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "Any additional seconds for the rotation cycle (up to 30 days)." } }, "inner_properties": null, "description": "Defines how often the rotation repeats, using a combination of days and optional seconds. Should be at least 1 hour." }, "members": { "val_type": "array", "inner_val_type": "json", "enum": null, "properties": null, "inner_properties": { "user": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "id": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The user's ID." } }, "inner_properties": null, "description": "Identifies the user participating in this layer as a single object with an `id`." } }, "description": "A list of members who participate in this layer's rotation." }, "name": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The name of this layer." }, "restrictions": { "val_type": "array", "inner_val_type": "json", "enum": null, "properties": null, "inner_properties": { "end_day": { "val_type": "string", "inner_val_type": null, "enum": [ "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday" ], "properties": null, "inner_properties": null, "description": "A day of the week." }, "end_time": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "Specifies the ending time for this restriction." }, "start_day": { "val_type": "string", "inner_val_type": null, "enum": [ "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday" ], "properties": null, "inner_properties": null, "description": "A day of the week." }, "start_time": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "Specifies the starting time for this restriction." } }, "description": "Zero or more time-based restrictions (for example, only weekdays, during business hours)." }, "rotation_start": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The date/time when the rotation for this layer starts (in ISO 8601)." } }, "description": "The layers of On-Call coverage that define rotation intervals and restrictions." }, "name": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "A human-readable name for the new schedule." }, "time_zone": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The time zone in which the schedule is defined." } }, "inner_properties": null, "description": "Describes the main attributes for creating a new schedule, including name, layers, and time zone." }, "relationships": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "teams": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "data": { "val_type": "array", "inner_val_type": "json", "enum": null, "properties": null, "inner_properties": { "id": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The unique identifier of the team in this relationship." }, "type": { "val_type": "string", "inner_val_type": null, "enum": [ "teams" ], "properties": null, "inner_properties": null, "description": "Teams resource type." } }, "description": "An array of team references for this schedule." } }, "inner_properties": null, "description": "Associates teams with this schedule in a data structure." } }, "inner_properties": null, "description": "Gathers relationship objects for the schedule creation request, including the teams to associate." }, "type": { "val_type": "string", "inner_val_type": null, "enum": [ "schedules" ], "properties": null, "inner_properties": null, "description": "Schedules resource type." } }, "inner_properties": null, "description": "The core data wrapper for creating a schedule, encompassing attributes, relationships, and the resource type." } }, "inner_properties": null, "description": "" }, "accepted_as": "body", "required": true, "deprecated": false, "default": null, "documentation_urls": [] } ], "documentation_urls": [], "secrets": [ { "arcade_key": "DATADOG_API_KEY", "parameter_name": "DD-API-KEY", "accepted_as": "header", "formatted_value": null, "description": "", "is_auth_token": false }, { "arcade_key": "DATADOG_APPLICATION_KEY", "parameter_name": "DD-APPLICATION-KEY", "accepted_as": "header", "formatted_value": null, "description": "", "is_auth_token": false }, { "arcade_key": "DATADOG_BASE_URL", "parameter_name": "datadog_base_url", "accepted_as": "path", "formatted_value": null, "description": "", "is_auth_token": false } ], "request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"description\": \"The top-level request body for schedule creation, wrapping a `data` object.\",\n \"example\": {\n \"data\": {\n \"attributes\": {\n \"layers\": [\n {\n \"effective_date\": \"2025-02-03T05:00:00Z\",\n \"end_date\": \"2025-12-31T00:00:00Z\",\n \"interval\": {\n \"days\": 1\n },\n \"members\": [\n {\n \"user\": {\n \"id\": \"00000000-aba1-0000-0000-000000000000\"\n }\n }\n ],\n \"name\": \"Layer 1\",\n \"restrictions\": [\n {\n \"end_day\": \"friday\",\n \"end_time\": \"17:00:00\",\n \"start_day\": \"monday\",\n \"start_time\": \"09:00:00\"\n }\n ],\n \"rotation_start\": \"2025-02-01T00:00:00Z\"\n }\n ],\n \"name\": \"On-Call Schedule\",\n \"time_zone\": \"America/New_York\"\n },\n \"relationships\": {\n \"teams\": {\n \"data\": [\n {\n \"id\": \"00000000-da3a-0000-0000-000000000000\",\n \"type\": \"teams\"\n }\n ]\n }\n },\n \"type\": \"schedules\"\n }\n },\n \"properties\": {\n \"data\": {\n \"description\": \"The core data wrapper for creating a schedule, encompassing attributes, relationships, and the resource type.\",\n \"properties\": {\n \"attributes\": {\n \"description\": \"Describes the main attributes for creating a new schedule, including name, layers, and time zone.\",\n \"properties\": {\n \"layers\": {\n \"description\": \"The layers of On-Call coverage that define rotation intervals and restrictions.\",\n \"items\": {\n \"description\": \"Describes a schedule layer, including rotation intervals, members, restrictions, and timeline settings.\",\n \"properties\": {\n \"effective_date\": {\n \"description\": \"The date/time when this layer becomes active (in ISO 8601).\",\n \"example\": \"2025-01-01T00:00:00Z\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n },\n \"end_date\": {\n \"description\": \"The date/time after which this layer no longer applies (in ISO 8601).\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n },\n \"interval\": {\n \"description\": \"Defines how often the rotation repeats, using a combination of days and optional seconds. Should be at least 1 hour.\",\n \"properties\": {\n \"days\": {\n \"description\": \"The number of days in each rotation cycle.\",\n \"example\": 1,\n \"format\": \"int32\",\n \"maximum\": 400,\n \"type\": \"integer\"\n },\n \"seconds\": {\n \"description\": \"Any additional seconds for the rotation cycle (up to 30 days).\",\n \"example\": 300,\n \"format\": \"int64\",\n \"maximum\": 2592000,\n \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"members\": {\n \"description\": \"A list of members who participate in this layer's rotation.\",\n \"items\": {\n \"description\": \"Defines a single member within a schedule layer, including the reference to the underlying user.\",\n \"properties\": {\n \"user\": {\n \"description\": \"Identifies the user participating in this layer as a single object with an `id`.\",\n \"properties\": {\n \"id\": {\n \"description\": \"The user's ID.\",\n \"example\": \"00000000-aba1-0000-0000-000000000000\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"name\": {\n \"description\": \"The name of this layer.\",\n \"example\": \"Primary On-Call Layer\",\n \"type\": \"string\"\n },\n \"restrictions\": {\n \"description\": \"Zero or more time-based restrictions (for example, only weekdays, during business hours).\",\n \"items\": {\n \"description\": \"Defines a single time restriction rule with start and end times and the applicable weekdays.\",\n \"properties\": {\n \"end_day\": {\n \"description\": \"A day of the week.\",\n \"enum\": [\n \"monday\",\n \"tuesday\",\n \"wednesday\",\n \"thursday\",\n \"friday\",\n \"saturday\",\n \"sunday\"\n ],\n \"type\": \"string\",\n \"x-enum-varnames\": [\n \"MONDAY\",\n \"TUESDAY\",\n \"WEDNESDAY\",\n \"THURSDAY\",\n \"FRIDAY\",\n \"SATURDAY\",\n \"SUNDAY\"\n ]\n },\n \"end_time\": {\n \"description\": \"Specifies the ending time for this restriction.\",\n \"type\": \"string\"\n },\n \"start_day\": {\n \"description\": \"A day of the week.\",\n \"enum\": [\n \"monday\",\n \"tuesday\",\n \"wednesday\",\n \"thursday\",\n \"friday\",\n \"saturday\",\n \"sunday\"\n ],\n \"type\": \"string\",\n \"x-enum-varnames\": [\n \"MONDAY\",\n \"TUESDAY\",\n \"WEDNESDAY\",\n \"THURSDAY\",\n \"FRIDAY\",\n \"SATURDAY\",\n \"SUNDAY\"\n ]\n },\n \"start_time\": {\n \"description\": \"Specifies the starting time for this restriction.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"rotation_start\": {\n \"description\": \"The date/time when the rotation for this layer starts (in ISO 8601).\",\n \"example\": \"2025-01-01T00:00:00Z\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"name\",\n \"interval\",\n \"rotation_start\",\n \"effective_date\",\n \"members\"\n ],\n \"type\": \"object\"\n },\n \"type\": \"array\"\n },\n \"name\": {\n \"description\": \"A human-readable name for the new schedule.\",\n \"example\": \"Team A On-Call\",\n \"type\": \"string\"\n },\n \"time_zone\": {\n \"description\": \"The time zone in which the schedule is defined.\",\n \"example\": \"America/New_York\",\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"name\",\n \"time_zone\",\n \"layers\"\n ],\n \"type\": \"object\"\n },\n \"relationships\": {\n \"description\": \"Gathers relationship objects for the schedule creation request, including the teams to associate.\",\n \"properties\": {\n \"teams\": {\n \"description\": \"Associates teams with this schedule in a data structure.\",\n \"properties\": {\n \"data\": {\n \"description\": \"An array of team references for this schedule.\",\n \"items\": {\n \"description\": \"Relates a team to this schedule, identified by `id` and `type` (must be `teams`).\",\n \"properties\": {\n \"id\": {\n \"description\": \"The unique identifier of the team in this relationship.\",\n \"example\": \"00000000-da3a-0000-0000-000000000000\",\n \"type\": \"string\"\n },\n \"type\": {\n \"default\": \"teams\",\n \"description\": \"Teams resource type.\",\n \"enum\": [\n \"teams\"\n ],\n \"example\": \"teams\",\n \"type\": \"string\",\n \"x-enum-varnames\": [\n \"TEAMS\"\n ]\n }\n },\n \"required\": [\n \"type\",\n \"id\"\n ],\n \"type\": \"object\"\n },\n \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n },\n \"type\": {\n \"default\": \"schedules\",\n \"description\": \"Schedules resource type.\",\n \"enum\": [\n \"schedules\"\n ],\n \"example\": \"schedules\",\n \"type\": \"string\",\n \"x-enum-varnames\": [\n \"SCHEDULES\"\n ]\n }\n },\n \"required\": [\n \"type\",\n \"attributes\"\n ],\n \"type\": \"object\"\n }\n },\n \"required\": [\n \"data\"\n ],\n \"type\": \"object\"\n }\n }\n },\n \"required\": true\n}", "use_request_body_schema_mode": true, "validate_request_body_schema": true } }