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.
View Overlay File View on GitHub Overlay Specification

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

Raw ↑
# 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'