ServiceChannel · Agentic Access

ServiceChannel Agentic Access

x-agentic-access generated

ServiceChannel exposes 749 API operations that an AI agent could call, of which 368 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: 381 read, 222 write, 137 physical, and 9 safety-critical.

9 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.

CompanyServicesFacilities ManagementWork OrdersField ServiceMaintenanceAsset ManagementService ProvidersInvoicing
Operations: 749 Acting: 368 Human-in-the-loop: 9 Method: generated

By consequence

read 381 write 222 physical 137 safety-critical 9

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 /api/notifications/resetnotify safety-critical required
PUT /checklists/{checkListResponseId}/CheckListResponse safety-critical required
POST /doNotDispatch/addProvider/{providerId} safety-critical required
DELETE /doNotDispatch/removeProvider/{providerId} safety-critical required
POST /notifications/resetnotify safety-critical required
POST /providers/current/subscribers/{subscriberId}/servicerequest/overrides/props safety-critical required
POST /providers/updateDispatchSetting safety-critical required
POST /subscribers/current/servicerequest/overrides/props safety-critical required
DELETE /users/{id} safety-critical required
POST /AssetTypes/GetSubscriberAssetTypeCategories physical conditional
POST /GlCodes/CreateGlCode physical conditional
DELETE /GlCodes/DeleteGlCode physical conditional
PUT /GlCodes/UpdateGlCode physical conditional
POST /ScConnector/CheckInOut physical conditional
POST /ScConnector/SubContractorWorkorderCreated physical conditional
POST /ScConnector/SubContractorWorkorderUpdated physical conditional
POST /ScConnector/UpdateConnectorWorkOrderStatusAfterReassign physical conditional
POST /ScConnector/WorkorderCreated physical conditional
POST /ScConnector/WorkorderUpdated physical conditional
POST /SupplyClick/ProcessItems physical conditional
POST /aiagents/SendImage physical conditional
POST /aiagents/SendMessage physical conditional
POST /api/notifications/v2/workorders/ivr/resend physical conditional
POST /api/notifications/v2/workorders/notes/resend physical conditional
POST /api/notifications/v2/workorders/resend physical conditional

Source

Agentic Access

Raw ↑
generated: '2026-07-21'
method: generated
source: openapi/servicechannel-fixxbook-openapi-original.json, openapi/servicechannel-service-automation-openapi-original.json
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: 749
  by_action_class:
    connected: 381
    acting: 368
  by_consequence:
    read: 381
    safety-critical: 9
    write: 222
    physical: 137
  human_in_the_loop_required: 9
