{ "name": "CreateServiceCustomField", "fully_qualified_name": "PagerdutyApi.CreateServiceCustomField@2.0.0", "description": "Create a new custom field for services.\n\nThis tool is used to create a new custom field for services in PagerDuty, including field options if provided. It is useful when you need to add custom metadata or specifications to a service. Requires custom_fields.write permission.", "toolkit": { "name": "ArcadePagerdutyApi", "description": null, "version": "2.0.0" }, "input": { "parameters": [ { "name": "accept_version_header", "required": true, "description": "The versioning header for API requests, specified in the `Accept` header.", "value_schema": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The `Accept` header is used as a versioning header." }, "inferrable": true, "http_endpoint_parameter_name": "Accept" }, { "name": "content_type", "required": true, "description": "Specifies the media type of the resource. Must be 'application/json'.", "value_schema": { "val_type": "string", "inner_val_type": null, "enum": [ "application/json" ], "properties": null, "inner_properties": null, "description": "" }, "inferrable": true, "http_endpoint_parameter_name": "Content-Type" }, { "name": "custom_field_details", "required": false, "description": "JSON object containing details of the custom field to be created, including data type, description, display name, field type, and options.", "value_schema": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "field": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "data_type": { "val_type": "string", "inner_val_type": null, "enum": [ "boolean", "integer", "float", "string", "datetime", "url" ], "properties": null, "inner_properties": null, "description": "The kind of data the custom field is allowed to contain." }, "description": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "A description of the data this field contains." }, "display_name": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The human-readable name of the field. This must be unique across an account." }, "enabled": { "val_type": "boolean", "inner_val_type": null, "enum": [ "True", "False" ], "properties": null, "inner_properties": null, "description": "Whether the field is enabled." }, "field_options": { "val_type": "array", "inner_val_type": "json", "enum": null, "properties": null, "inner_properties": { "data": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "data_type": { "val_type": "string", "inner_val_type": null, "enum": [ "string" ], "properties": null, "inner_properties": null, "description": "The kind of data represented by this option. Must match the Field's `data_type`." }, "value": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The value of the field option. Must be unique within the field." } }, "inner_properties": null, "description": "The data content of the field option." } }, "description": null }, "field_type": { "val_type": "string", "inner_val_type": null, "enum": [ "single_value", "single_value_fixed", "multi_value", "multi_value_fixed" ], "properties": null, "inner_properties": null, "description": "The type of data this field contains. In combination with the `data_type` field." }, "name": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The name of the field. May include ASCII characters, specifically lowercase letters, digits, and underescores. The `name` for a Field must be unique and cannot be changed once created." } }, "inner_properties": null, "description": "Details of the custom field to be created." } }, "inner_properties": null, "description": "" }, "inferrable": true, "http_endpoint_parameter_name": "requestBody" } ] }, "output": { "description": "Response from the API endpoint 'createServiceCustomField'.", "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": { "provider_id": "arcade-pagerduty", "provider_type": "oauth2", "id": null, "oauth2": null }, "secrets": null, "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 Pagerduty API." }, "http_endpoint": { "metadata": { "object_type": "http_endpoint", "version": "1.2.0", "description": "" }, "url": "https://api.pagerduty.com/services/custom_fields", "http_method": "POST", "headers": {}, "parameters": [ { "name": "Accept", "tool_parameter_name": "accept_version_header", "description": "The `Accept` header is used as a versioning header.", "value_schema": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The `Accept` header is used as a versioning header." }, "accepted_as": "header", "required": true, "deprecated": false, "default": "application/vnd.pagerduty+json;version=2", "documentation_urls": [] }, { "name": "Content-Type", "tool_parameter_name": "content_type", "description": "", "value_schema": { "val_type": "string", "inner_val_type": null, "enum": [ "application/json" ], "properties": null, "inner_properties": null, "description": "" }, "accepted_as": "header", "required": true, "deprecated": false, "default": "application/json", "documentation_urls": [] }, { "name": "requestBody", "tool_parameter_name": "custom_field_details", "description": "", "value_schema": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "field": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "data_type": { "val_type": "string", "inner_val_type": null, "enum": [ "boolean", "integer", "float", "string", "datetime", "url" ], "properties": null, "inner_properties": null, "description": "The kind of data the custom field is allowed to contain." }, "description": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "A description of the data this field contains." }, "display_name": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The human-readable name of the field. This must be unique across an account." }, "enabled": { "val_type": "boolean", "inner_val_type": null, "enum": [ "True", "False" ], "properties": null, "inner_properties": null, "description": "Whether the field is enabled." }, "field_options": { "val_type": "array", "inner_val_type": "json", "enum": null, "properties": null, "inner_properties": { "data": { "val_type": "json", "inner_val_type": null, "enum": null, "properties": { "data_type": { "val_type": "string", "inner_val_type": null, "enum": [ "string" ], "properties": null, "inner_properties": null, "description": "The kind of data represented by this option. Must match the Field's `data_type`." }, "value": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The value of the field option. Must be unique within the field." } }, "inner_properties": null, "description": "The data content of the field option." } }, "description": null }, "field_type": { "val_type": "string", "inner_val_type": null, "enum": [ "single_value", "single_value_fixed", "multi_value", "multi_value_fixed" ], "properties": null, "inner_properties": null, "description": "The type of data this field contains. In combination with the `data_type` field." }, "name": { "val_type": "string", "inner_val_type": null, "enum": null, "properties": null, "inner_properties": null, "description": "The name of the field. May include ASCII characters, specifically lowercase letters, digits, and underescores. The `name` for a Field must be unique and cannot be changed once created." } }, "inner_properties": null, "description": "Details of the custom field to be created." } }, "inner_properties": null, "description": "" }, "accepted_as": "body", "required": false, "deprecated": false, "default": null, "documentation_urls": [] } ], "documentation_urls": [], "secrets": [ { "arcade_key": "auth_token", "parameter_name": "Authorization", "accepted_as": "header", "formatted_value": "Bearer {authorization}", "description": "The OAuth token to use for authentication.", "is_auth_token": true } ], "request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"properties\": {\n \"field\": {\n \"type\": \"object\",\n \"description\": \"Details of the custom field to be created.\",\n \"properties\": {\n \"data_type\": {\n \"type\": \"string\",\n \"description\": \"The kind of data the custom field is allowed to contain.\",\n \"enum\": [\n \"boolean\",\n \"integer\",\n \"float\",\n \"string\",\n \"datetime\",\n \"url\"\n ]\n },\n \"description\": {\n \"type\": \"string\",\n \"nullable\": true,\n \"description\": \"A description of the data this field contains.\",\n \"maxLength\": 1000\n },\n \"display_name\": {\n \"type\": \"string\",\n \"description\": \"The human-readable name of the field. This must be unique across an account.\",\n \"maxLength\": 50\n },\n \"enabled\": {\n \"type\": \"boolean\",\n \"description\": \"Whether the field is enabled.\",\n \"enum\": [\n true,\n false\n ]\n },\n \"field_options\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"description\": \"An option for a custom field. Can only be applied to fields with a `field_type` of `single_value_fixed` or `multi_value_fixed`.\",\n \"properties\": {\n \"data\": {\n \"type\": \"object\",\n \"description\": \"The data content of the field option.\",\n \"properties\": {\n \"data_type\": {\n \"type\": \"string\",\n \"description\": \"The kind of data represented by this option. Must match the Field's `data_type`.\",\n \"enum\": [\n \"string\"\n ]\n },\n \"value\": {\n \"type\": \"string\",\n \"description\": \"The value of the field option. Must be unique within the field.\",\n \"maxLength\": 200\n }\n },\n \"required\": [\n \"data_type\",\n \"value\"\n ]\n }\n },\n \"required\": [\n \"data\"\n ]\n }\n },\n \"field_type\": {\n \"type\": \"string\",\n \"description\": \"The type of data this field contains. In combination with the `data_type` field.\",\n \"enum\": [\n \"single_value\",\n \"single_value_fixed\",\n \"multi_value\",\n \"multi_value_fixed\"\n ]\n },\n \"name\": {\n \"type\": \"string\",\n \"title\": \"Field Name\",\n \"description\": \"The name of the field. May include ASCII characters, specifically lowercase letters, digits, and underescores. The `name` for a Field must be unique and cannot be changed once created.\",\n \"maxLength\": 50\n }\n },\n \"required\": [\n \"data_type\",\n \"display_name\",\n \"field_type\",\n \"name\"\n ]\n }\n },\n \"required\": [\n \"field\"\n ]\n },\n \"examples\": {\n \"request1\": {\n \"summary\": \"Example: With field_options and single-value\",\n \"value\": {\n \"field\": {\n \"data_type\": \"string\",\n \"description\": \"The environment that the service operates in\",\n \"display_name\": \"Environment\",\n \"enabled\": true,\n \"field_options\": [\n {\n \"data\": {\n \"data_type\": \"string\",\n \"value\": \"production\"\n }\n },\n {\n \"data\": {\n \"data_type\": \"string\",\n \"value\": \"staging\"\n }\n },\n {\n \"data\": {\n \"data_type\": \"string\",\n \"value\": \"development\"\n }\n }\n ],\n \"field_type\": \"single_value_fixed\",\n \"name\": \"environment\"\n }\n }\n },\n \"request2\": {\n \"summary\": \"Example: With field_options and multi-value\",\n \"value\": {\n \"field\": {\n \"data_type\": \"string\",\n \"description\": \"The regions where this service is deployed\",\n \"display_name\": \"Supported Regions\",\n \"enabled\": true,\n \"field_options\": [\n {\n \"data\": {\n \"data_type\": \"string\",\n \"value\": \"us-east-1\"\n }\n },\n {\n \"data\": {\n \"data_type\": \"string\",\n \"value\": \"us-west-1\"\n }\n },\n {\n \"data\": {\n \"data_type\": \"string\",\n \"value\": \"eu-west-1\"\n }\n },\n {\n \"data\": {\n \"data_type\": \"string\",\n \"value\": \"ap-southeast-1\"\n }\n }\n ],\n \"field_type\": \"multi_value_fixed\",\n \"name\": \"supported_regions\"\n }\n }\n },\n \"request3\": {\n \"summary\": \"Example: Without field_options\",\n \"value\": {\n \"field\": {\n \"data_type\": \"string\",\n \"description\": \"The team that owns this service\",\n \"display_name\": \"Team Owner\",\n \"enabled\": true,\n \"field_type\": \"single_value\",\n \"name\": \"team_owner\"\n }\n }\n }\n }\n }\n }\n}", "use_request_body_schema_mode": true, "validate_request_body_schema": true } }