generated: '2026-07-15' method: generated source: openapi/workato-agent-studio-openapi.yml, openapi/workato-developer-api-openapi.yml, openapi/workato-event-streams-openapi.yml, openapi/workato-mcp-server-openapi.yml description: Recommended x-agentic-access execution contracts, classified heuristically from the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind audience per deployment. See research/curity/agentic-governance/. summary: operations: 60 by_action_class: connected: 20 acting: 40 by_consequence: read: 20 write: 35 safety-critical: 5 human_in_the_loop_required: 5 operations: - path: /api/agentic/genies method: get operationId: listGenies x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/agentic/genies method: post operationId: createGenie x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/agentic/genies/{id} method: get operationId: getGenie x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/agentic/genies/{id} method: put operationId: updateGenie x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/agentic/genies/{id} method: delete operationId: deleteGenie x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/agentic/genies/{id}/start method: post operationId: startGenie x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/agentic/genies/{id}/stop method: post operationId: stopGenie x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/agentic/genies/{id}/assign_skills method: post operationId: assignSkillsToGenie x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/agentic/genies/{id}/remove_skills method: post operationId: removeSkillsFromGenie x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/agentic/genies/{id}/assign_knowledge_bases method: post operationId: assignKnowledgeBasesToGenie x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/agentic/genies/{id}/remove_knowledge_bases method: post operationId: removeKnowledgeBasesFromGenie x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/agentic/genies/{id}/assign_user_groups method: post operationId: assignUserGroupsToGenie x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/agentic/genies/{id}/remove_user_groups method: post operationId: removeUserGroupsFromGenie x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/agentic/skills method: get operationId: listSkills x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/agentic/skills method: post operationId: createSkill x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/agentic/skills/{id} method: get operationId: getSkill x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/agentic/knowledge_bases method: get operationId: listKnowledgeBases x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/agentic/knowledge_bases method: post operationId: createKnowledgeBase x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/agentic/knowledge_bases/{id} method: get operationId: getKnowledgeBase x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/agentic/knowledge_bases/{id} method: put operationId: updateKnowledgeBase x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/agentic/knowledge_bases/{id} method: delete operationId: deleteKnowledgeBase x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/agentic/knowledge_bases/{id}/data_sources method: get operationId: listKnowledgeBaseDataSources x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/agentic/knowledge_bases/{id}/recipes method: get operationId: listKnowledgeBaseRecipes x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/recipes method: get operationId: listRecipes x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/recipes method: post operationId: createRecipe x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/recipes/{id} method: get operationId: getRecipe x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/recipes/{id} method: put operationId: updateRecipe x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/recipes/{id} method: delete operationId: deleteRecipe x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/recipes/{id}/start method: put operationId: startRecipe x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/recipes/{id}/stop method: put operationId: stopRecipe x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /api/recipes/{id}/copy method: post operationId: copyRecipe x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/recipes/{recipe_id}/versions method: get operationId: listRecipeVersions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/recipes/{recipe_id}/versions/{id} method: get operationId: getRecipeVersion x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/recipes/{recipe_id}/health method: get operationId: getRecipeHealth x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/recipes/{recipe_id}/health method: post operationId: queueRecipeHealthAnalysis x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/data_tables method: get operationId: listDataTables x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/data_tables method: post operationId: createDataTable x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/data_tables/{data_table_id} method: get operationId: getDataTable x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/data_tables/{data_table_id} method: put operationId: updateDataTable x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/data_tables/{data_table_id} method: delete operationId: deleteDataTable x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/data_tables/{data_table_id}/truncate method: post operationId: truncateDataTable x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/topics/{topic_id}/consume method: post operationId: consumeMessages x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/topics/{topic_id}/publish method: post operationId: publishMessage x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/v1/batch/topics/{topic_id}/publish method: post operationId: publishBatchMessages x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/mcp/mcp_servers method: get operationId: listMcpServers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/mcp/mcp_servers method: post operationId: createMcpServer x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/mcp/mcp_servers/{handle} method: get operationId: getMcpServer x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/mcp/mcp_servers/{handle} method: put operationId: updateMcpServer x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/mcp/mcp_servers/{handle} method: delete operationId: deleteMcpServer x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/mcp/mcp_servers/{handle}/token_renew method: post operationId: renewMcpServerToken x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/mcp/mcp_servers/{handle}/assign_tools method: post operationId: assignToolsToMcpServer x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/mcp/mcp_servers/{handle}/assign_user_groups method: post operationId: assignUserGroupsToMcpServer x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/mcp/mcp_servers/{handle}/remove_user_groups method: post operationId: removeUserGroupsFromMcpServer x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/mcp/mcp_servers/{handle}/update_folder method: put operationId: moveMcpServerToFolder x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/mcp/mcp_servers/{mcp_server_handle}/server_policies method: get operationId: getMcpServerPolicies x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/mcp/mcp_servers/{mcp_server_handle}/server_policies method: put operationId: updateMcpServerPolicies x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/mcp/mcp_servers/{mcp_server_handle}/tools method: get operationId: listMcpServerTools x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /api/mcp/mcp_servers/{mcp_server_handle}/tools/{id} method: put operationId: updateMcpServerTool x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/mcp/mcp_servers/{mcp_server_handle}/tools/{id} method: delete operationId: removeMcpServerTool x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /api/mcp/user_groups method: get operationId: listMcpUserGroups x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none