Cosmo Tech · Agentic Access

Cosmo Tech Agentic Access

x-agentic-access generated

Cosmo Tech exposes 101 API operations that an AI agent could call, of which 56 are state-changing ‘acting’ operations. This is a recommended x-agentic-access execution contract — the scope, audience, consequence tier, short-lived token constraints, and escalation each action should carry before it is handed to an autonomous agent.

By consequence: 45 read, 40 write, and 16 safety-critical.

16 operations are classed safety-critical and should require human-in-the-loop approval at runtime.

Contracts are classified heuristically from the provider’s OpenAPI and refresh on every APIs.io network build; audience is bound per deployment. The model follows Curity’s Access Intelligence (apidays Munich 2026). Browse every provider’s agent contracts at agentic-access.apis.io.

CompanySimulationDigital TwinArtificial IntelligenceSupply ChainPredictive AnalyticsIndustrial
Operations: 101 Acting: 56 Human-in-the-loop: 16 Method: generated

By consequence

read 45 write 40 safety-critical 16

Highest-consequence actions

The physical and safety-critical operations an agent could invoke — the ones that most warrant scoped tokens, tight TTLs, and escalation. Full per-operation contracts are in the source below.

MethodPathConsequenceHuman-in-loop
POST /organizations/{organization_id}/security/access safety-critical required
PATCH /organizations/{organization_id}/security/access/{identity_id} safety-critical required
DELETE /organizations/{organization_id}/security/access/{identity_id} safety-critical required
POST /organizations/{organization_id}/solutions/{solution_id}/security/access safety-critical required
PATCH /organizations/{organization_id}/solutions/{solution_id}/security/access/{identity_id} safety-critical required
DELETE /organizations/{organization_id}/solutions/{solution_id}/security/access/{identity_id} safety-critical required
POST /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/security/access safety-critical required
PATCH /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/security/access/{identity_id} safety-critical required
DELETE /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/security/access/{identity_id} safety-critical required
POST /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/security/access safety-critical required
PATCH /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/security/access/{identity_id} safety-critical required
DELETE /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/security/access/{identity_id} safety-critical required
POST /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/stop safety-critical required
POST /organizations/{organization_id}/workspaces/{workspace_id}/security/access safety-critical required
PATCH /organizations/{organization_id}/workspaces/{workspace_id}/security/access/{identity_id} safety-critical required
DELETE /organizations/{organization_id}/workspaces/{workspace_id}/security/access/{identity_id} safety-critical required

Source

Agentic Access

Raw ↑
generated: '2026-07-18'
method: generated
source: openapi/cosmo-tech-dataset-openapi-original.yaml, openapi/cosmo-tech-meta-openapi-original.yaml,
  openapi/cosmo-tech-organization-openapi-original.yaml, openapi/cosmo-tech-run-openapi-original.yaml,
  openapi/cosmo-tech-runner-openapi-original.yaml, openapi/cosmo-tech-solution-openapi-original.yaml,
  openapi/cosmo-tech-workspace-openapi-original.yaml
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: 101
  by_action_class:
    acting: 56
    connected: 45
  by_consequence:
    write: 40
    read: 45
    safety-critical: 16
  human_in_the_loop_required: 16
