Clio Agentic Access
Clio exposes 286 API operations that an AI agent could call, of which 143 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: 143 read, 133 write, 6 physical, and 4 safety-critical.
4 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.
By consequence
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.
| Method | Path | Consequence | Human-in-loop |
|---|---|---|---|
| POST | /report_presets.json | safety-critical | required |
| PATCH | /report_presets/{id}.json | safety-critical | required |
| DELETE | /report_presets/{id}.json | safety-critical | required |
| POST | /report_presets/{id}/generate_report.json | safety-critical | required |
| POST | /clio_payments/links.json | physical | conditional |
| PATCH | /clio_payments/links/{id}.json | physical | conditional |
| DELETE | /interest_charges/{id}.json | physical | conditional |
| POST | /relationships.json | physical | conditional |
| PATCH | /relationships/{id}.json | physical | conditional |
| DELETE | /relationships/{id}.json | physical | conditional |
Source
Agentic Access
generated: '2026-07-15'
method: generated
source: openapi/clio-openapi.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: 286
by_action_class:
connected: 143
acting: 143
by_consequence:
read: 143
write: 133
physical: 6
safety-critical: 4
human_in_the_loop_required: 4
operations:
- path: /activities.json
method: get
operationId: Activity#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /activities.json
method: post
operationId: Activity#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: /activities/{id}.json
method: get
operationId: Activity#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /activities/{id}.json
method: patch
operationId: Activity#update
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: /activities/{id}.json
method: delete
operationId: Activity#destroy
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: /activity_rates.json
method: get
operationId: ActivityRate#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /activity_rates.json
method: post
operationId: ActivityRate#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: /activity_rates/{id}.json
method: get
operationId: ActivityRate#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /activity_rates/{id}.json
method: patch
operationId: ActivityRate#update
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: /activity_rates/{id}.json
method: delete
operationId: ActivityRate#destroy
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: /activity_descriptions.json
method: get
operationId: ActivityDescription#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /activity_descriptions.json
method: post
operationId: ActivityDescription#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: /activity_descriptions/{id}.json
method: get
operationId: ActivityDescription#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /activity_descriptions/{id}.json
method: patch
operationId: ActivityDescription#update
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: /activity_descriptions/{id}.json
method: delete
operationId: ActivityDescription#destroy
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: /allocations.json
method: get
operationId: Allocation#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /allocations/{id}.json
method: get
operationId: Allocation#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bank_accounts.json
method: get
operationId: BankAccount#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bank_accounts.json
method: post
operationId: BankAccount#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: /bank_accounts/{id}.json
method: get
operationId: BankAccount#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bank_accounts/{id}.json
method: patch
operationId: BankAccount#update
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: /bank_accounts/{id}.json
method: delete
operationId: BankAccount#destroy
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: /bank_transactions.json
method: get
operationId: BankTransaction#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bank_transactions.json
method: post
operationId: BankTransaction#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: /bank_transactions/{id}.json
method: get
operationId: BankTransaction#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bank_transactions/{id}.json
method: patch
operationId: BankTransaction#update
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: /bank_transactions/{id}.json
method: delete
operationId: BankTransaction#destroy
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: /bank_transfers/{id}.json
method: get
operationId: BankTransfer#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bill_themes.json
method: get
operationId: BillTheme#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bill_themes/{id}.json
method: patch
operationId: BillTheme#update
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: /billable_clients.json
method: get
operationId: BillableClient#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /billable_matters/ids.json
method: get
operationId: BillableMatter#ids
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /billable_matters.json
method: get
operationId: BillableMatter#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bills/{id}/preview.json
method: get
operationId: Bill#preview
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bills.json
method: get
operationId: Bill#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bills/{id}.json
method: get
operationId: Bill#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bills/{id}.json
method: patch
operationId: Bill#update
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: /bills/{id}.json
method: delete
operationId: Bill#destroy
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: /calendar_entries.json
method: get
operationId: CalendarEntry#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /calendar_entries.json
method: post
operationId: CalendarEntry#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: /calendar_entries/{id}.json
method: get
operationId: CalendarEntry#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /calendar_entries/{id}.json
method: patch
operationId: CalendarEntry#update
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: /calendar_entries/{id}.json
method: delete
operationId: CalendarEntry#destroy
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: /calendar_entry_event_types.json
method: get
operationId: CalendarEntryEventType#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /calendar_entry_event_types.json
method: post
operationId: CalendarEntryEventType#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: /calendar_entry_event_types/{id}.json
method: get
operationId: CalendarEntryEventType#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /calendar_entry_event_types/{id}.json
method: patch
operationId: CalendarEntryEventType#update
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: /calendar_entry_event_types/{id}.json
method: delete
operationId: CalendarEntryEventType#destroy
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: /calendars.json
method: get
operationId: Calendar#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /calendars.json
method: post
operationId: Calendar#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: /calendars/{id}.json
method: get
operationId: Calendar#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /calendars/{id}.json
method: patch
operationId: Calendar#update
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: /calendars/{id}.json
method: delete
operationId: Calendar#destroy
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: /clio_payments/links.json
method: get
operationId: ClioPaymentsLink#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /clio_payments/links.json
method: post
operationId: ClioPaymentsLink#create
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: /clio_payments/links/{id}.json
method: get
operationId: ClioPaymentsLink#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /clio_payments/links/{id}.json
method: patch
operationId: ClioPaymentsLink#update
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: /clio_payments/payments.json
method: get
operationId: ClioPaymentsPayment#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /clio_payments/payments/{id}.json
method: get
operationId: ClioPaymentsPayment#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /communications.json
method: get
operationId: Communication#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /communications.json
method: post
operationId: Communication#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: /communications/{id}.json
method: get
operationId: Communication#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /communications/{id}.json
method: patch
operationId: Communication#update
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: /communications/{id}.json
method: delete
operationId: Communication#destroy
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: /contacts/{contact_id}/email_addresses.json
method: get
operationId: EmailAddress#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /contacts/{contact_id}/phone_numbers.json
method: get
operationId: PhoneNumber#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /contacts.json
method: get
operationId: Contact#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /contacts.json
method: post
operationId: Contact#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: /contacts/{id}.json
method: get
operationId: Contact#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /contacts/{id}.json
method: patch
operationId: Contact#update
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: /contacts/{id}.json
method: delete
operationId: Contact#destroy
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: /conversation_messages.json
method: get
operationId: ConversationMessage#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /conversation_messages.json
method: post
operationId: ConversationMessage#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: /conversation_messages/{id}.json
method: get
operationId: ConversationMessage#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /conversations.json
method: get
operationId: Conversation#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /conversations/{id}.json
method: get
operationId: Conversation#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /conversations/{id}.json
method: patch
operationId: Conversation#update
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: /court_rules/jurisdictions/{jurisdiction_id}/triggers.json
method: get
operationId: JurisdictionsToTrigger#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /court_rules/jurisdictions/{jurisdiction_id}/triggers/{id}.json
method: get
operationId: JurisdictionsToTrigger#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /court_rules/jurisdictions.json
method: get
operationId: Jurisdiction#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /court_rules/jurisdictions/{id}.json
method: get
operationId: Jurisdiction#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /court_rules/matter_dockets/preview.json
method: get
operationId: MatterDocket#preview
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /court_rules/matter_dockets.json
method: get
operationId: MatterDocket#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /court_rules/matter_dockets.json
method: post
operationId: MatterDocket#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: /court_rules/matter_dockets/{id}.json
method: get
operationId: MatterDocket#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /court_rules/matter_dockets/{id}.json
method: delete
operationId: MatterDocket#destroy
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: /court_rules/service_types.json
method: get
operationId: ServiceType#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /court_rules/service_types/{id}.json
method: get
operationId: ServiceType#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /credit_memos.json
method: get
operationId: CreditMemo#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /credit_memos/{id}.json
method: get
operationId: CreditMemo#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /currencies.json
method: get
operationId: Currency#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /custom_fields.json
method: get
operationId: CustomField#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /custom_fields.json
method: post
operationId: CustomField#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: /custom_fields/{id}.json
method: get
operationId: CustomField#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /custom_fields/{id}.json
method: patch
operationId: CustomField#update
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: /custom_fields/{id}.json
method: delete
operationId: CustomField#destroy
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: /custom_field_sets.json
method: get
operationId: CustomFieldSet#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /custom_field_sets.json
method: post
operationId: CustomFieldSet#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: /custom_field_sets/{id}.json
method: get
operationId: CustomFieldSet#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /custom_field_sets/{id}.json
method: patch
operationId: CustomFieldSet#update
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: /custom_field_sets/{id}.json
method: delete
operationId: CustomFieldSet#destroy
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: /custom_actions.json
method: get
operationId: CustomAction#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /custom_actions.json
method: post
operationId: CustomAction#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: /custom_actions/{id}.json
method: get
operationId: CustomAction#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /custom_actions/{id}.json
method: patch
operationId: CustomAction#update
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: /custom_actions/{id}.json
method: delete
operationId: CustomAction#destroy
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: /damages.json
method: get
operationId: Damage#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /damages.json
method: post
operationId: Damage#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: /damages/{id}.json
method: get
operationId: Damage#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /damages/{id}.json
method: patch
operationId: Damage#update
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: /damages/{id}.json
method: delete
operationId: Damage#destroy
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: /expense_categories.json
method: get
operationId: ExpenseCategory#index
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /expense_categories.json
method: post
operationId: ExpenseCategory#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: /expense_categories/{id}.json
method: get
operationId: ExpenseCategory#show
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /expense_categories/{id}.json
method: patch
operationId: ExpenseCategory#update
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
# --- truncated at 32 KB (80 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/clio/refs/heads/main/agentic-access/clio-agentic-access.yml