fireblocks Agentic Access
fireblocks exposes 303 API operations that an AI agent could call, of which 160 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, 115 write, 42 physical, and 3 safety-critical.
3 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 |
|---|---|---|---|
| PATCH | /key_link/validation_keys/{keyId} | safety-critical | required |
| PUT | /management/ota | safety-critical | required |
| POST | /management/users/{id}/reset_device | safety-critical | required |
| POST | /exchange_accounts/{exchangeAccountId}/internal_transfer | physical | conditional |
| POST | /fiat_accounts/{accountId}/deposit_from_linked_dda | physical | conditional |
| PUT | /nfts/ownership/tokens | physical | conditional |
| PUT | /nfts/ownership/tokens/spam | physical | conditional |
| PUT | /nfts/ownership/tokens/status | physical | conditional |
| PUT | /nfts/ownership/tokens/{id}/status | physical | conditional |
| POST | /off_exchange/settlements/trader | physical | conditional |
| POST | /payments/payout | physical | conditional |
| POST | /payments/payout/{payoutId}/actions/execute | physical | conditional |
| POST | /payments/workflow_config | physical | conditional |
| DELETE | /payments/workflow_config/{configId} | physical | conditional |
| POST | /payments/workflow_execution | physical | conditional |
| POST | /payments/workflow_execution/{workflowExecutionId}/actions/execute | physical | conditional |
| POST | /policy/draft | physical | conditional |
| POST | /smart-transfers | physical | conditional |
| POST | /smart-transfers/settings/user-groups | physical | conditional |
| PUT | /smart-transfers/{ticketId}/cancel | physical | conditional |
| PUT | /smart-transfers/{ticketId}/expires-in | physical | conditional |
| PUT | /smart-transfers/{ticketId}/external-id | physical | conditional |
| PUT | /smart-transfers/{ticketId}/fulfill | physical | conditional |
| PUT | /smart-transfers/{ticketId}/submit | physical | conditional |
| POST | /smart-transfers/{ticketId}/terms | physical | conditional |
Source
Agentic Access
generated: '2026-07-15'
method: generated
source: openapi/fireblocks-assets-api-openapi.yml, openapi/fireblocks-compliance-api-openapi.yml,
openapi/fireblocks-contracts-api-openapi.yml, openapi/fireblocks-exchange-api-openapi.yml,
openapi/fireblocks-gas-station-api-openapi.yml, openapi/fireblocks-network-api-openapi.yml,
openapi/fireblocks-nfts-api-openapi.yml, openapi/fireblocks-payments-api-openapi.yml, openapi/fireblocks-staking-api-openapi.yml,
openapi/fireblocks-tokenization-api-openapi.yml, openapi/fireblocks-transactions-api-openapi.yml,
openapi/fireblocks-vaults-api-openapi.yml, openapi/fireblocks-wallets-api-openapi.yml, openapi/fireblocks-webhooks-api-openapi.yml,
openapi/fireblocks-workspace-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: 303
by_action_class:
connected: 143
acting: 160
by_consequence:
read: 143
write: 115
physical: 42
safety-critical: 3
human_in_the_loop_required: 3
operations:
- path: /assets
method: get
operationId: listAssets
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /assets
method: post
operationId: registerNewAsset
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/{id}
method: get
operationId: getAsset
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /assets/{id}
method: patch
operationId: updateAssetUserMetadata
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/prices/{id}
method: post
operationId: setAssetPrice
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: /blockchains
method: get
operationId: listBlockchains
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /blockchains/{id}
method: get
operationId: getBlockchain
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /transactions/validate_address/{assetId}/{address}
method: get
operationId: validateAddress
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /estimate_network_fee
method: get
operationId: estimateNetworkFee
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /supported_assets
method: get
operationId: getSupportedAssets
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /screening/travel_rule/transaction/validate
method: post
operationId: validateTravelRuleTransaction
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: /screening/travel_rule/transaction/validate/full
method: post
operationId: validateFullTravelRuleTransaction
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: /screening/travel_rule/vasp/{did}
method: get
operationId: getVASPByDID
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /screening/travel_rule/vasp
method: get
operationId: getVASPs
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /screening/travel_rule/vasp/update
method: put
operationId: updateVasp
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: /screening/travel_rule/post_screening_policy
method: get
operationId: getPostScreeningPolicy
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /screening/travel_rule/screening_policy
method: get
operationId: getScreeningPolicy
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /screening/travel_rule/vault/{vaultAccountId}/vasp
method: get
operationId: getVaspForVault
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /screening/travel_rule/vault/{vaultAccountId}/vasp
method: post
operationId: setVaspForVault
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: /screening/travel_rule/policy_configuration
method: get
operationId: getScreeningConfiguration
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /screening/travel_rule/policy_configuration
method: put
operationId: updateTravelRuleConfig
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: /screening/aml/policy_configuration
method: get
operationId: getAmlScreeningConfiguration
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /screening/aml/policy_configuration
method: put
operationId: updateAmlScreeningConfiguration
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: /screening/aml/screening_policy
method: get
operationId: getAmlScreeningPolicy
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /screening/aml/post_screening_policy
method: get
operationId: getAmlPostScreeningPolicy
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /screening/configurations
method: put
operationId: updateScreeningConfiguration
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: /screening/transaction/{txId}/bypass_screening_policy
method: post
operationId: retryRejectedTransactionBypassScreeningChecks
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: /screening/transaction/{txId}
method: get
operationId: getScreeningFullDetails
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /screening/aml/verdict/manual
method: post
operationId: setAmlVerdict
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: /tap/active_policy
method: get
operationId: getActivePolicy
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tap/draft
method: get
operationId: getDraft
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tap/draft
method: put
operationId: updateDraft
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: /tap/draft
method: post
operationId: publishDraft
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: /tap/publish
method: post
operationId: publishPolicyRules
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: /policy/active_policy
method: get
operationId: getActiveV2Policy
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /policy/draft
method: get
operationId: getV2Draft
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /policy/draft
method: put
operationId: updateV2Draft
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: /policy/draft
method: post
operationId: publishV2Draft
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: /tokenization/templates
method: get
operationId: getContractTemplates
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tokenization/templates
method: post
operationId: uploadContractTemplate
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: /tokenization/templates/{contractTemplateId}
method: get
operationId: getContractTemplateById
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tokenization/templates/{contractTemplateId}
method: delete
operationId: deleteContractTemplateById
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: /tokenization/templates/{contractTemplateId}/constructor
method: get
operationId: getConstructorByContractTemplateId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tokenization/templates/{contractTemplateId}/function
method: get
operationId: getFunctionAbiByContractTemplateId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tokenization/templates/{contractTemplateId}/deploy
method: post
operationId: deployContract
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: /tokenization/contracts
method: get
operationId: getDeployedContracts
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tokenization/contracts/{id}
method: get
operationId: getDeployedContractById
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tokenization/contracts/{assetId}/{contractAddress}
method: get
operationId: getDeployedContractByAddress
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tokenization/contracts/fetch_abi
method: post
operationId: fetchContractAbi
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: /tokenization/contracts/abi
method: post
operationId: addContractABI
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: /contract_interactions/base_asset_id/{baseAssetId}/contract_address/{contractAddress}/functions
method: get
operationId: getDeployedContractAbi
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /contract_interactions/base_asset_id/{baseAssetId}/contract_address/{contractAddress}/functions/read
method: post
operationId: readCallFunction
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: /contract_interactions/base_asset_id/{baseAssetId}/contract_address/{contractAddress}/functions/write
method: post
operationId: writeCallFunction
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: /contract_interactions/base_asset_id/{baseAssetId}/tx_hash/{txHash}/receipt
method: get
operationId: getTransactionReceipt
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /connections
method: get
operationId: get
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /connections/wc
method: post
operationId: 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: /connections/wc/{id}
method: put
operationId: submit
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: /connections/wc/{id}
method: delete
operationId: 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: /exchange_accounts
method: get
operationId: getExchangeAccounts
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /exchange_accounts
method: post
operationId: addExchangeAccount
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_accounts/paged
method: get
operationId: getPagedExchangeAccounts
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /exchange_accounts/{exchangeAccountId}
method: get
operationId: getExchangeAccount
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /exchange_accounts/{exchangeAccountId}/internal_transfer
method: post
operationId: internalTransfer
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: /exchange_accounts/{exchangeAccountId}/convert
method: post
operationId: convertAssets
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_accounts/{exchangeAccountId}/{assetId}
method: get
operationId: getExchangeAccountAsset
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /exchange_accounts/credentials_public_key
method: get
operationId: getExchangeAccountsCredentialsPublicKey
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /fiat_accounts
method: get
operationId: getFiatAccounts
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /fiat_accounts/{accountId}
method: get
operationId: getFiatAccount
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /fiat_accounts/{accountId}/redeem_to_linked_dda
method: post
operationId: redeemFundsToLinkedDDA
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: /fiat_accounts/{accountId}/deposit_from_linked_dda
method: post
operationId: depositFundsFromLinkedDDA
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: /connected_accounts
method: get
operationId: getConnectedAccounts
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /connected_accounts/{accountId}
method: get
operationId: getConnectedAccount
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /connected_accounts/{accountId}/balances
method: get
operationId: getConnectedAccountBalances
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /connected_accounts/{accountId}/rates
method: get
operationId: getConnectedAccountRates
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /connected_accounts/{accountId}/manifest/capabilities/trading/pairs
method: get
operationId: getConnectedAccountTradingPairs
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /trading/providers
method: get
operationId: getTradingProviders
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /trading/quotes
method: post
operationId: createQuote
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: /trading/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: /trading/orders
method: get
operationId: getOrders
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /trading/orders/{orderId}
method: get
operationId: getOrder
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /gas_station
method: get
operationId: getGasStationInfo
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /gas_station/{assetId}
method: get
operationId: getGasStationByAssetId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /gas_station/configuration
method: put
operationId: updateGasStationConfiguration
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: /gas_station/configuration/{assetId}
method: put
operationId: updateGasStationConfigurationByAssetId
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: /network_connections
method: get
operationId: getNetworkConnections
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /network_connections
method: post
operationId: createNetworkConnection
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: /network_connections/{connectionId}/set_routing_policy
method: patch
operationId: setRoutingPolicy
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: /network_connections/{connectionId}/is_third_party_routing/{assetType}
method: get
operationId: checkThirdPartyRouting
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /network_connections/{connectionId}
method: get
operationId: getNetwork
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /network_connections/{connectionId}
method: delete
operationId: deleteNetworkConnection
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: /network_ids
method: get
operationId: getNetworkIds
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /network_ids
method: post
operationId: createNetworkId
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: /network_ids/routing_policy_asset_groups
method: get
operationId: getRoutingPolicyAssetGroups
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /network_ids/search
method: get
operationId: searchNetworkIds
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /network_ids/{networkId}
method: get
operationId: getNetworkId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /network_ids/{networkId}
method: delete
operationId: deleteNetworkId
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: /network_ids/{networkId}/set_routing_policy
method: patch
operationId: setNetworkIdRoutingPolicy
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: /network_ids/{networkId}/set_discoverability
method: patch
operationId: setNetworkIdDiscoverability
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: /network_ids/{networkId}/set_name
method: patch
operationId: setNetworkIdName
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: /off_exchange/add
method: post
operationId: addOffExchange
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: /off_exchange/remove
method: post
operationId: removeOffExchange
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: /off_exchange/settlements/trader
method: post
operationId: settleOffExchangeTrades
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: /off_exchange/settlements/transactions
method: get
operationId: getOffExchangeSettlementTransactions
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /off_exchange/collateral_accounts/{mainExchangeAccountId}
method: get
operationId: getOffExchangeCollateralAccounts
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /nfts/ownership/tokens
method: put
operationId: updateOwnershipTokens
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: /nfts/ownership/tokens
method: get
operationId: getOwnershipTokens
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /nfts/ownership/assets
method: get
operationId: listOwnedTokens
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /nfts/ownership/collections
method: get
operationId: listOwnedCollections
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /nfts/tokens/{id}
method: put
operationId: refreshNFTMetadata
x-agentic-access:
action-class: acting
consequence: write
subject: required
a
# --- truncated at 32 KB (90 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/fireblocks/refs/heads/main/agentic-access/fireblocks-agentic-access.yml