generated: '2026-07-15' method: generated source: openapi/spot-administration-api-openapi.yml, openapi/spot-billing-engine-api-openapi.yml, openapi/spot-eco-api-openapi.yml, openapi/spot-elastigroup-api-openapi.yml, openapi/spot-ocean-api-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: 119 by_action_class: acting: 65 connected: 54 by_consequence: write: 63 read: 54 physical: 1 safety-critical: 1 human_in_the_loop_required: 1 operations: - path: /setup/organization method: post operationId: createOrganization 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: /setup/organization method: delete operationId: deleteOrganization 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: /setup/account method: post operationId: createAccount 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: /setup/account method: get operationId: listAccounts x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /setup/account/{accountId} method: put operationId: updateAccount 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: /setup/account/{accountId} method: delete operationId: deleteAccount 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: /setup/user method: post operationId: createUser 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: /setup/organization/{organizationId}/user method: get operationId: listOrganizationUsers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /setup/user/{userId} method: get operationId: getUser x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /setup/user/{userId} method: put operationId: updateUserPermissions 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: /setup/user/{userId} method: delete operationId: deleteUser 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: /setup/user/programmatic method: post operationId: createProgrammaticUser 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: /setup/access/policy method: post operationId: createAccessPolicy 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: /setup/access/policy method: get operationId: listAccessPolicies x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /setup/access/policy/{policyId} method: put operationId: updateAccessPolicy 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: /setup/access/policy/{policyId} method: delete operationId: deleteAccessPolicy 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: /setup/credentials/aws method: post operationId: setAWSCloudCredentials 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: /setup/credentials/azure method: post operationId: setAzureCloudCredentials 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: /setup/credentials/gcp method: post operationId: setGCPCloudCredentials 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: /events/subscription method: post operationId: createSubscription 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: /events/subscription method: get operationId: listSubscriptions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /events/subscription/{subscriptionId} method: get operationId: getSubscription x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /events/subscription/{subscriptionId} method: put operationId: updateSubscription 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: /events/subscription/{subscriptionId} method: delete operationId: deleteSubscription 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: /audit/events method: get operationId: listAuditEvents x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /healthCheck method: get operationId: healthCheck x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /billingEngine/account method: get operationId: listBillingEngineAccounts x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /billingEngine/setup method: post operationId: setupBillingEngine 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: /billingEngine/setup/validation method: post operationId: validateBillingEngineSetup 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: /billingEngine/family method: post operationId: createAccountFamily 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: /billingEngine/family method: get operationId: listAccountFamilies x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /billingEngine/family/{familyId} method: get operationId: getAccountFamily x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /billingEngine/family/{familyId} method: put operationId: updateAccountFamily 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: /billingEngine/family/{familyId} method: delete operationId: deleteAccountFamily 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: /billingEngine/cost method: get operationId: getCostAnalysis x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /costIntelligence/setup method: post operationId: setupCostIntelligence 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: /costIntelligence/setup/validation method: post operationId: validateCostIntelligenceSetup 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: /eco/aws/commitmentPlan method: get operationId: listCommitmentPlansAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /eco/aws/commitmentPlan/{commitmentPlanId} method: get operationId: getCommitmentPlanAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /eco/aws/ri/unusedReservedInstances method: get operationId: getUnusedReservedInstancesAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /eco/aws/ri/savingsPlans method: get operationId: listSavingsPlansAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /eco/aws/ri/reservedInstances method: get operationId: listReservedInstancesAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /eco/aws/analysis/savings method: get operationId: getSavingsAnalysisAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /eco/aws/analysis/commitment method: get operationId: getCommitmentAnalysisAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /eco/azure/commitmentPlan method: get operationId: listCommitmentPlansAzure x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /eco/azure/analysis/savings method: get operationId: getSavingsAnalysisAzure x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /eco/gcp/commitmentPlan method: get operationId: listCommitmentPlansGCP x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /eco/gcp/analysis/savings method: get operationId: getSavingsAnalysisGCP x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /aws/ec2/group method: post operationId: createElastigroupAWS 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: /aws/ec2/group method: get operationId: listElastigroupsAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /aws/ec2/group/{groupId} method: get operationId: getElastigroupAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /aws/ec2/group/{groupId} method: put operationId: updateElastigroupAWS 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: /aws/ec2/group/{groupId} method: delete operationId: deleteElastigroupAWS 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: /aws/ec2/group/{groupId}/status method: get operationId: getElastigroupStatusAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /aws/ec2/group/{groupId}/scale/up method: put operationId: scaleUpElastigroupAWS 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: /aws/ec2/group/{groupId}/scale/down method: put operationId: scaleDownElastigroupAWS 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: /aws/ec2/group/{groupId}/roll method: post operationId: rollElastigroupAWS x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /aws/ec2/group/{groupId}/roll method: get operationId: listRollsAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /aws/ec2/group/{groupId}/roll/{rollId} method: get operationId: getRollStatusAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /aws/ec2/group/{groupId}/roll/{rollId} method: put operationId: stopRollAWS 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: /aws/ec2/group/{groupId}/statefulInstance method: get operationId: listStatefulInstances x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /aws/ec2/group/{groupId}/statefulInstance/{statefulInstanceId} method: put operationId: recycleStatefulInstance 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: /aws/ec2/group/{groupId}/statefulInstance/{statefulInstanceId} method: delete operationId: deallocateStatefulInstance 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: /aws/ec2/group/{groupId}/logs method: get operationId: getElastigroupLogs x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /aws/ec2/group/{groupId}/costs method: get operationId: getElastigroupCosts x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /aws/emr/mrScaler method: post operationId: createEMRCluster 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: /aws/emr/mrScaler method: get operationId: listEMRClusters x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /aws/emr/mrScaler/{mrScalerId} method: get operationId: getEMRCluster x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /aws/emr/mrScaler/{mrScalerId} method: put operationId: updateEMRCluster 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: /aws/emr/mrScaler/{mrScalerId} method: delete operationId: deleteEMRCluster 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: /azure/compute/group method: post operationId: createElastigroupAzure 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: /azure/compute/group method: get operationId: listElastigroupsAzure x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /azure/compute/group/{groupId} method: get operationId: getElastigroupAzure x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /azure/compute/group/{groupId} method: put operationId: updateElastigroupAzure 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: /azure/compute/group/{groupId} method: delete operationId: deleteElastigroupAzure 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: /gcp/gce/group method: post operationId: createElastigroupGCP 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: /gcp/gce/group method: get operationId: listElastigroupsGCP x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /gcp/gce/group/{groupId} method: get operationId: getElastigroupGCP x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /gcp/gce/group/{groupId} method: put operationId: updateElastigroupGCP 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: /gcp/gce/group/{groupId} method: delete operationId: deleteElastigroupGCP 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: /ocean/aws/k8s/cluster method: post operationId: createOceanClusterAWS 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: /ocean/aws/k8s/cluster method: get operationId: listOceanClustersAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/aws/k8s/cluster/{oceanClusterId} method: get operationId: getOceanClusterAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/aws/k8s/cluster/{oceanClusterId} method: put operationId: updateOceanClusterAWS 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: /ocean/aws/k8s/cluster/{oceanClusterId} method: delete operationId: deleteOceanClusterAWS 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: /ocean/aws/k8s/cluster/{oceanClusterId}/roll method: post operationId: initiateRollAWS 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: /ocean/aws/k8s/cluster/{oceanClusterId}/roll method: get operationId: listRollsAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/aws/k8s/cluster/{oceanClusterId}/roll/{rollId} method: get operationId: getRollAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/aws/k8s/cluster/{oceanClusterId}/roll/{rollId} method: put operationId: updateRollAWS 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: /ocean/aws/k8s/launchSpec method: post operationId: createVirtualNodeGroupAWS 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: /ocean/aws/k8s/launchSpec method: get operationId: listVirtualNodeGroupsAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/aws/k8s/launchSpec/{launchSpecId} method: get operationId: getVirtualNodeGroupAWS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/aws/k8s/launchSpec/{launchSpecId} method: put operationId: updateVirtualNodeGroupAWS 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: /ocean/aws/k8s/launchSpec/{launchSpecId} method: delete operationId: deleteVirtualNodeGroupAWS 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: /ocean/aws/ecs/cluster method: post operationId: createOceanClusterECS 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: /ocean/aws/ecs/cluster method: get operationId: listOceanClustersECS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/aws/ecs/cluster/{oceanClusterId} method: get operationId: getOceanClusterECS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/aws/ecs/cluster/{oceanClusterId} method: put operationId: updateOceanClusterECS 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: /ocean/aws/ecs/cluster/{oceanClusterId} method: delete operationId: deleteOceanClusterECS 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: /ocean/gke/cluster method: post operationId: createOceanClusterGKE 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: /ocean/gke/cluster method: get operationId: listOceanClustersGKE x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/gke/cluster/{oceanClusterId} method: get operationId: getOceanClusterGKE x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/gke/cluster/{oceanClusterId} method: put operationId: updateOceanClusterGKE 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: /ocean/gke/cluster/{oceanClusterId} method: delete operationId: deleteOceanClusterGKE 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: /ocean/azure/k8s/cluster method: post operationId: createOceanClusterAKS 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: /ocean/azure/k8s/cluster method: get operationId: listOceanClustersAKS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/azure/k8s/cluster/{oceanClusterId} method: get operationId: getOceanClusterAKS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/azure/k8s/cluster/{oceanClusterId} method: put operationId: updateOceanClusterAKS 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: /ocean/azure/k8s/cluster/{oceanClusterId} method: delete operationId: deleteOceanClusterAKS 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: /ocean/aws/k8s/cluster/{oceanClusterId}/rightSizing/suggestion method: get operationId: getRightSizingSuggestions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/cd/cluster method: post operationId: createOceanCDCluster 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: /ocean/cd/cluster method: get operationId: listOceanCDClusters x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/cd/cluster/{clusterId} method: get operationId: getOceanCDCluster x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/cd/cluster/{clusterId} method: put operationId: updateOceanCDCluster 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: /ocean/cd/cluster/{clusterId} method: delete operationId: deleteOceanCDCluster 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: /ocean/spark/cluster method: post operationId: createOceanSparkCluster 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: /ocean/spark/cluster method: get operationId: listOceanSparkClusters x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/spark/cluster/{oceanSparkClusterId} method: get operationId: getOceanSparkCluster x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ocean/spark/cluster/{oceanSparkClusterId} method: delete operationId: deleteOceanSparkCluster 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