operations:
- path: /Clients/GetProvidersInfo
  method: get
  operationId: Client_GetProvidersInfo
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /doNotDispatch/addProvider/{providerId}
  method: post
  operationId: DoNotDispatch_AddProvider
  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: /doNotDispatch/removeProvider/{providerId}
  method: delete
  operationId: DoNotDispatch_RemoveProvider
  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: /doNotDispatch/getProviders
  method: get
  operationId: DoNotDispatch_GetProviders
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /invitation
  method: post
  operationId: Invitation_Create
  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: /providers/ProviderData
  method: put
  operationId: Providers_ProviderData
  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: /providers/subscribers
  method: get
  operationId: Providers_Subscribers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /locations/{locationId}/businesshours
  method: get
  operationId: GETv3_locations_{locationId}_businesshours
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /locations/{locationId}/businesshours
  method: post
  operationId: POSTv3_locations_{locationId}_businesshours
  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: /locations/{locationId}/holidays
  method: get
  operationId: GETv3_locations_{locationId}_holidays
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /locations/{locationId}/holidays
  method: post
  operationId: POSTv3_locations_{locationId}_holidays
  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: /locations/{locationId}/holidays
  method: delete
  operationId: DELETEv3_locations_{locationId}_holidays?holidayName={holidayName}
  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: /aiagents/locations/{locationId}/InitConversation
  method: get
  operationId: GETv3_aiagents_locations_{locationId}_InitConversation?setupId={setupId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /aiagents/SendMessage
  method: post
  operationId: POSTv3_aiagents_SendMessage?threadId={threadId}&message={message}
  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: /aiagents/SendImage
  method: post
  operationId: POSTv3_aiagents_SendImage?threadId={threadId}&setupId={setupId}
  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: /aiagents/locations/{locationId}/ProcessMessageStream
  method: get
  operationId: GETv3_aiagents_locations_{locationId}_ProcessMessageStream?setupId={setupId}&threadId={threadId}&assistantId={assistantId}&enableMetrics={enableMetrics}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /aiagents/DeleteConversation
  method: delete
  operationId: DELETEv3_aiagents_DeleteConversation?threadId={threadId}
  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: /aiagents/CreateConversation
  method: post
  operationId: POSTv3_aiagents_CreateConversation
  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: /aiagents/ProblemDescription
  method: get
  operationId: GETv3_aiagents_ProblemDescription?threadId={threadId}&assistantId={assistantId}&enableMetrics={enableMetrics}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /aiagents/CreateFeedbackSession
  method: post
  operationId: POSTv3_aiagents_CreateFeedbackSession
  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: /aiagents/AddFeedback
  method: post
  operationId: POSTv3_aiagents_AddFeedback
  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: /announcements
  method: get
  operationId: GETv3_announcements
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /announcements/{messageId}
  method: put
  operationId: PUTv3_announcements_{messageId}
  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: /ApplicationAccess
  method: get
  operationId: GETv3_ApplicationAccess
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/{assetId}
  method: get
  operationId: GETv3_assets_{assetId}?locationId={locationId}&storeId={storeId}&tagId={tagId}&trackingNumber={trackingNumber}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/AssociateAssetCode
  method: post
  operationId: POSTv3_assets_AssociateAssetCode
  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: /assets/searchassets
  method: post
  operationId: POSTv3_assets_searchassets
  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: /assets/assetsforreplacement
  method: post
  operationId: POSTv3_assets_assetsforreplacement
  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: /assets/assetcomponents
  method: post
  operationId: POSTv3_assets_assetcomponents
  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: /assets/getfilteredassets
  method: post
  operationId: POSTv3_assets_getfilteredassets
  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: /assets/getfilteredassetsV1
  method: post
  operationId: POSTv3_assets_getfilteredassetsV1?providerId={providerId}
  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: /assets/getfilteredassetleaks
  method: post
  operationId: POSTv3_assets_getfilteredassetleaks
  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: /assets/getwoassettracking
  method: post
  operationId: POSTv3_assets_getwoassettracking?woId={woId}
  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: /assets/WoAssetTags
  method: get
  operationId: GETv3_assets_WoAssetTags?recIds[0]={recIds[0]}&recIds[1]={recIds[1]}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/locations/{locationId}
  method: get
  operationId: GETv3_assets_locations_{locationId}?trade={trade}&tradeId={tradeId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/locationAssetsTree
  method: post
  operationId: POSTv3_assets_locationAssetsTree?locationId={locationId}&trade={trade}
  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: /assets/getassetwohistory
  method: post
  operationId: POSTv3_assets_getassetwohistory?workOrdersCount={workOrdersCount}
  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: /assets
  method: put
  operationId: PUTv3_assets
  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: /assets
  method: post
  operationId: POSTv3_assets
  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: /assets/UpdateAssetTypeInAsset
  method: put
  operationId: PUTv3_assets_UpdateAssetTypeInAsset
  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: /assets/AddUpdateAsset
  method: post
  operationId: POSTv3_assets_AddUpdateAsset
  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: /assets/Activation
  method: post
  operationId: POSTv3_assets_Activation
  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: /assets/workorders/{workorderId}/attach
  method: put
  operationId: PUTv3_assets_workorders_{workorderId}_attach
  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: /assets/workorders/attachassets
  method: put
  operationId: PUTv3_assets_workorders_attachassets
  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: /assets/workorders/setupassets
  method: put
  operationId: PUTv3_assets_workorders_setupassets
  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: /assets/workrequest/setup
  method: put
  operationId: PUTv3_assets_workrequest_setup
  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: /assets/workrequest/remove
  method: post
  operationId: POSTv3_assets_workrequest_remove
  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: /assets/workrequest/{workRequestId}
  method: get
  operationId: GETv3_assets_workrequest_{workRequestId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/workorders/removeassets
  method: post
  operationId: POSTv3_assets_workorders_removeassets
  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: /assets/workorders/{workorderId}/detach
  method: put
  operationId: PUTv3_assets_workorders_{workorderId}_detach
  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: /assets/{assetid}/assetwohistory
  method: get
  operationId: GETv3_assets_{assetid}_assetwohistory
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/{assetid}/assetTransferProvider
  method: get
  operationId: GETv3_assets_{assetid}_assetTransferProvider
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/TransferSettings/{subscriberId}
  method: get
  operationId: GETv3_assets_TransferSettings_{subscriberId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/Brands
  method: get
  operationId: GETv3_assets_Brands
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/v2/Brands
  method: get
  operationId: GETv3_assets_v2_Brands?keyword={keyword}&startIndex={startIndex}&pageSize={pageSize}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/v3/Brands
  method: get
  operationId: GETv3_assets_v3_Brands?assetTypeId={assetTypeId}&keyword={keyword}&startIndex={startIndex}&pageSize={pageSize}&assetTypeBrandsOnly={assetTypeBrandsOnly}&subscriberId={subscriberId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/{brandName}/AddBrand
  method: post
  operationId: POSTv3_assets_{brandName}_AddBrand
  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: /assets/assetrepairstatus
  method: get
  operationId: GETv3_assets_assetrepairstatus?assetId={assetId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/assetstatushistory
  method: get
  operationId: GETv3_assets_assetstatushistory?assetId={assetId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/updateassetrepairstatus
  method: put
  operationId: PUTv3_assets_updateassetrepairstatus
  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: /assets/RecordScannedAsset
  method: post
  operationId: POSTv3_assets_RecordScannedAsset
  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: /assets/HasAssetBeenValidated
  method: post
  operationId: POSTv3_assets_HasAssetBeenValidated
  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: /assets/GetAssetValidationInformation
  method: post
  operationId: POSTv3_assets_GetAssetValidationInformation
  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: /assets/{subscriberId}/ValidationRules
  method: get
  operationId: GETv3_assets_{subscriberId}_ValidationRules
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/ValidationRulesByWOId
  method: get
  operationId: GETv3_assets_ValidationRulesByWOId?trackingNumber={trackingNumber}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/UnableToValidateReasons
  method: get
  operationId: GETv3_assets_UnableToValidateReasons
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/UnableToValidateReasons
  method: post
  operationId: POSTv3_assets_UnableToValidateReasons
  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: /assets/UnableToScanReasons
  method: get
  operationId: GETv3_assets_UnableToScanReasons?subscriberId={subscriberId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/UnableToScanReasons
  method: post
  operationId: POSTv3_assets_UnableToScanReasons
  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: /assets/UnableToAddReasons
  method: get
  operationId: GETv3_assets_UnableToAddReasons
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/UnableToAddReasons
  method: post
  operationId: POSTv3_assets_UnableToAddReasons
  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: /assets/UnableToScanReasonsNotAttachedAsset
  method: get
  operationId: GETv3_assets_UnableToScanReasonsNotAttachedAsset
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/UnableToValidateReasonsNotAttachedAsset
  method: get
  operationId: GETv3_assets_UnableToValidateReasonsNotAttachedAsset
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/ValidationRulesForMultipleSubscribers
  method: post
  operationId: POSTv3_assets_ValidationRulesForMultipleSubscribers
  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: /assets/GetAssetValidationHistoryByTrackingNumber
  method: post
  operationId: POSTv3_assets_GetAssetValidationHistoryByTrackingNumber
  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: /assets/updateAssetLocation
  method: put
  operationId: PUTv3_assets_updateAssetLocation?assetId={assetId}&locationId={locationId}
  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: /assets/{trackingNumber}/IsValidationRequired
  method: get
  operationId: GETv3_assets_{trackingNumber}_IsValidationRequired
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/getPrimaryAttachmentsForAssetList
  method: post
  operationId: POSTv3_assets_getPrimaryAttachmentsForAssetList
  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: /assets/getPrimaryAttachmentsForAssetList_v1
  method: post
  operationId: POSTv3_assets_getPrimaryAttachmentsForAssetList_v1
  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: /assets/{tradeId}/getAssetTypeGroupsByTradeId
  method: get
  operationId: GETv3_assets_{tradeId}_getAssetTypeGroupsByTradeId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/GetAssetTypeGroupsByAssetsIds
  method: post
  operationId: POSTv3_assets_GetAssetTypeGroupsByAssetsIds
  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: /assets/searchassetsByGroupId
  method: post
  operationId: POSTv3_assets_searchassetsByGroupId
  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: /assets/CanUserEditAsset
  method: get
  operationId: GETv3_assets_CanUserEditAsset?assetTypeId={assetTypeId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/CanCreateAsset/{assetTypeId}
  method: get
  operationId: GETv3_assets_CanCreateAsset_{assetTypeId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/CanProviderCreateAssetForTrade/{tradeId}
  method: get
  operationId: GETv3_assets_CanProviderCreateAssetForTrade_{tradeId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/AssetMeterReadings/{assetId}
  method: get
  operationId: GETv3_assets_AssetMeterReadings_{assetId}?lastMeterReadingValuesOnly={lastMeterReadingValuesOnly}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/AssetMeterReading
  method: put
  operationId: PUTv3_assets_AssetMeterReading
  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: /assets/AssetMeterReading
  method: post
  operationId: POSTv3_assets_AssetMeterReading
  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: /assets/CreateAssetMeterReadingsBulk
  method: post
  operationId: POSTv3_assets_CreateAssetMeterReadingsBulk
  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: /assets/UpdateAssetMeterReadingsBulk
  method: put
  operationId: PUTv3_assets_UpdateAssetMeterReadingsBulk
  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: /assets/AssetMeter
  method: post
  operationId: POSTv3_assets_AssetMeter
  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: /assets/AssetMeters
  method: get
  operationId: GETv3_assets_AssetMeters?assetMeterId={assetMeterId}&assetId={assetId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/Manufacturer
  method: get
  operationId: GETv3_assets_Manufacturer?manufacturerId={manufacturerId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/WorkorderAreas/{subscriberId}
  method: get
  operationId: GETv3_assets_WorkorderAreas_{subscriberId}
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /assets/GetValidationStatusesForMultipleWorkOrders
  method: post
  operationId: POSTv3_assets_GetValidationStatusesForMultipleWorkOrders?includeDeactivated={includeDeactivated}
  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: /assets/updateAssetStatus
  method: put
  operationId: PUTv3_assets_updateAssetStatus
  x-agentic-access:
    action-class: acting
    consequence: write

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