Boxc · Agentic Access

Boxc Agentic Access

x-agentic-access generated

Boxc exposes 83 API operations that an AI agent could call, of which 49 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: 34 read, 38 write, and 11 physical.

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.

CompanyLogisticsShippingEcommerceCross-BorderFulfillmentCustomsTrackingWebhooks
Operations: 83 Acting: 49 Human-in-the-loop: 0 Method: generated

By consequence

read 34 write 38 physical 11

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 /orders physical conditional
POST /orders/status physical conditional
PUT /orders/{id} physical conditional
DELETE /orders/{id} physical conditional
POST /reshipments physical conditional
PUT /reshipments/{id} physical conditional
DELETE /reshipments/{id} physical conditional
POST /shipments physical conditional
PUT /shipments/{id} physical conditional
DELETE /shipments/{id} physical conditional
PUT /shipments/{id}/process physical conditional

Source

Agentic Access

Raw ↑
generated: '2026-07-18'
method: generated
source: openapi/boxc-openapi-original.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: 83
  by_action_class:
    acting: 49
    connected: 34
  by_consequence:
    write: 38
    read: 34
    physical: 11
  human_in_the_loop_required: 0
operations:
- path: /calculate-duty
  method: post
  operationId: calculateDuty
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - calculate
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /classify
  method: post
  operationId: addClassify
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - classify
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /credentials
  method: get
  operationId: getCredentials
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_credentials
    token:
      max-ttl: 3600
    audit: none
- path: /credentials
  method: post
  operationId: addCredential
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_credentials
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /credentials/{id}
  method: get
  operationId: getCredentialsById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_credentials
    token:
      max-ttl: 3600
    audit: none
- path: /credentials/{id}
  method: put
  operationId: updateCredential
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_credentials
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /credentials/{id}
  method: delete
  operationId: deleteCredential
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_credentials
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /customs/products
  method: get
  operationId: getCustomsProducts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_shipments
    token:
      max-ttl: 3600
    audit: none
- path: /customs/products
  method: post
  operationId: addCustomsProduct
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /customs/products/{id}
  method: get
  operationId: getCustomsProductById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_shipments
    token:
      max-ttl: 3600
    audit: none
- path: /customs/products/{id}
  method: put
  operationId: updateCustomsProduct
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /customs/products/{id}
  method: delete
  operationId: deleteCustomsProduct
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /entry-points
  method: get
  operationId: getEntryPoints
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /entry-points/{id}
  method: get
  operationId: getEntryPointsById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /estimate
  method: get
  operationId: getEstimate
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /inbound
  method: get
  operationId: getInboundList
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_products
    token:
      max-ttl: 3600
    audit: none
- path: /inbound
  method: post
  operationId: addInbound
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_products
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /inbound/{id}
  method: get
  operationId: getInboundById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_products
    token:
      max-ttl: 3600
    audit: none
- path: /inbound/{id}
  method: put
  operationId: updateInbound
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_products
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /inbound/{id}
  method: delete
  operationId: deleteInbound
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_products
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /invoices
  method: get
  operationId: getInvoices
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - billing
    token:
      max-ttl: 3600
    audit: none
- path: /invoices/{id}
  method: get
  operationId: getInvoicesById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - billing
    token:
      max-ttl: 3600
    audit: none
- path: /labels/{id}
  method: get
  operationId: getLabelsById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_shipments
    token:
      max-ttl: 3600
    audit: none
- path: /labels/{id}
  method: patch
  operationId: patchLabel
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /labels
  method: post
  operationId: addLabel
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /labels/bulk
  method: post
  operationId: bulkAddLabel
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /labels/{id}/cancel
  method: put
  operationId: cancelLabel
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /manifests
  method: get
  operationId: getManifests
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_shipments
    token:
      max-ttl: 3600
    audit: none
- path: /manifests
  method: post
  operationId: addManifest
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /manifests/{id}
  method: get
  operationId: getManifestsById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_shipments
    token:
      max-ttl: 3600
    audit: none
- path: /orders
  method: get
  operationId: getOrders
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_orders
    token:
      max-ttl: 3600
    audit: none
- path: /orders
  method: post
  operationId: addOrder
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - write_orders
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /orders/{id}
  method: get
  operationId: getOrdersById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_orders
    token:
      max-ttl: 3600
    audit: none
- path: /orders/{id}
  method: put
  operationId: updateOrder
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - write_orders
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /orders/{id}
  method: delete
  operationId: deleteOrder
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - write_orders
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /orders/status
  method: post
  operationId: updateOrderStatus
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - write_orders
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /overpacks
  method: get
  operationId: getOverpacks
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_shipments
    token:
      max-ttl: 3600
    audit: none
