SAP Sales and Distribution (SD) Agentic Access

x-agentic-access generated

SAP Sales and Distribution (SD) exposes 118 API operations that an AI agent could call, of which 52 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: 66 read, 47 write, and 5 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.

DistributionERPODataS/4HANASalesSAP
Operations: 118 Acting: 52 Human-in-the-loop: 0 Method: generated

By consequence

read 66 write 47 physical 5

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 /A_SalesOrder physical conditional
PATCH /A_SalesOrder('{SalesOrder}') physical conditional
DELETE /A_SalesOrder('{SalesOrder}') physical conditional
PATCH /A_SalesOrderItem(SalesOrder='{SalesOrder}',SalesOrderItem='{SalesOrderItem}') physical conditional
DELETE /A_SalesOrderItem(SalesOrder='{SalesOrder}',SalesOrderItem='{SalesOrderItem}') physical conditional

Source

Agentic Access

Raw ↑
generated: '2026-07-15'
method: generated
source: openapi/sap-sd-billing-document-openapi.yml, openapi/sap-sd-credit-management-openapi.yml,
  openapi/sap-sd-credit-memo-request-openapi.yml, openapi/sap-sd-customer-master-data-openapi.yml,
  openapi/sap-sd-customer-material-openapi.yml, openapi/sap-sd-customer-return-openapi.yml,
  openapi/sap-sd-customer-returns-delivery-openapi.yml, openapi/sap-sd-debit-memo-request-openapi.yml,
  openapi/sap-sd-inbound-delivery-openapi.yml, openapi/sap-sd-material-master-openapi.yml, openapi/sap-sd-outbound-delivery-openapi.yml,
  openapi/sap-sd-pricing-openapi.yml, openapi/sap-sd-sales-contract-openapi.yml, openapi/sap-sd-sales-inquiry-openapi.yml,
  openapi/sap-sd-sales-order-openapi.yml, openapi/sap-sd-sales-quotation-openapi.yml, openapi/sap-sd-sales-scheduling-agreement-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: 118
  by_action_class:
    connected: 66
    acting: 52
  by_consequence:
    read: 66
    write: 47
    physical: 5
  human_in_the_loop_required: 0
