arcade-mcp/toolkits/asana_api/arcade_asana_api/wrapper_tools/CreateStatusUpdate.json
jottakka de742ff4f1
[MOAR][Asana][Github] Adding GitHub and Asana starter toolkits (#663)
Co-authored-by: Francisco Liberal <francisco@arcade.dev>
2025-10-30 18:21:34 -03:00

255 lines
15 KiB
JSON

{
"name": "CreateStatusUpdate",
"fully_qualified_name": "AsanaApi.CreateStatusUpdate@0.1.0",
"description": "Create a new status update on an object in Asana.\n\nUse this tool to add a status update to an object in Asana, such as a project. It returns the full record of the newly created status update, providing insight into the update's details and context.",
"toolkit": {
"name": "AsanaApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "status_update_content",
"required": true,
"description": "The content of the status update to create, provided as a JSON object.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"data": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"inner_properties": null,
"description": "The status update to create."
},
"inferrable": true,
"http_endpoint_parameter_name": "requestBody"
},
{
"name": "results_per_page",
"required": false,
"description": "Number of status updates to return per page, between 1 and 100.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Results per page.\nThe number of objects to return per page. The value must be between 1 and 100."
},
"inferrable": true,
"http_endpoint_parameter_name": "limit"
},
{
"name": "pagination_offset_token",
"required": false,
"description": "Token to fetch the next page of results. Received from a previous API response for pagination. If omitted, the first page is returned.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Offset token.\nAn offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results.\n*Note: You can only pass in an offset that was returned to you via a previously paginated request.*"
},
"inferrable": true,
"http_endpoint_parameter_name": "offset"
},
{
"name": "include_optional_fields",
"required": false,
"description": "List of properties to include. Provide as an array of strings to include optional properties in the response.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include."
},
"inferrable": true,
"http_endpoint_parameter_name": "opt_fields"
},
{
"name": "enable_pretty_output",
"required": false,
"description": "Set to true to receive the response in a readable, indented format. Use for debugging as it increases response time and size.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Provides \u201cpretty\u201d output.\nProvides the response in a \u201cpretty\u201d format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging."
},
"inferrable": true,
"http_endpoint_parameter_name": "opt_pretty"
}
]
},
"output": {
"description": "Response from the API endpoint 'createStatusForObject'.",
"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-asana",
"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 asana API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://app.asana.com/api/1.0/status_updates",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "opt_pretty",
"tool_parameter_name": "enable_pretty_output",
"description": "Provides \u201cpretty\u201d output.\nProvides the response in a \u201cpretty\u201d format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Provides \u201cpretty\u201d output.\nProvides the response in a \u201cpretty\u201d format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "limit",
"tool_parameter_name": "results_per_page",
"description": "Results per page.\nThe number of objects to return per page. The value must be between 1 and 100.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Results per page.\nThe number of objects to return per page. The value must be between 1 and 100."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "offset",
"tool_parameter_name": "pagination_offset_token",
"description": "Offset token.\nAn offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results.\n*Note: You can only pass in an offset that was returned to you via a previously paginated request.*",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Offset token.\nAn offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results.\n*Note: You can only pass in an offset that was returned to you via a previously paginated request.*"
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "opt_fields",
"tool_parameter_name": "include_optional_fields",
"description": "This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "requestBody",
"tool_parameter_name": "status_update_content",
"description": "The status update to create.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"data": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"inner_properties": null,
"description": "The status update to create."
},
"accepted_as": "body",
"required": true,
"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 \"description\": \"The status update to create.\",\n \"required\": true,\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"properties\": {\n \"data\": {\n \"allOf\": [\n {\n \"allOf\": [\n {\n \"description\": \"A *status update* is an update on the progress of a particular project, portfolio, or goal, and is sent out to all of its parent's followers when created. These updates include both text describing the update and a `status_type` intended to represent the overall state of the project.\",\n \"type\": \"object\",\n \"properties\": {\n \"gid\": {\n \"description\": \"Globally unique identifier of the resource, as a string.\",\n \"type\": \"string\",\n \"readOnly\": true,\n \"example\": \"12345\",\n \"x-insert-after\": false\n },\n \"resource_type\": {\n \"description\": \"The base type of this resource.\",\n \"type\": \"string\",\n \"readOnly\": true,\n \"example\": \"status_update\",\n \"x-insert-after\": \"gid\"\n },\n \"title\": {\n \"description\": \"The title of the status update.\",\n \"type\": \"string\",\n \"example\": \"Status Update - Jun 15\"\n },\n \"resource_subtype\": {\n \"type\": \"string\",\n \"description\": \"The subtype of this resource. Different subtypes retain many of the same fields and behavior, but may render differently in Asana or represent resources with different semantic meaning.\\nThe `resource_subtype`s for `status` objects represent the type of their parent.\",\n \"enum\": [\n \"project_status_update\",\n \"portfolio_status_update\",\n \"goal_status_update\"\n ],\n \"example\": \"project_status_update\",\n \"readOnly\": true\n }\n }\n },\n {\n \"type\": \"object\",\n \"required\": [\n \"text\",\n \"status_type\"\n ],\n \"properties\": {\n \"text\": {\n \"description\": \"The text content of the status update.\",\n \"type\": \"string\",\n \"example\": \"The project is moving forward according to plan...\"\n },\n \"html_text\": {\n \"description\": \"[Opt In](/docs/inputoutput-options). The text content of the status update with formatting as HTML.\",\n \"type\": \"string\",\n \"example\": \"<body>The project <strong>is</strong> moving forward according to plan...</body>\"\n },\n \"status_type\": {\n \"description\": \"The type associated with the status update. This represents the current state of the object this object is on.\",\n \"type\": \"string\",\n \"enum\": [\n \"on_track\",\n \"at_risk\",\n \"off_track\",\n \"on_hold\",\n \"complete\",\n \"achieved\",\n \"partial\",\n \"missed\",\n \"dropped\"\n ]\n }\n }\n }\n ]\n },\n {\n \"type\": \"object\",\n \"required\": [\n \"parent\"\n ],\n \"properties\": {\n \"parent\": {\n \"allOf\": [\n {\n \"type\": \"string\",\n \"description\": \"The id of parent to send this status update to. This can be a project, goal or portfolio.\"\n }\n ]\n }\n }\n }\n ]\n }\n }\n }\n }\n }\n}",
"use_request_body_schema_mode": true,
"validate_request_body_schema": true
}
}