Interswitch · Agentic Access

Interswitch Agentic Access

x-agentic-access generated

Interswitch exposes 55 API operations that an AI agent could call, of which 31 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: 24 read, 14 write, 16 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.

PaymentsPayment InfrastructureCard NetworkVerveQuicktellerWebpayBills PaymentTransfersLendingFintechAfricaNigeria
Operations: 55 Acting: 31 Human-in-the-loop: 1 Method: generated

By consequence

read 24 write 14 physical 16 safety-critical 1

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 /card-360/api/v1/cards/{cardId}/pin safety-critical required
POST /api/v2/purchases/recurrents physical conditional
POST /api/v2/purchases/validations/recurrents physical conditional
POST /api/v2/quickteller/payments/advices physical conditional
POST /api/v2/quickteller/payments/advices physical conditional
POST /api/v2/quickteller/payments/advices/epin physical conditional
POST /collections/w/pay physical conditional
POST /lending-service/api/v1/loans/{loanId}/debit physical conditional
POST /lending-service/api/v2/payments/token physical conditional
POST /lending-service/api/v2/payments/token/validate physical conditional
POST /paymentgateway/api/v1/hosted-fields/sessions physical conditional
POST /paymentgateway/api/v1/payment-links physical conditional
POST /paymentgateway/api/v1/payments physical conditional
POST /paymentgateway/api/v1/refunds physical conditional
POST /paymentgateway/api/v1/three-d-secure/sessions physical conditional
POST /quicktellerservice/api/v5/transactions/BulkTransfer physical conditional
POST /quicktellerservice/api/v5/transactions/TransferFunds physical conditional

Source

Agentic Access

Raw ↑
generated: '2026-07-15'
method: generated
source: openapi/interswitch-airtime-recharge-api-openapi.yml, openapi/interswitch-bills-payment-api-openapi.yml,
  openapi/interswitch-card-360-api-openapi.yml, openapi/interswitch-customer-insights-api-openapi.yml,
  openapi/interswitch-lending-api-openapi.yml, openapi/interswitch-paycode-api-openapi.yml,
  openapi/interswitch-payment-gateway-api-openapi.yml, openapi/interswitch-recurring-payments-api-openapi.yml,
  openapi/interswitch-refunds-api-openapi.yml, openapi/interswitch-transaction-search-api-openapi.yml,
  openapi/interswitch-transfers-api-openapi.yml, openapi/interswitch-web-checkout-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: 55
  by_action_class:
    connected: 24
    acting: 31
  by_consequence:
    read: 24
    physical: 16
    write: 14
    safety-critical: 1
  human_in_the_loop_required: 1
operations:
- path: /api/v2/quickteller/categorys/4/billers
  method: get
  operationId: listAirtimeTelcos
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/quickteller/billers/{billerId}/paymentitems
  method: get
  operationId: listAirtimeDenominations
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/quickteller/payments/advices
  method: post
  operationId: rechargeAirtime
  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/quickteller/payments/advices/epin
  method: post
  operationId: purchaseEpinVoucher
  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/quickteller/categorys
  method: get
  operationId: listBillerCategories
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/quickteller/categorys/{categoryId}/billers
  method: get
  operationId: listBillersInCategory
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/quickteller/billers
  method: get
  operationId: listBillers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/quickteller/billers/{billerId}/paymentitems
  method: get
  operationId: listBillerPaymentItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v2/quickteller/customers/validations
  method: post
  operationId: validateCustomer
  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/quickteller/payments/advices
  method: post
  operationId: submitBillPaymentAdvice
  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: /card-360/api/v1/cards
  method: post
  operationId: createCard
  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-360/api/v1/cards/{cardId}
  method: get
  operationId: getCard
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /card-360/api/v1/cards/{cardId}/block
  method: post
  operationId: blockCard
  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-360/api/v1/cards/{cardId}/unblock
  method: post
  operationId: unblockCard
  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-360/api/v1/cards/{cardId}/pin
  method: post
  operationId: setCardPin
  x-agentic-access:
    action-class: acting
    consequence: safety-critical
    subject: required
    audience: null
    token:
      max-ttl: 120
      exchange: true
      purpose-required: true
      proof-of-possession: true
    escalation:
      human-in-the-loop: required
    audit: required