operations:
- path: /A_BillingDocument
  method: get
  operationId: listBillingDocuments
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_BillingDocument('{BillingDocument}')
  method: get
  operationId: getBillingDocument
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_BillingDocument('{BillingDocument}')/to_Item
  method: get
  operationId: listBillingDocumentItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_BillingDocument('{BillingDocument}')/to_Partner
  method: get
  operationId: listBillingDocumentPartners
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /CancelBillingDocument
  method: post
  operationId: cancelBillingDocument
  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: /GetPDF
  method: get
  operationId: getBillingDocumentPDF
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CrdtMgmtBusinessPartner
  method: get
  operationId: listCreditAccounts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CrdtMgmtBusinessPartner('{BusinessPartner}')
  method: get
  operationId: getCreditAccount
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CrdtMgmtBusinessPartner('{BusinessPartner}')
  method: patch
  operationId: updateCreditAccount
  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: /A_CrdtMgmtCreditLimit
  method: get
  operationId: listCreditLimits
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CrdtMgmtCreditLimit(BusinessPartner='{BusinessPartner}',CreditSegment='{CreditSegment}')
  method: get
  operationId: getCreditLimit
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CrdtMgmtCreditLimit(BusinessPartner='{BusinessPartner}',CreditSegment='{CreditSegment}')
  method: patch
  operationId: updateCreditLimit
  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: /A_CrdtMgmtCreditExposure(BusinessPartner='{BusinessPartner}',CreditSegment='{CreditSegment}')
  method: get
  operationId: getCreditExposure
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CreditMemoRequest
  method: get
  operationId: listCreditMemoRequests
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CreditMemoRequest
  method: post
  operationId: createCreditMemoRequest
  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: /A_CreditMemoRequest('{CreditMemoRequest}')
  method: get
  operationId: getCreditMemoRequest
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CreditMemoRequest('{CreditMemoRequest}')
  method: patch
  operationId: updateCreditMemoRequest
  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: /A_CreditMemoRequest('{CreditMemoRequest}')
  method: delete
  operationId: deleteCreditMemoRequest
  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: /A_CreditMemoRequest('{CreditMemoRequest}')/to_Item
  method: get
  operationId: listCreditMemoRequestItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /AcceptApprovalRequest
  method: post
  operationId: acceptCreditMemoApprovalRequest
  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: /RejectApprovalRequest
  method: post
  operationId: rejectCreditMemoApprovalRequest
  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: /A_BusinessPartner
  method: get
  operationId: listBusinessPartners
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_BusinessPartner
  method: post
  operationId: createBusinessPartner
  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: /A_BusinessPartner('{BusinessPartner}')
  method: get
  operationId: getBusinessPartner
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_BusinessPartner('{BusinessPartner}')
  method: patch
  operationId: updateBusinessPartner
  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: /A_BusinessPartner('{BusinessPartner}')/to_BusinessPartnerAddress
  method: get
  operationId: listBusinessPartnerAddresses
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_BusinessPartner('{BusinessPartner}')/to_BusinessPartnerAddress
  method: post
  operationId: createBusinessPartnerAddress
  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: /A_Customer('{Customer}')
  method: get
  operationId: getCustomer
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CustomerSalesArea(Customer='{Customer}',SalesOrganization='{SalesOrganization}',DistributionChannel='{DistributionChannel}',Division='{Division}')
  method: get
  operationId: getCustomerSalesArea
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CustomerMaterial
  method: get
  operationId: listCustomerMaterials
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CustomerMaterial
  method: post
  operationId: createCustomerMaterial
  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: /A_CustomerMaterial(SalesOrganization='{SalesOrganization}',DistributionChannel='{DistributionChannel}',Customer='{Customer}',Material='{Material}')
  method: get
  operationId: getCustomerMaterial
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CustomerMaterial(SalesOrganization='{SalesOrganization}',DistributionChannel='{DistributionChannel}',Customer='{Customer}',Material='{Material}')
  method: patch
  operationId: updateCustomerMaterial
  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: /A_CustomerMaterial(SalesOrganization='{SalesOrganization}',DistributionChannel='{DistributionChannel}',Customer='{Customer}',Material='{Material}')
  method: delete
  operationId: deleteCustomerMaterial
  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: /A_CustomerReturn
  method: get
  operationId: listCustomerReturns
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CustomerReturn
  method: post
  operationId: createCustomerReturn
  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: /A_CustomerReturn('{CustomerReturn}')
  method: get
  operationId: getCustomerReturn
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_CustomerReturn('{CustomerReturn}')
  method: patch
  operationId: updateCustomerReturn
  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: /A_CustomerReturn('{CustomerReturn}')
  method: delete
  operationId: deleteCustomerReturn
  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: /A_CustomerReturn('{CustomerReturn}')/to_Item
  method: get
  operationId: listCustomerReturnItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_ReturnsDeliveryHeader
  method: get
  operationId: listReturnsDeliveries
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_ReturnsDeliveryHeader('{DeliveryDocument}')
  method: get
  operationId: getReturnsDelivery
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_ReturnsDeliveryHeader('{DeliveryDocument}')
  method: patch
  operationId: updateReturnsDelivery
  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: /A_ReturnsDeliveryHeader('{DeliveryDocument}')/to_DeliveryDocumentItem
  method: get
  operationId: listReturnsDeliveryItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /PostGoodsReceipt
  method: post
  operationId: postGoodsReceipt
  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: /A_DebitMemoRequest
  method: get
  operationId: listDebitMemoRequests
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_DebitMemoRequest
  method: post
  operationId: createDebitMemoRequest
  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: /A_DebitMemoRequest('{DebitMemoRequest}')
  method: get
  operationId: getDebitMemoRequest
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_DebitMemoRequest('{DebitMemoRequest}')
  method: patch
  operationId: updateDebitMemoRequest
  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: /A_DebitMemoRequest('{DebitMemoRequest}')
  method: delete
  operationId: deleteDebitMemoRequest
  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: /A_DebitMemoRequest('{DebitMemoRequest}')/to_Item
  method: get
  operationId: listDebitMemoRequestItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_InbDeliveryHeader
  method: get
  operationId: listInboundDeliveries
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_InbDeliveryHeader
  method: post
  operationId: createInboundDelivery
  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: /A_InbDeliveryHeader('{DeliveryDocument}')
  method: get
  operationId: getInboundDelivery
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_InbDeliveryHeader('{DeliveryDocument}')
  method: patch
  operationId: updateInboundDelivery
  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: /A_InbDeliveryHeader('{DeliveryDocument}')
  method: delete
  operationId: deleteInboundDelivery
  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: /A_InbDeliveryHeader('{DeliveryDocument}')/to_DeliveryDocumentItem
  method: get
  operationId: listInboundDeliveryItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /PostGoodsReceipt
  method: post
  operationId: postGoodsReceipt
  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: /A_Product
  method: get
  operationId: listProducts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_Product
  method: post
  operationId: createProduct
  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: /A_Product('{Product}')
  method: get
  operationId: getProduct
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_Product('{Product}')
  method: patch
  operationId: updateProduct
  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: /A_Product('{Product}')/to_Description
  method: get
  operationId: listProductDescriptions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_Product('{Product}')/to_Plant
  method: get
  operationId: listProductPlants
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_ProductSalesDelivery(Product='{Product}',ProductSalesOrg='{ProductSalesOrg}',ProductDistributionChnl='{ProductDistributionChnl}')
  method: get
  operationId: getProductSalesDelivery
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_OutbDeliveryHeader
  method: get
  operationId: listOutboundDeliveries
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_OutbDeliveryHeader
  method: post
  operationId: createOutboundDelivery
  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: /A_OutbDeliveryHeader('{DeliveryDocument}')
  method: get
  operationId: getOutboundDelivery
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_OutbDeliveryHeader('{DeliveryDocument}')
  method: patch
  operationId: updateOutboundDelivery
  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: /A_OutbDeliveryHeader('{DeliveryDocument}')
  method: delete
  operationId: deleteOutboundDelivery
  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: /A_OutbDeliveryHeader('{DeliveryDocument}')/to_DeliveryDocumentItem
  method: get
  operationId: listOutboundDeliveryItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_OutbDeliveryHeader('{DeliveryDocument}')/to_DeliveryDocumentPartner
  method: get
  operationId: listOutboundDeliveryPartners
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /PostGoodsIssue
  method: post
  operationId: postGoodsIssue
  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: /ReverseGoodsIssue
  method: post
  operationId: reverseGoodsIssue
  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: /A_SlsPrcgConditionRecord
  method: get
  operationId: listPricingConditionRecords
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SlsPrcgConditionRecord
  method: post
  operationId: createPricingConditionRecord
  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: /A_SlsPrcgConditionRecord('{ConditionRecord}')
  method: get
  operationId: getPricingConditionRecord
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SlsPrcgConditionRecord('{ConditionRecord}')
  method: patch
  operationId: updatePricingConditionRecord
  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: /A_SlsPrcgConditionRecord('{ConditionRecord}')
  method: delete
  operationId: deletePricingConditionRecord
  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: /A_SlsPrcgCndnRecdValidity
  method: get
  operationId: listConditionRecordValidities
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesContract
  method: get
  operationId: listSalesContracts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesContract
  method: post
  operationId: createSalesContract
  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: /A_SalesContract('{SalesContract}')
  method: get
  operationId: getSalesContract
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesContract('{SalesContract}')
  method: patch
  operationId: updateSalesContract
  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: /A_SalesContract('{SalesContract}')
  method: delete
  operationId: deleteSalesContract
  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: /A_SalesContract('{SalesContract}')/to_Item
  method: get
  operationId: listSalesContractItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesInquiry
  method: get
  operationId: listSalesInquiries
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesInquiry
  method: post
  operationId: createSalesInquiry
  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: /A_SalesInquiry('{SalesInquiry}')
  method: get
  operationId: getSalesInquiry
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesInquiry('{SalesInquiry}')
  method: patch
  operationId: updateSalesInquiry
  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: /A_SalesInquiry('{SalesInquiry}')
  method: delete
  operationId: deleteSalesInquiry
  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: /A_SalesInquiry('{SalesInquiry}')/to_Item
  method: get
  operationId: listSalesInquiryItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesOrder
  method: get
  operationId: listSalesOrders
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesOrder
  method: post
  operationId: createSalesOrder
  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: /A_SalesOrder('{SalesOrder}')
  method: get
  operationId: getSalesOrder
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesOrder('{SalesOrder}')
  method: patch
  operationId: updateSalesOrder
  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: /A_SalesOrder('{SalesOrder}')
  method: delete
  operationId: deleteSalesOrder
  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: /A_SalesOrder('{SalesOrder}')/to_Item
  method: get
  operationId: listSalesOrderItems
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesOrderItem(SalesOrder='{SalesOrder}',SalesOrderItem='{SalesOrderItem}')
  method: get
  operationId: getSalesOrderItem
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesOrderItem(SalesOrder='{SalesOrder}',SalesOrderItem='{SalesOrderItem}')
  method: patch
  operationId: updateSalesOrderItem
  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: /A_SalesOrderItem(SalesOrder='{SalesOrder}',SalesOrderItem='{SalesOrderItem}')
  method: delete
  operationId: deleteSalesOrderItem
  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: /A_SalesOrder('{SalesOrder}')/to_Partner
  method: get
  operationId: listSalesOrderPartners
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesOrder('{SalesOrder}')/to_PricingElement
  method: get
  operationId: listSalesOrderPricingElements
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesOrderScheduleLine(SalesOrder='{SalesOrder}',SalesOrderItem='{SalesOrderItem}',ScheduleLine='{ScheduleLine}')
  method: get
  operationId: getSalesOrderScheduleLine
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_SalesOrder('{SalesOrder}')/to_Text
  method: get
  operationId: listSalesOrderTexts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /A_Sal

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/sap-sales-and-distribution-sd/refs/heads/main/agentic-access/sap-sales-and-distribution-sd-agentic-access.yml

Work with this as data

Every access contract here is available over the APIs.io API and to AI agents over MCP. Agentic Access is not yet its own endpoint on the v1 API. Reach it through catalog search and the tag graph, or the MCP server.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for agentic access

3 MCP tools reach this
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
Search the catalog
curl "https://apis.io/api/v1/search?q=sap-sales-and-distribution-sd-agentic-access&limit=10"
Everything under a tag
curl "https://apis.io/api/v1/tags/sap-sales-and-distribution-sd-agentic-access"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.