- path: /overpacks
  method: post
  operationId: addOverpack
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /overpacks/{id}
  method: get
  operationId: getOverpacksById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_shipments
    token:
      max-ttl: 3600
    audit: none
- path: /overpacks/{id}
  method: put
  operationId: updateOverpack
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /overpacks/{id}
  method: delete
  operationId: deleteOverpack
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /products
  method: get
  operationId: getProducts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_products
    token:
      max-ttl: 3600
    audit: none
- path: /products
  method: post
  operationId: addProduct
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_products
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /products/{id}
  method: get
  operationId: getProductsById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_products
    token:
      max-ttl: 3600
    audit: none
- path: /products/{id}
  method: put
  operationId: updateProduct
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_products
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /products/{id}
  method: delete
  operationId: deleteProduct
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_products
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /products/{id}/skus
  method: post
  operationId: addProductSku
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_products
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /products/{id}/shop/{shopId}/sku/{sku}
  method: put
  operationId: updateProductSku
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_products
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /products/{id}/shop/{shopId}/sku/{sku}
  method: delete
  operationId: deleteProductSku
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_products
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reshipments
  method: get
  operationId: getReshipments
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - returns
    token:
      max-ttl: 3600
    audit: none
- path: /reshipments
  method: post
  operationId: addReshipment
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - returns
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reshipments/{id}
  method: get
  operationId: getReshipmentsById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - returns
    token:
      max-ttl: 3600
    audit: none
- path: /reshipments/{id}
  method: put
  operationId: updateReshipment
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - returns
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /reshipments/{id}
  method: delete
  operationId: deleteReshipment
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - returns
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /returns
  method: get
  operationId: getReturns
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - returns
    token:
      max-ttl: 3600
    audit: none
- path: /returns/{id}
  method: get
  operationId: getReturnsById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - returns
    token:
      max-ttl: 3600
    audit: none
- path: /returns/{id}
  method: put
  operationId: updateReturn
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - returns
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /returns/{id}
  method: delete
  operationId: deleteReturn
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - returns
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /returns/{id}/messages
  method: post
  operationId: addReturn
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - returns
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /shipments
  method: get
  operationId: getShipments
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_shipments
    token:
      max-ttl: 3600
    audit: none
- path: /shipments
  method: post
  operationId: addShipment
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /shipments/{id}
  method: get
  operationId: getShipmentsById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_shipments
    token:
      max-ttl: 3600
    audit: none
- path: /shipments/{id}
  method: put
  operationId: updateShipment
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /shipments/{id}
  method: delete
  operationId: deleteShipment
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /shipments/{id}/process
  method: put
  operationId: processShipment
  x-agentic-access:
    action-class: acting
    consequence: physical
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 300
      exchange: true
      purpose-required: true
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /shops
  method: get
  operationId: getShops
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_shops
    token:
      max-ttl: 3600
    audit: none
- path: /shops
  method: post
  operationId: addShop
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shops
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /shops/{id}
  method: get
  operationId: getShopsById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_shops
    token:
      max-ttl: 3600
    audit: none
- path: /shops/{id}
  method: put
  operationId: updateShop
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shops
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /shops/{id}
  method: delete
  operationId: deleteShop
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shops
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /track
  method: post
  operationId: addTrackingEvents
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_shipments
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /track/{trackingNumber}
  method: get
  operationId: getTrackingEvents
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /users/me
  method: get
  operationId: getThisUser
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - openid profile email
    token:
      max-ttl: 3600
    audit: none
- path: /users/me
  method: put
  operationId: updateUser
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - openid profile email
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /validate-address
  method: post
  operationId: validateAddress
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - validate
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /warehouses
  method: get
  operationId: getWarehouses
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /warehouses/{id}
  method: get
  operationId: getWarehousesById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /webhooks
  method: get
  operationId: getWebhooks
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_webhooks
    token:
      max-ttl: 3600
    audit: none
- path: /webhooks
  method: post
  operationId: addWebhook
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_webhooks
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /webhooks/{id}
  method: get
  operationId: getWebhooksById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    scope:
    - read_webhooks
    token:
      max-ttl: 3600
    audit: none
- path: /webhooks/{id}
  method: put
  operationId: updateWebhook
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_webhooks
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /webhooks/{id}
  method: delete
  operationId: deleteWebhook
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_webhooks
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /webhooks/{id}/queue
  method: post
  operationId: addWebhookEvent
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    scope:
    - write_webhooks
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required