Dinari · Agentic Access

Dinari Agentic Access

x-agentic-access generated

Dinari exposes 61 API operations that an AI agent could call, of which 21 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: 40 read, 10 write, and 11 physical.

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.

CompanyTokenized SecuritiesStocksETFsBrokerageMarket DataBlockchainStablecoinFintechKYCOrdersWallets
Operations: 61 Acting: 21 Human-in-the-loop: 0 Method: generated

By consequence

read 40 write 10 physical 11

Highest-consequence actions

The physical and safety-critical operations an agent could invoke — the ones that most warrant scoped tokens, tight TTLs, and escalation. Full per-operation contracts are in the source below.

MethodPathConsequenceHuman-in-loop
POST /api/v2/accounts/{account_id}/order_requests/eip155 physical conditional
POST /api/v2/accounts/{account_id}/order_requests/eip155/permit physical conditional
POST /api/v2/accounts/{account_id}/order_requests/eip155/permit_transaction physical conditional
POST /api/v2/accounts/{account_id}/order_requests/limit_buy physical conditional
POST /api/v2/accounts/{account_id}/order_requests/limit_sell physical conditional
POST /api/v2/accounts/{account_id}/order_requests/market_buy physical conditional
POST /api/v2/accounts/{account_id}/order_requests/market_sell physical conditional
POST /api/v2/accounts/{account_id}/orders/cancel physical conditional
POST /api/v2/accounts/{account_id}/orders/{order_id}/cancel physical conditional
POST /api/v2/accounts/{account_id}/token_transfers physical conditional
POST /api/v2/accounts/{account_id}/withdrawal_requests physical conditional

Source

Agentic Access

Raw ↑
generated: '2026-07-18'
method: generated
source: openapi/dinari-openapi-original.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: 61
  by_action_class:
    connected: 40
    acting: 21
  by_consequence:
    read: 40
    write: 10
    physical: 11
  human_in_the_loop_required: 0
operations:
- path: /api/v2/market_data/alloys/
  method: get
  operationId: getAlloys
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/market_data/alloys/{alloy_id}/current_price
  method: get
  operationId: getAlloyCurrentPrice
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/market_data/alloys/{alloy_id}/historical_prices/
  method: get
  operationId: getAlloyPriceChart
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/market_data/stocks/
  method: get
  operationId: getStocks
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/market_data/stocks/{stock_id}/current_price
  method: get
  operationId: getStockCurrentPrice
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/market_data/stocks/{stock_id}/current_quote
  method: get
  operationId: getStockCurrentQuotesRouteV1
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/market_data/stocks/{stock_id}/historical_prices/
  method: get
  operationId: getStockPriceChart
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/market_data/stocks/splits
  method: get
  operationId: getStockSplits
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/market_data/stocks/{stock_id}/splits
  method: get
  operationId: getStockSplitsById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/market_data/stocks/{stock_id}/news
  method: get
  operationId: getStockNewsByStockId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/market_data/stocks/{stock_id}/dividends
  method: get
  operationId: getStockDividendsByStockId
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/market_data/market_hours/
  method: get
  operationId: getMarketHours
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/entities/
  method: get
  operationId: getEntities
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/entities/
  method: post
  operationId: createEntities
  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/v2/entities/me
  method: get
  operationId: getCurrentEntity
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/entities/{entity_id}
  method: get
  operationId: getEntityById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/entities/{entity_id}
  method: patch
  operationId: updateEntityById
  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/v2/entities/{entity_id}/accounts
  method: get
  operationId: getEntityAccounts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/entities/{entity_id}/accounts
  method: post
  operationId: createEntityAccounts
  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/v2/entities/{entity_id}/kyc
  method: get
  operationId: getEntityKyc
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/entities/{entity_id}/kyc
  method: post
  operationId: createEntityKyc
  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/v2/entities/{entity_id}/kyc/{kyc_id}/document
  method: get
  operationId: getEntityKycDocument
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/entities/{entity_id}/kyc/{kyc_id}/document
  method: post
  operationId: createEntityKycDocument
  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/v2/entities/{entity_id}/kyc/url
  method: post
  operationId: createManagedEntityKycEmbed
  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/v2/orders/
  method: get
  operationId: getEntityOrders
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}
  method: get
  operationId: getAccount
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/deactivate
  method: post
  operationId: createAccountDeactivation
  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/v2/accounts/{account_id}/portfolio
  method: get
  operationId: getAccountPortfolio
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/cash
  method: get
  operationId: getAccountCash
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/interest_payments
  method: get
  operationId: getAccountInterestPayments
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/dividend_payments
  method: get
  operationId: getAccountDividendPayments
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/faucet
  method: post
  operationId: createAccountFaucet
  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/v2/accounts/{account_id}/activities/brokerage
  method: get
  operationId: getBrokerageAccountActivities
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/wallet
  method: get
  operationId: getWallet
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/wallet/external/nonce
  method: get
  operationId: getAccountWalletConnectionNonce
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/wallet/external
  method: post
  operationId: createAccountWalletConnection
  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/v2/accounts/{account_id}/wallet/internal
  method: post
  operationId: createAccountWalletInternalConnection
  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/v2/accounts/{account_id}/orders
  method: get
  operationId: getOrders
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/orders/{order_id}
  method: get
  operationId: getOrderById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/orders/{order_id}/cancel
  method: post
  operationId: createOrderCancellation
  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/v2/accounts/{account_id}/orders/cancel
  method: post
  operationId: createBatchOrderCancellation
  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/v2/accounts/{account_id}/order_requests
  method: get
  operationId: getListOrderRequests
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/order_requests/{order_request_id}
  method: get
  operationId: getOrderRequestById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/order_requests/eip155/permit
  method: post
  operationId: createEIP155OrderRequestPermit
  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/v2/accounts/{account_id}/order_requests/eip155
  method: post
  operationId: createEIP155OrderRequestPermitTransaction
  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/v2/accounts/{account_id}/order_requests/eip155/permit_transaction
  method: post
  operationId: createEip155PermitTransaction
  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/v2/accounts/{account_id}/order_fulfillments
  method: get
  operationId: getAccountAllOrderFulfillments
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/orders/{order_id}/fulfillments
  method: get
  operationId: getAccountOrderFulfillments
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/order_fulfillments/{order_fulfillment_id}
  method: get
  operationId: getAccountOrderFulfillmentById
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/order_requests/market_buy
  method: post
  operationId: createMarketBuyManagedOrderRequest
  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/v2/accounts/{account_id}/order_requests/market_sell
  method: post
  operationId: createMarketSellManagedOrderRequest
  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/v2/accounts/{account_id}/order_requests/limit_buy
  method: post
  operationId: createLimitBuyManagedOrderRequest
  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/v2/accounts/{account_id}/order_requests/limit_sell
  method: post
  operationId: createLimitSellManagedOrderRequest
  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/v2/accounts/{account_id}/token_transfers
  method: get
  operationId: getTokenTransfers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/token_transfers
  method: post
  operationId: createTokenTransfers
  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/v2/accounts/{account_id}/token_transfers/{transfer_id}
  method: get
  operationId: getTokenTransfer
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/withdrawal_requests
  method: get
  operationId: getAccountWithdrawalRequests
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/withdrawal_requests
  method: post
  operationId: createAccountWithdrawalRequests
  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/v2/accounts/{account_id}/withdrawal_requests/{withdrawal_request_id}
  method: get
  operationId: getAccountWithdrawalRequest
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/withdrawals
  method: get
  operationId: getAccountWithdrawals
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/accounts/{account_id}/withdrawals/{withdrawal_id}
  method: get
  operationId: getAccountWithdrawal
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none