Hilt · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Hilt So Pay Me API
22 actions
22 updates
phrasing
extends
openapi/hilt-so-pay-me-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Hilt's API. It is a proposal applied on top of the contract, not a document Hilt publishes.
What the actions change
x-apievangelist-phrasing
Targets 22 · first 16 shown; the file carries all of them
$.info
$.paths['/v1/pay-me/session'].get
$.paths['/v1/pay-me/security'].get
$.paths['/v1/pay-me/security/authenticator/setup'].post
$.paths['/v1/pay-me/security/authenticator/enrollments/{enrollment_id}'].get
$.paths['/v1/pay-me/security/authenticator/enrollments/{enrollment_id}/signature'].post
$.paths['/v1/pay-me/security/authenticator/enrollments/{enrollment_id}/status'].get
$.paths['/v1/pay-me/security/authenticator/confirm'].post
$.paths['/v1/pay-me/profile'].post
$.paths['/v1/pay-me/wallet-links'].post
$.paths['/v1/pay-me/wallet-links/{wallet_link_id}'].get
$.paths['/v1/pay-me/wallet-links/{wallet_link_id}/prepare'].post
$.paths['/v1/pay-me/wallet-links/{wallet_link_id}/signature'].post
$.paths['/v1/pay-me/wallet-links/{wallet_link_id}/status'].get
$.paths['/v1/pay-me/wallet-links/{wallet_link_id}/complete'].post
$.paths['/v1/pay-me/orders'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Hilt So Pay Me API
version: 1.0.0
extends: openapi/hilt-so-pay-me-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 21
- target: $.paths['/v1/pay-me/session'].get
update:
x-apievangelist-phrasing:
intent: Read my X identity and PayMe profile
effect: read
questions:
- Which X account am I signed into PayMe with?
- What does my current PayMe profile look like?
instructions:
- text: Show my PayMe session and X identity.
- text: Get my signed-in PayMe profile.
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/security'].get
update:
x-apievangelist-phrasing:
intent: Check my receiving-wallet security
effect: read
questions:
- Is an authenticator protecting my PayMe receiving wallet?
- What's the security status of my receiving wallet?
instructions:
- text: Show my PayMe security status.
- text: Check whether my receiving wallet is secured.
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/security/authenticator/setup'].post
update:
x-apievangelist-phrasing:
intent: Start authenticator enrollment
effect: write
questions:
- How do I add an authenticator app to PayMe?
- Can I turn on two-factor protection for my receiving wallet?
instructions:
- text: Start PayMe authenticator enrollment.
- text: Begin setting up an authenticator for my receiving wallet.
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/security/authenticator/enrollments/{enrollment_id}'].get
update:
x-apievangelist-phrasing:
intent: Read an authenticator enrollment's wallet approval
effect: read
questions:
- What wallet approval is pending for my authenticator enrollment?
- Can I view the short-lived approval request for an enrollment?
instructions:
- text: Show authenticator enrollment {enrollment_id}.
slots:
enrollment_id: path.enrollment_id
- text: Read the wallet approval request for enrollment {enrollment_id}.
slots:
enrollment_id: path.enrollment_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/security/authenticator/enrollments/{enrollment_id}/signature'].post
update:
x-apievangelist-phrasing:
intent: Approve authenticator setup with my wallet
effect: write
questions:
- How do I sign with my current wallet to approve authenticator setup?
- Where do I submit the wallet signature for an authenticator enrollment?
instructions:
- text: Approve enrollment {enrollment_id} from wallet {recipientWallet} with message {setupMessage} and signature {setupSignature}.
slots:
enrollment_id: path.enrollment_id
recipientWallet: requestBody.recipientWallet
setupMessage: requestBody.setupMessage
setupSignature: requestBody.setupSignature
- text: Sign off authenticator enrollment {enrollment_id} with wallet {recipientWallet}.
slots:
enrollment_id: path.enrollment_id
recipientWallet: requestBody.recipientWallet
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/security/authenticator/enrollments/{enrollment_id}/status'].get
update:
x-apievangelist-phrasing:
intent: Check wallet approval status for an enrollment
effect: read
questions:
- Has my wallet approved the authenticator enrollment yet?
- Can I poll whether the enrollment's wallet approval went through?
instructions:
- text: Check approval status of enrollment {enrollment_id}.
slots:
enrollment_id: path.enrollment_id
- text: Tell me if my wallet has approved enrollment {enrollment_id}.
slots:
enrollment_id: path.enrollment_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/security/authenticator/confirm'].post
update:
x-apievangelist-phrasing:
intent: Confirm authenticator enrollment with a code
effect: write
questions:
- How do I finish authenticator setup with the code from my app?
- What confirms that my authenticator is enrolled?
instructions:
- text: Confirm enrollment {enrollmentId} with code {code}.
slots:
enrollmentId: requestBody.enrollmentId
code: requestBody.code
- text: Finish authenticator setup {enrollmentId} using one-time code {code}.
slots:
enrollmentId: requestBody.enrollmentId
code: requestBody.code
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/profile'].post
update:
x-apievangelist-phrasing:
intent: Create or update my verified PayMe profile
effect: write
questions:
- Can I publish a verified PayMe profile tied to my receiving wallet?
- What signature is needed to create or change my PayMe profile?
instructions:
- text: Create my PayMe profile for wallet {recipientWallet} signed {setupSignature} over {setupMessage} at {createdAt}.
slots:
recipientWallet: requestBody.recipientWallet
setupSignature: requestBody.setupSignature
setupMessage: requestBody.setupMessage
createdAt: requestBody.createdAt
- text: Update my verified PayMe profile to receive at {recipientWallet}.
slots:
recipientWallet: requestBody.recipientWallet
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/wallet-links'].post
update:
x-apievangelist-phrasing:
intent: Create a receiving-wallet verification link
effect: write
questions:
- How do I verify my receiving wallet from another device?
- Can I generate a short-lived link to prove wallet ownership?
instructions:
- text: Create a receiving-wallet verification link.
- text: Create a wallet link with security code {securityCode}.
slots:
securityCode: requestBody.securityCode
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/wallet-links/{wallet_link_id}'].get
update:
x-apievangelist-phrasing:
intent: Read a receiving-wallet verification link
effect: read
questions:
- What does a given wallet verification link contain?
- Is my wallet verification link still valid?
instructions:
- text: Show wallet link {wallet_link_id}.
slots:
wallet_link_id: path.wallet_link_id
- text: Open receiving-wallet link {wallet_link_id}.
slots:
wallet_link_id: path.wallet_link_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/wallet-links/{wallet_link_id}/prepare'].post
update:
x-apievangelist-phrasing:
intent: Prepare the wallet verification message
effect: write
questions:
- What exact message must my wallet sign to verify it?
- Can I get the verification text before signing with my wallet?
instructions:
- text: Prepare the verification message on link {wallet_link_id} for wallet {recipientWallet}.
slots:
wallet_link_id: path.wallet_link_id
recipientWallet: requestBody.recipientWallet
- text: Generate the sign-in text for {recipientWallet} on wallet link {wallet_link_id}.
slots:
recipientWallet: requestBody.recipientWallet
wallet_link_id: path.wallet_link_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/wallet-links/{wallet_link_id}/signature'].post
update:
x-apievangelist-phrasing:
intent: Submit a receiving-wallet signature
effect: write
questions:
- Where does my wallet's signature go to verify a receiving wallet?
- How do I send back the signed verification message?
instructions:
- text: Submit signature {setupSignature} for {recipientWallet} on link {wallet_link_id} over {setupMessage}.
slots:
setupSignature: requestBody.setupSignature
recipientWallet: requestBody.recipientWallet
wallet_link_id: path.wallet_link_id
setupMessage: requestBody.setupMessage
- text: Send my wallet signature for verification link {wallet_link_id}.
slots:
wallet_link_id: path.wallet_link_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/wallet-links/{wallet_link_id}/status'].get
update:
x-apievangelist-phrasing:
intent: Check receiving-wallet verification status
effect: read
questions:
- Has my receiving wallet been verified through the link yet?
- Can I poll whether a wallet link's signature was accepted?
instructions:
- text: Check verification status of wallet link {wallet_link_id}.
slots:
wallet_link_id: path.wallet_link_id
- text: Confirm whether wallet link {wallet_link_id} has been verified.
slots:
wallet_link_id: path.wallet_link_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/wallet-links/{wallet_link_id}/complete'].post
update:
x-apievangelist-phrasing:
intent: Confirm a verified wallet and publish my profile
effect: write
questions:
- Once my wallet is verified, how do I go live with my PayMe profile?
- What publishes the PayMe profile after wallet verification?
instructions:
- text: Complete wallet link {wallet_link_id} and publish my PayMe profile.
slots:
wallet_link_id: path.wallet_link_id
- text: Confirm the verified wallet on link {wallet_link_id}.
slots:
wallet_link_id: path.wallet_link_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/orders'].post
update:
x-apievangelist-phrasing:
intent: Create an atomic multi-recipient payment order
effect: write
questions:
- Can I pay several PayMe recipients in one atomic transaction?
- How do I build a payment order from my wallet?
instructions:
- text: Create a PayMe order from {payerWallet} paying {recipients}.
slots:
payerWallet: requestBody.payerWallet
recipients: requestBody.recipients
- text: Build an atomic order from wallet {payerWallet} to {recipients} with note {note}.
slots:
payerWallet: requestBody.payerWallet
recipients: requestBody.recipients
note: requestBody.note
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/orders/{public_id}'].get
update:
x-apievangelist-phrasing:
intent: Read a PayMe payment order
effect: read
questions:
- What's the status of a PayMe order I created?
- Which recipients are in a given payment order?
instructions:
- text: Show PayMe order {public_id}.
slots:
public_id: path.public_id
- text: Get recipients and status of order {public_id}.
slots:
public_id: path.public_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/orders/{public_id}/confirm'].post
update:
x-apievangelist-phrasing:
intent: Confirm an atomic PayMe payment order
effect: write
questions:
- How do I confirm an order after the transaction lands on-chain?
- Where do I submit the transaction signature for a PayMe order?
instructions:
- text: Confirm order {public_id} paid by {payerWallet} in transaction {txSignature}.
slots:
public_id: path.public_id
payerWallet: requestBody.payerWallet
txSignature: requestBody.txSignature
- text: Mark PayMe order {public_id} as paid with signature {txSignature}.
slots:
public_id: path.public_id
txSignature: requestBody.txSignature
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/payments'].post
update:
x-apievangelist-phrasing:
intent: Pay a verified X handle through MPP
effect: write
questions:
- Can my agent pay someone by their X handle in SOL or USDC?
- What happens when the first payment request returns a 402 challenge?
instructions:
- text: Pay {amount} {asset} to @{xHandle}.
slots:
amount: requestBody.amount
asset: requestBody.asset
xHandle: requestBody.xHandle
- text: Send {amount} to X user {xHandle} with note {note}.
slots:
amount: requestBody.amount
xHandle: requestBody.xHandle
note: requestBody.note
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/payments/{public_id}'].get
update:
x-apievangelist-phrasing:
intent: Read a PayMe MPP payment and receipt
effect: read
questions:
- Did my agent's payment to an X handle settle?
- Can I get the receipt for an MPP payment?
instructions:
- text: Show MPP payment {public_id} and its receipt.
slots:
public_id: path.public_id
- text: Get the receipt for PayMe payment {public_id}.
slots:
public_id: path.public_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/{x_handle}'].get
update:
x-apievangelist-phrasing:
intent: Look up a verified PayMe profile by X handle
effect: read
questions:
- Does this X user have a verified PayMe profile?
- Which wallet receives payments for a given X handle?
instructions:
- text: Resolve the PayMe profile for {x_handle}.
slots:
x_handle: path.x_handle
- text: Look up whether @{x_handle} can be paid.
slots:
x_handle: path.x_handle
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/pay-me/{x_handle}/checkouts'].post
update:
x-apievangelist-phrasing:
intent: Create a checkout to pay a PayMe profile
effect: write
questions:
- Can I pay someone's PayMe profile with any SPL token?
- How do I start a payer-signed checkout toward an X handle?
instructions:
- text: Create a checkout paying {recipientAmount} {tokenSymbol} to {x_handle} from {payerWallet}.
slots:
recipientAmount: requestBody.recipientAmount
tokenSymbol: requestBody.tokenSymbol
x_handle: path.x_handle
payerWallet: requestBody.payerWallet
- text: Start a PayMe checkout to {x_handle} with token mint {tokenMint}.
slots:
x_handle: path.x_handle
tokenMint: requestBody.tokenMint
method: generated
generated: '2026-09-26'