generated: '2026-10-14' method: generated source: openapi/if-account-api-openapi.yml, openapi/if-card-api-openapi.yml, openapi/if-card-transaction-api-openapi.yml, openapi/if-client-api-openapi.yml, openapi/if-exchange-api-openapi.yml, openapi/if-generic-transaction-api-openapi.yml, openapi/if-incoming-transfer-api-openapi.yml, openapi/if-open-banking-api-openapi.yml, openapi/if-outgoing-transfer-api-openapi.yml, openapi/if-transaction-account-api-openapi.yml, openapi/if-user-api-openapi.yml description: Recommended x-agentic-access execution contracts, classified heuristically from the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind audience per deployment. See research/curity/agentic-governance/. summary: operations: 94 by_action_class: connected: 51 acting: 43 by_consequence: read: 51 write: 36 physical: 7 human_in_the_loop_required: 0 operations: - path: /accounts method: get operationId: accounts.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /accounts method: post operationId: accounts.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: /accounts/{accountId}/account-statements method: get operationId: accounts.statement.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /accounts/{accountId}/balance-adjustments method: post operationId: accounts.balance-adjustments.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: /accounts/{id} method: get operationId: accounts.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /accounts/{id} method: patch operationId: accounts.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: /accounts/{id}/deposit-information method: get operationId: accounts.deposit-information.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cards method: get operationId: cards.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cards method: post operationId: cards.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: /cards/{cardId}/linked-accounts method: get operationId: cards.linkedAccount.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cards/{cardId}/linked-accounts method: post operationId: cards.linkedAccount.add 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: /cards/{cardId}/linked-accounts/{linkedAccountId} method: delete operationId: cards.linkedAccount.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: /cards/{cardId}/one-time-passwords method: post operationId: cards.otp.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: /cards/{id} method: get operationId: cards.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cards/{id} method: patch operationId: cards.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: /card-transaction-authentications method: get operationId: card-transaction-authentications.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /card-transaction-authentications/{id} method: get operationId: card-transaction-authentications.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /card-transaction-authentications/{id} method: patch operationId: card-transaction-authentications.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: /card-transactions method: get operationId: card-transactions.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /card-transactions/{id} method: get operationId: card-transactions.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /clients method: get operationId: clients.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /clients method: post operationId: clients.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: /clients/{clientId}/relations method: get operationId: client-relations.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /clients/{clientId}/relations method: post operationId: client-relations.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: /clients/{clientId}/relations/{id} method: get operationId: client-relations.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /clients/{clientId}/relations/{id} method: delete operationId: client-relations.delete 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: /clients/{clientId}/relations/{id} method: patch operationId: client-relations.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: /clients/{id} method: get operationId: clients.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /clients/{id} method: patch operationId: clients.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: /exchange-quotes method: post operationId: exchanges.quote.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: /exchange-quotes/{id} method: post operationId: exchanges.quote.refresh 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: /exchange-transactions method: get operationId: exchanges.transaction.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /exchange-transactions method: post operationId: exchanges.transaction.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: /exchange-transactions/{id} method: get operationId: exchanges.transaction.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /exchange-transactions/{id} method: patch operationId: exchanges.transaction.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: /generic-transactions method: get operationId: generic-transactions.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /generic-transactions method: post operationId: generic-transactions.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: /generic-transactions/{id} method: get operationId: generic-transactions.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /generic-transactions/{id} method: patch operationId: generic-transactions.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: /incoming-transfers method: get operationId: incoming-transfers.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /incoming-transfers/{id} method: get operationId: incoming-transfers.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /incoming-transfers/{id} method: patch operationId: incoming-transfers.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: /incoming-transfers/{id}/compliance-check method: get operationId: incoming-transfers.compliance-check.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /incoming-transfers/{id}/compliance-check method: patch operationId: incoming-transfers.compliance-check.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: /provisioned-account-credits method: get operationId: provisioned-account-credit.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /provisioned-account-credits method: post operationId: provisioned-account-credit.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: /provisioned-account-credits/{id} method: get operationId: provisioned-account-credit.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /open-banking/{openBankingCode}/consents method: get operationId: open-banking-consent.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /open-banking/{openBankingCode}/consents/{id} method: get operationId: open-banking-consent.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /open-banking/{openBankingCode}/consents/{id} method: patch operationId: open-banking-consent.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: /accounts/{accountId}/outgoing-transfer-date-metadata/{transferScope}/{transferScheme} method: get operationId: outgoing-transfers.date-metadata.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /beneficiaries method: get operationId: beneficiaries.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /beneficiaries method: post operationId: beneficiaries.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: /beneficiaries/{beneficiaryId}/bank-accounts method: get operationId: beneficiaries.bankAccounts.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /beneficiaries/{beneficiaryId}/bank-accounts method: post operationId: beneficiaries.bankAccounts.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: /beneficiaries/{beneficiaryId}/bank-accounts/{id} method: get operationId: beneficiaries.bankAccounts.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /beneficiaries/{beneficiaryId}/bank-accounts/{id} method: patch operationId: beneficiaries.bankAccounts.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: /beneficiaries/{id} method: get operationId: beneficiaries.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /beneficiaries/{id} method: patch operationId: beneficiaries.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: /beneficiary-bank-account-requirements method: get operationId: beneficiaries.bankAccounts.requirements.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /beneficiary-verifications method: post operationId: beneficiary-verifications.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: /direct-debit-mandates method: get operationId: direct-debit-mandates.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /direct-debit-mandates method: post operationId: direct-debit-mandates.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: /direct-debit-mandates/{id} method: get operationId: direct-debit-mandates.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /direct-debit-mandates/{id} method: patch operationId: direct-debit-mandates.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: /direct-debit-payments method: get operationId: direct-debit-payments.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /direct-debit-payments/{id} method: get operationId: direct-debit-payments.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /direct-debit-payments/{id} method: patch operationId: direct-debit-payments.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: /outgoing-transfers method: get operationId: outgoing-transfers.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /outgoing-transfers method: post operationId: outgoing-transfers.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: /outgoing-transfers/{id} method: get operationId: outgoing-transfers.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /outgoing-transfers/{id} method: patch operationId: outgoing-transfers.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: /outgoing-transfers/{id}/compliance-check method: get operationId: outgoing-transfers.compliance-check.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /outgoing-transfers/{id}/compliance-check method: patch operationId: outgoing-transfers.compliance-check.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: /transaction-accounts/{transactionAccountId}/outgoing-transfer-date-metadata/{transferScope}/{transferScheme} method: get operationId: outgoing-transfers.date-metadata.get_1 x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /transaction-accounts method: get operationId: transaction-accounts.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /transaction-accounts method: post operationId: transaction-accounts.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: /transaction-accounts/{id} method: get operationId: transaction-accounts.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /transaction-accounts/{id} method: patch operationId: transaction-accounts.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: /transaction-accounts/{transactionAccountId}/account-statements method: get operationId: transaction-accounts.statements.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /transaction-accounts/{transactionAccountId}/account-statements method: post operationId: transaction-accounts.statements.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: /transaction-accounts/{transactionAccountId}/account-statements/{accountStatementId} method: get operationId: transaction-accounts.statements.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /transaction-accounts/{transactionAccountId}/account-statements/{accountStatementId}/file method: get operationId: transaction-accounts.statements.file.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users method: get operationId: users.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users method: post operationId: users.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: /users/{email}/invitations method: get operationId: users.list_1 x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/{email}/invitations/{id} method: get operationId: user-invitations.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/{email}/invitations/{id} method: patch operationId: user-invitations.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: /users/{id} method: get operationId: users.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/{id} method: patch operationId: users.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: /users/{userId}/client-relations method: get operationId: user-client-relations.list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/{userId}/client-relations method: post operationId: user-client-relations.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: /users/{userId}/client-relations/{id} method: get operationId: user-client-relations.get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/{userId}/client-relations/{id} method: patch operationId: user-client-relations.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