operations:
- path: /organizations/{organization_id}/workspaces/{workspace_id}/datasets
  method: post
  operationId: createDataset
  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: /organizations/{organization_id}/workspaces/{workspace_id}/datasets
  method: get
  operationId: listDatasets
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/search
  method: post
  operationId: searchDatasets
  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: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}
  method: get
  operationId: getDataset
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}
  method: patch
  operationId: updateDataset
  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: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}
  method: delete
  operationId: deleteDataset
  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: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/security/default
  method: patch
  operationId: updateDatasetDefaultSecurity
  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: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/security/access
  method: post
  operationId: createDatasetAccessControl
  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: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/security/access/{identity_id}
  method: get
  operationId: getDatasetAccessControl
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/security/access/{identity_id}
  method: patch
  operationId: updateDatasetAccessControl
  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: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/security/access/{identity_id}
  method: delete
  operationId: deleteDatasetAccessControl
  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: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/security/users
  method: get
  operationId: listDatasetSecurityUsers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/parts
  method: post
  operationId: createDatasetPart
  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: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/parts
  method: get
  operationId: listDatasetParts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/parts/{dataset_part_id}
  method: get
  operationId: getDatasetPart
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/parts/{dataset_part_id}
  method: put
  operationId: replaceDatasetPart
  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: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/parts/{dataset_part_id}
  method: patch
  operationId: updateDatasetPart
  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: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/parts/{dataset_part_id}
  method: delete
  operationId: deleteDatasetPart
  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: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/parts/{dataset_part_id}/query
  method: get
  operationId: queryData
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/parts/{dataset_part_id}/download
  method: get
  operationId: downloadDatasetPart
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/datasets/{dataset_id}/parts/search
  method: post
  operationId: searchDatasetParts
  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: /about
  method: get
  operationId: about
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations
  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: /organizations
  method: get
  operationId: listOrganizations
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}
  method: get
  operationId: getOrganization
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}
  method: patch
  operationId: updateOrganization
  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: /organizations/{organization_id}
  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: /organizations/permissions
  method: get
  operationId: listPermissions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/permissions/{role}
  method: get
  operationId: getOrganizationPermissions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/security
  method: get
  operationId: getOrganizationSecurity
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/security/default
  method: patch
  operationId: updateOrganizationDefaultSecurity
  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: /organizations/{organization_id}/security/access
  method: post
  operationId: createOrganizationAccessControl
  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: /organizations/{organization_id}/security/access/{identity_id}
  method: get
  operationId: getOrganizationAccessControl
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/security/access/{identity_id}
  method: patch
  operationId: updateOrganizationAccessControl
  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: /organizations/{organization_id}/security/access/{identity_id}
  method: delete
  operationId: deleteOrganizationAccessControl
  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: /organizations/{organization_id}/security/users
  method: get
  operationId: listOrganizationSecurityUsers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/runs/{run_id}
  method: get
  operationId: getRun
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/runs/{run_id}
  method: delete
  operationId: deleteRun
  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: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/runs/{run_id}/status
  method: get
  operationId: getRunStatus
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/runs/{run_id}/logs
  method: get
  operationId: getRunLogs
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/runs
  method: get
  operationId: listRuns
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/runners
  method: post
  operationId: createRunner
  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: /organizations/{organization_id}/workspaces/{workspace_id}/runners
  method: get
  operationId: listRunners
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}
  method: get
  operationId: getRunner
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}
  method: patch
  operationId: updateRunner
  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: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}
  method: delete
  operationId: deleteRunner
  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: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/start
  method: post
  operationId: startRun
  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: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/stop
  method: post
  operationId: stopRun
  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: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/permissions/{role}
  method: get
  operationId: listRunnerPermissions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/security
  method: get
  operationId: getRunnerSecurity
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/security/default
  method: patch
  operationId: updateRunnerDefaultSecurity
  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: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/security/access
  method: post
  operationId: createRunnerAccessControl
  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: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/security/access/{identity_id}
  method: get
  operationId: getRunnerAccessControl
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/security/access/{identity_id}
  method: patch
  operationId: updateRunnerAccessControl
  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: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/security/access/{identity_id}
  method: delete
  operationId: deleteRunnerAccessControl
  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: /organizations/{organization_id}/workspaces/{workspace_id}/runners/{runner_id}/security/users
  method: get
  operationId: listRunnerSecurityUsers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/solutions
  method: post
  operationId: createSolution
  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: /organizations/{organization_id}/solutions
  method: get
  operationId: listSolutions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/solutions/{solution_id}
  method: get
  operationId: getSolution
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/solutions/{solution_id}
  method: patch
  operationId: updateSolution
  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: /organizations/{organization_id}/solutions/{solution_id}
  method: delete
  operationId: deleteSolution
  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: /organizations/{organization_id}/solutions/{solution_id}/parameters
  method: get
  operationId: listSolutionParameters
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/solutions/{solution_id}/parameters
  method: post
  operationId: createSolutionParameter
  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: /organizations/{organization_id}/solutions/{solution_id}/parameters/{parameter_id}
  method: get
  operationId: getSolutionParameter
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/solutions/{solution_id}/parameters/{parameter_id}
  method: patch
  operationId: updateSolutionParameter
  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: /organizations/{organization_id}/solutions/{solution_id}/parameters/{parameter_id}
  method: delete
  operationId: deleteSolutionParameter
  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: /organizations/{organization_id}/solutions/{solution_id}/parameterGroups
  method: post
  operationId: createSolutionParameterGroup
  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: /organizations/{organization_id}/solutions/{solution_id}/parameterGroups
  method: get
  operationId: listSolutionParameterGroups
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/solutions/{solution_id}/parameterGroups/{parameter_group_id}
  method: patch
  operationId: updateSolutionParameterGroup
  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: /organizations/{organization_id}/solutions/{solution_id}/parameterGroups/{parameter_group_id}
  method: get
  operationId: getSolutionParameterGroup
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/solutions/{solution_id}/parameterGroups/{parameter_group_id}
  method: delete
  operationId: deleteSolutionParameterGroup
  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: /organizations/{organization_id}/solutions/{solution_id}/runTemplates
  method: get
  operationId: listRunTemplates
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/solutions/{solution_id}/runTemplates
  method: post
  operationId: createSolutionRunTemplate
  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: /organizations/{organization_id}/solutions/{solution_id}/runTemplates/{run_template_id}
  method: get
  operationId: getRunTemplate
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/solutions/{solution_id}/runTemplates/{run_template_id}
  method: patch
  operationId: updateSolutionRunTemplate
  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: /organizations/{organization_id}/solutions/{solution_id}/runTemplates/{run_template_id}
  method: delete
  operationId: deleteSolutionRunTemplate
  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: /organizations/{organization_id}/solutions/{solution_id}/security
  method: get
  operationId: getSolutionSecurity
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/solutions/{solution_id}/security/default
  method: patch
  operationId: updateSolutionDefaultSecurity
  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: /organizations/{organization_id}/solutions/{solution_id}/security/users
  method: get
  operationId: listSolutionSecurityUsers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/solutions/{solution_id}/security/access
  method: post
  operationId: createSolutionAccessControl
  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: /organizations/{organization_id}/solutions/{solution_id}/security/access/{identity_id}
  method: get
  operationId: getSolutionAccessControl
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/solutions/{solution_id}/security/access/{identity_id}
  method: patch
  operationId: updateSolutionAccessControl
  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: /organizations/{organization_id}/solutions/{solution_id}/security/access/{identity_id}
  method: delete
  operationId: deleteSolutionAccessControl
  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: /organizations/{organization_id}/workspaces
  method: post
  operationId: createWorkspace
  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: /organizations/{organization_id}/workspaces
  method: get
  operationId: listWorkspaces
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}
  method: get
  operationId: getWorkspace
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}
  method: patch
  operationId: updateWorkspace
  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: /organizations/{organization_id}/workspaces/{workspace_id}
  method: delete
  operationId: deleteWorkspace
  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: /organizations/{organization_id}/workspaces/{workspace_id}/files
  method: post
  operationId: createWorkspaceFile
  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: /organizations/{organization_id}/workspaces/{workspace_id}/files
  method: get
  operationId: listWorkspaceFiles
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /organizations/{organization_id}/workspaces/{workspace_id}/files
  method: delete
  operationId: deleteWorkspaceFiles
  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: /organizations/{organization_id}/workspaces/{workspace_id}/files/download
  method: get
  operationId: getWorkspaceFile
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl:

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cosmo-tech/refs/heads/main/agentic-access/cosmo-tech-agentic-access.yml