Revolut Agentic Access
Revolut exposes 237 API operations that an AI agent could call, of which 119 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: 118 read, 70 write, 48 physical, and 1 safety-critical.
1 operation 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 |
|---|---|---|---|
| DELETE | /cards/{card_id} | safety-critical | required |
| PATCH | /api/customers/{customer_id}/payment-methods/{payment_method_id} | physical | conditional |
| DELETE | /api/customers/{customer_id}/payment-methods/{payment_method_id} | physical | conditional |
| POST | /api/orders | physical | conditional |
| PATCH | /api/orders/{order_id} | physical | conditional |
| POST | /api/orders/{order_id}/cancel | physical | conditional |
| POST | /api/orders/{order_id}/capture | physical | conditional |
| POST | /api/orders/{order_id}/increment-authorisation | physical | conditional |
| POST | /api/orders/{order_id}/payment-intents | physical | conditional |
| POST | /api/orders/{order_id}/payments | physical | conditional |
| POST | /api/orders/{order_id}/refund | physical | conditional |
| POST | /api/payment-intents/{payment_intent_id}/cancel | physical | conditional |
| POST | /api/synchronous-webhooks | physical | conditional |
| PATCH | /counterparties/{counterparty_id}/payment-methods/{payment_method_id} | physical | conditional |
| POST | /domestic-payment-consents | physical | conditional |
| POST | /domestic-payments | physical | conditional |
| POST | /domestic-scheduled-payment-consents | physical | conditional |
| POST | /domestic-scheduled-payments | physical | conditional |
| POST | /domestic-standing-order-consents | physical | conditional |
| POST | /domestic-standing-orders | physical | conditional |
| POST | /draft-payments | physical | conditional |
| DELETE | /draft-payments/{DraftPaymentId} | physical | conditional |
| DELETE | /draft-payments/{DraftPaymentId}/transfers/{DraftPaymentTransferId} | physical | conditional |
| POST | /file-payment-consents | physical | conditional |
| POST | /file-payment-consents/{ConsentId}/file | physical | conditional |
Source
Agentic Access
generated: '2026-07-20'
method: generated
source: openapi/revolut-business-openapi.yaml, openapi/revolut-crypto-ramp-openapi.yaml, openapi/revolut-merchant-openapi.yaml,
openapi/revolut-open-banking-openapi.yaml, openapi/revolut-x-openapi.yaml
description: Recommended x-agentic-access execution contracts, classified heuristically from
the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind
audience per deployment. See research/curity/agentic-governance/.
summary:
operations: 237
by_action_class:
acting: 119
connected: 118
by_consequence:
write: 70
read: 118
safety-critical: 1
physical: 48
human_in_the_loop_required: 1
operations:
- path: /accounting-categories
method: post
operationId: createAccountingCategory
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /accounting-categories
method: get
operationId: getAccountingCategories
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /accounting-categories/{accounting_category_id}
method: get
operationId: getAccountingCategory
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /accounting-categories/{accounting_category_id}
method: patch
operationId: updateAccountingCategory
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /accounting-categories/{accounting_category_id}
method: delete
operationId: deleteAccountingCategory
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /account-name-validation
method: post
operationId: validateAccountName
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /accounts
method: get
operationId: getAccounts
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /accounts/{account_id}
method: get
operationId: getAccount
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /accounts/{account_id}/bank-details
method: get
operationId: getAccountDetails
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /card-invitations
method: post
operationId: createCardInvitation
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /card-invitations
method: get
operationId: getCardInvitations
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /card-invitations/{card_invitation_id}
method: get
operationId: getCardInvitation
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /card-invitations/{card_invitation_id}
method: patch
operationId: updateCardInvitation
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /card-invitations/{cardInvitationId}/cancel
method: post
operationId: cancelCardInvitation
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /cards
method: get
operationId: getCards
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /cards
method: post
operationId: createCard
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /cards/{card_id}
method: get
operationId: getCard
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /cards/{card_id}
method: patch
operationId: updateCard
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /cards/{card_id}
method: delete
operationId: deleteCard
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /cards/{card_id}/contacts
method: put
operationId: updateCardContacts
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /cards/{card_id}/references
method: put
operationId: updateCardReferences
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /cards/{card_id}/freeze
method: post
operationId: freezeCard
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /cards/{card_id}/unfreeze
method: post
operationId: unfreezeCard
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /cards/{card_id}/lock
method: post
operationId: lockCard
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /cards/{card_id}/unlock
method: post
operationId: unlockCard
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /cards/{card_id}/sensitive-details
method: get
operationId: getSensitiveCardDetails
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ_SENSITIVE_CARD_DATA
token:
max-ttl: 3600
audit: none
- path: /counterparties
method: get
operationId: getCounterparties
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /counterparty
method: post
operationId: addCounterparty
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- READ
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /counterparties/countries
method: get
operationId: getCounterpartyCountries
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /counterparties/fields
method: get
operationId: getCounterpartyRequirements
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /counterparty/{counterparty_id}
method: get
operationId: getCounterparty
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /counterparty/{counterparty_id}
method: delete
operationId: deleteCounterparty
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- READ
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /counterparties/{counterparty_id}/payment-methods/{payment_method_id}
method: patch
operationId: updateCounterpartyPaymentMethod
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /rate
method: get
operationId: getRate
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /exchange
method: post
operationId: exchangeMoney
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- PAY
- READ
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /exchange-reasons
method: get
operationId: getExchangeReasons
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /expenses
method: get
operationId: getExpenses
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /expenses/{expense_id}
method: get
operationId: getExpense
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /expenses/{expense_id}/receipts/{receipt_id}/content
method: get
operationId: getExpenseReceipt
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /label-groups
method: post
operationId: createLabelGroup
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /label-groups
method: get
operationId: getLabelGroups
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /label-groups/{group_id}
method: get
operationId: getLabelGroup
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /label-groups/{group_id}
method: patch
operationId: updateLabelGroup
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /label-groups/{group_id}
method: delete
operationId: deleteLabelGroup
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /label-groups/{group_id}/labels
method: post
operationId: createLabel
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /label-groups/{group_id}/labels
method: get
operationId: getLabels
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /label-groups/{group_id}/labels/{label_id}
method: patch
operationId: updateLabel
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /label-groups/{group_id}/labels/{label_id}
method: delete
operationId: deleteLabel
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /payment-drafts
method: get
operationId: getPaymentDrafts
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /payment-drafts
method: post
operationId: createPaymentDraft
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- READ
- WRITE
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /payment-drafts/{payment_draft_id}
method: get
operationId: getPaymentDraft
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /payment-drafts/{payment_draft_id}
method: delete
operationId: deletePaymentDraft
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- READ
- WRITE
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /payment-drafts/{payment_draft_id}
method: patch
operationId: updatePaymentDraft
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- READ
- WRITE
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /payment-drafts/{payment_draft_id}/payments
method: post
operationId: addPaymentDraftPayment
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- READ
- WRITE
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /payment-drafts/{payment_draft_id}/payments/{payment_id}
method: patch
operationId: updatePaymentDraftPayment
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- READ
- WRITE
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /payment-drafts/{payment_draft_id}/payments/{payment_id}
method: delete
operationId: deletePaymentDraftPayment
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- READ
- WRITE
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /payout-links
method: post
operationId: createPayoutLink
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- PAY
- WRITE
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /payout-links
method: get
operationId: getPayoutLinks
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /payout-links/{payout_link_id}
method: get
operationId: getPayoutLink
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /payout-links/{payout_link_id}/cancel
method: post
operationId: cancelPayoutLink
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- READ
- WRITE
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /sandbox/transactions/{id}/{action}
method: post
operationId: simulateTransferStateUpdate
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /sandbox/topup
method: post
operationId: simulateTopUp
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tax-rates
method: post
operationId: createTaxRate
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tax-rates
method: get
operationId: getTaxRates
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /tax-rates/{tax_rate_id}
method: get
operationId: getTaxRate
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /tax-rates/{tax_rate_id}
method: patch
operationId: updateTaxRate
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tax-rates/{tax_rate_id}
method: delete
operationId: deleteTaxRate
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /team-members
method: get
operationId: getTeamMembers
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /team-members
method: post
operationId: inviteTeamMember
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /team-members/{team_member_id}
method: delete
operationId: deleteTeamMember
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /roles
method: get
operationId: getRoles
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /transactions
method: get
operationId: getTransactions
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /transaction/{id}
method: get
operationId: getTransaction
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /pay
method: post
operationId: createPayment
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- PAY
- READ
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /pay/indicative-quote
method: post
operationId: getIndicativeQuote
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- PAY
- READ
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /pay/fields
method: post
operationId: getPaymentRequirements
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- PAY
- READ
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /transfer
method: post
operationId: createTransfer
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- PAY
- READ
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /transfer-reasons
method: get
operationId: getTransferReasons
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /webhook
method: get
operationId: getWebhookV1
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /webhook
method: post
operationId: setUpWebhook
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- READ
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /webhook
method: delete
operationId: deleteWebhookV1
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- READ
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /webhooks
method: post
operationId: createWebhook
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /webhooks
method: get
operationId: getWebhooks
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /webhooks/{webhook_id}
method: get
operationId: getWebhook
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /webhooks/{webhook_id}
method: patch
operationId: updateWebhook
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /webhooks/{webhook_id}
method: delete
operationId: deleteWebhook
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /webhooks/{webhook_id}/rotate-signing-secret
method: post
operationId: rotateWebhookSigningSecret
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- WRITE
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /webhooks/{webhook_id}/failed-events
method: get
operationId: getFailedWebhookEvents
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- READ
token:
max-ttl: 3600
audit: none
- path: /config
method: get
operationId: retrieve-configuration
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /quote
method: get
operationId: retrieve-an-order-quote
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /buy
method: get
operationId: retrieve-a-redirect-url
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /orders/{order_id}
method: get
operationId: retrieve-an-order
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /orders
method: get
operationId: retrieve-all-orders
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /webhooks/{webhook_id}
method: get
operationId: retrieve-a-webhook
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /webhooks/{webhook_id}
method: patch
operationId: update-a-webhook
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: /webhooks/{webhook_id}
method: delete
operationId: delete-a-webhook
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: /webhooks
method: get
operationId: retrieve-a-list-of-webhooks
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /webhooks
method: post
operationId: create-a-webhook
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: /api/orders
method: post
operationId: createOrder
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: /api/orders
method: get
operationId: retrieveOrderList
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/orders/{order_id}
method: get
operationId: retrieveOrder
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/orders/{order_id}
method: patch
operationId: updateOrder
x-agentic-access:
action-class: acting
consequence: physical
subject: required
audience: null
token:
max-ttl
# --- truncated at 32 KB (73 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/revolut/refs/heads/main/agentic-access/revolut-agentic-access.yml