# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for DoiT Billing Transfer API version: 1.0.0 extends: openapi/doit-billing-transfer-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-10-01' generator: build-phrasing.py label: Generated by API Evangelist operations: 8 - target: $.paths['/billingtransfer/v1/resellerhandshakes'].post update: x-apievangelist-phrasing: intent: Map resellers to a distributor PMA effect: write questions: - As a distributor, how do I map resellers for AWS billing transfer? - Can I dry-run reseller handshakes before sending them? instructions: - text: Map resellers {items} under distributor PMA {dpmaId}. slots: items: requestBody.items dpmaId: requestBody.dpmaId - text: Map resellers {items} to PMA {dpmaId} and send handshakes ({sendHandshakes}). slots: items: requestBody.items dpmaId: requestBody.dpmaId sendHandshakes: requestBody.sendHandshakes method: generated generated: '2026-10-01' - target: $.paths['/billingtransfer/v1/programmanagementaccounts'].get update: x-apievangelist-phrasing: intent: List program management accounts effect: read questions: - Which program management accounts do I have, and which resellers are under each? - What is the AWS Organizations handshake status per account? instructions: - text: List my program management accounts with their reseller tenants. - text: Show my PMAs and handshake status, {n} at a time. slots: n: query.maxResults method: generated generated: '2026-10-01' - target: $.paths['/billingtransfer/v1/end-customer-mappings'].post update: x-apievangelist-phrasing: intent: Map end-customer accounts to tenants effect: write questions: - As a reseller, how do I map end-customer AWS accounts to their DoiT tenant? - What do I need to onboard end customers under my reseller PMA? instructions: - text: Map end customers {items} under reseller PMA {resellerPmaAccountId} of {dpmaId}. slots: items: requestBody.items resellerPmaAccountId: requestBody.resellerPmaAccountId dpmaId: requestBody.dpmaId - text: Onboard end-customer accounts {items} to reseller {resellerPmaAccountId} under {dpmaId}. slots: items: requestBody.items resellerPmaAccountId: requestBody.resellerPmaAccountId dpmaId: requestBody.dpmaId method: generated generated: '2026-10-01' - target: $.paths['/billingtransfer/v1/programmanagementaccounts/status'].get update: x-apievangelist-phrasing: intent: Poll PMA IAM status effect: read questions: - Is the IAM setup on my program management accounts complete yet? - Is there a lightweight way to poll onboarding status? instructions: - text: Check the IAM status of my program management accounts. - text: Poll onboarding status for each PMA. method: generated generated: '2026-10-01' - target: $.paths['/billingtransfer/v1/end-customers'].get update: x-apievangelist-phrasing: intent: List end-customers by distributor and reseller PMA effect: read questions: - Which end-customer accounts are mapped under a reseller and distributor PMA pair? - Can I include revoked end-customer mappings? instructions: - text: List end customers for distributor PMA {dpmaId} and reseller {resellerPmaAccountId}. slots: dpmaId: query.dpmaId resellerPmaAccountId: query.resellerPmaAccountId - text: List end customers under {dpmaId} and {resellerPmaAccountId}, include revoked {includeRevoked}. slots: dpmaId: query.dpmaId resellerPmaAccountId: query.resellerPmaAccountId includeRevoked: query.includeRevoked method: generated generated: '2026-10-01' - target: $.paths['/billingtransfer/v1/resellers/{resellerPmaAccountId}/end-customers'].get update: x-apievangelist-phrasing: intent: List end-customers by reseller PMA only effect: read questions: - Can I list a reseller's end customers without knowing the distributor PMA? - Which end customers sit under one reseller account ID? instructions: - text: List end customers of reseller PMA {resellerPmaAccountId}. slots: resellerPmaAccountId: path.resellerPmaAccountId - text: Show end-customer mappings for reseller account {resellerPmaAccountId} with revoked set to {includeRevoked}. slots: resellerPmaAccountId: path.resellerPmaAccountId includeRevoked: query.includeRevoked method: generated generated: '2026-10-01' - target: $.paths['/billingtransfer/v1/reseller-accounts'].get update: x-apievangelist-phrasing: intent: List my reseller PMA nodes effect: read questions: - Which reseller program management accounts do I own? - What handshake state are my reseller nodes in? instructions: - text: List my reseller PMA nodes. - text: Show handshake state for each of my reseller accounts. method: generated generated: '2026-10-01' - target: $.paths['/billingtransfer/v1/reseller-accounts/end-customers'].get update: x-apievangelist-phrasing: intent: List reseller PMA nodes with tenants effect: read questions: - Can I see each reseller node together with its connected end-customer tenants? - Which tenants are connected under each of my reseller accounts? instructions: - text: List my reseller nodes with their end-customer tenants. - text: Show reseller nodes and tenants with revoked included set to {includeRevoked}. slots: includeRevoked: query.includeRevoked method: generated generated: '2026-10-01'