- path: /card-360/api/v1/cards/{cardId}/balance
  method: get
  operationId: getCardBalance
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /card-360/api/v1/cards/link
  method: post
  operationId: linkCard
  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-360/api/v1/cards/validate
  method: post
  operationId: validateCard
  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: /insights/api/v1/customers/{customerId}/demography
  method: get
  operationId: getCustomerDemography
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /insights/api/v1/customers/{customerId}/financial-history
  method: get
  operationId: getFinancialHistory
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /insights/api/v1/customers/{customerId}/financial-history/average
  method: get
  operationId: getAverageFinancialHistory
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /insights/api/v1/customers/{customerId}/financial-habits
  method: get
  operationId: getFinancialHabits
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /lending-service/api/v1/offers/providers
  method: get
  operationId: listLoanProviders
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /lending-service/api/v3/offers
  method: get
  operationId: listLoanOffers
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /lending-service/api/v1/offers/{offerId}/accept
  method: post
  operationId: acceptLoanOffer
  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: /lending-service/api/v1/loans/{loanId}/fund
  method: post
  operationId: fundLoan
  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: /lending-service/api/v1/loans/{loanId}/debit
  method: post
  operationId: debitLoanRepayment
  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: /lending-service/api/v1/loans/{loanId}/update
  method: put
  operationId: updateLoanStatus
  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: /lending-service/api/v1/users/{customerId}/status
  method: get
  operationId: getCustomerLoanStatus
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /lending-service/api/v1/users/{customerId}/payment-methods
  method: get
  operationId: listCustomerPaymentMethods
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /lending-service/api/v2/payments/token
  method: post
  operationId: generateLendingPaymentToken
  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: /lending-service/api/v2/payments/token/validate
  method: post
  operationId: validateLendingPaymentTokenOtp
  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/v1/pwm/subscribers/{subscriberId}/tokens
  method: post
  operationId: generatePaycodeToken
  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/v1/pwm/subscribers/{subscriberId}/tokens/status
  method: get
  operationId: getPaycodeTokenStatus
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /cardless-service/api/v1/cardless-services/cancel-token
  method: post
  operationId: cancelPaycodeToken
  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/v1/pwm/subscribers/{subscriberId}/tokens/bulk
  method: post
  operationId: generateBulkPaycodeTokens
  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: /paymentgateway/api/v1/payments
  method: post
  operationId: createCardPayment
  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: /paymentgateway/api/v1/payments/{paymentId}
  method: get
  operationId: getPayment
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /paymentgateway/api/v1/hosted-fields/sessions
  method: post
  operationId: createHostedFieldsSession
  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: /paymentgateway/api/v1/three-d-secure/sessions
  method: post
  operationId: createThreeDSecureSession
  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: /paymentgateway/api/v1/payment-links
  method: post
  operationId: createPaymentLink
  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/purchases/validations/recurrents
  method: post
  operationId: tokenizeCardForRecurring
  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/purchases/recurrents
  method: post
  operationId: chargeRecurringToken
  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: /paymentgateway/api/v1/refunds
  method: post
  operationId: createRefund
  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: /paymentgateway/api/v1/refunds/{refundReference}
  method: get
  operationId: getRefund
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /transaction-search/api/v1/search/quick
  method: get
  operationId: quickTransactionSearch
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /transaction-search/api/v1/search/reference
  method: get
  operationId: searchTransactionByReference
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /transaction-search/api/v1/search/bulk
  method: post
  operationId: bulkTransactionSearch
  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-search/api/v1/transactions/{transactionId}
  method: get
  operationId: getTransactionDetail
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /quicktellerservice/api/v5/transactions/TransferFunds
  method: post
  operationId: sendSingleTransfer
  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: /quicktellerservice/api/v5/transactions/BulkTransfer
  method: post
  operationId: sendBulkTransfer
  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: /quicktellerservice/api/v5/transactions/NameInquiry
  method: post
  operationId: nameInquiry
  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: /quicktellerservice/api/v5/banks
  method: get
  operationId: listBanks
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /collections/w/pay
  method: post
  operationId: initiateWebRedirectPayment
  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: /collections/api/v1/gettransaction.json
  method: get
  operationId: getTransactionStatus
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none