Hilt · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Hilt So Products API

13 actions 13 updates phrasing extends openapi/hilt-so-products-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 13

$.info
$.paths['/v1/products'].get
$.paths['/v1/products'].post
$.paths['/v1/products/p/{slug}'].get
$.paths['/v1/products/p/{slug}/connect'].post
$.paths['/v1/products/p/{slug}/resolve-handoff'].post
$.paths['/v1/products/{product_id}/payments'].get
$.paths['/v1/products/{product_id}/analytics'].get
$.paths['/v1/products/{product_id}'].get
$.paths['/v1/products/{product_id}'].delete
$.paths['/v1/products/{product_id}'].patch
$.paths['/v1/products/{product_id}/handoff-link'].post
$.paths['/v1/payments/{payment_id}'].get

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 Products API
  version: 1.0.0
extends: openapi/hilt-so-products-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: 12
- target: $.paths['/v1/products'].get
  update:
    x-apievangelist-phrasing:
      intent: List my products
      effect: read
      questions:
      - Which products have I created?
      - Can I filter my products by type or status?
      instructions:
      - text: List my products.
      - text: Show my {status} products of type {product_type}.
        slots:
          status: query.status
          product_type: query.product_type
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/products'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a payment product
      effect: write
      questions:
      - How do I create a product buyers can pay for in crypto?
      - Can I cap how many times a product can be bought?
      - Can a product deliver access such as a membership?
      instructions:
      - text: Create a {product_type} product called {title} paid to wallet {merchant_wallet}.
        slots:
          product_type: requestBody.product_type
          title: requestBody.title
          merchant_wallet: requestBody.merchant_wallet
      - text: Create product {title} of type {product_type} for {amount_minor_units} paid to {merchant_wallet}.
        slots:
          title: requestBody.title
          product_type: requestBody.product_type
          amount_minor_units: requestBody.amount_minor_units
          merchant_wallet: requestBody.merchant_wallet
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/products/p/{slug}'].get
  update:
    x-apievangelist-phrasing:
      intent: View a product's public page
      effect: read
      questions:
      - What does a buyer see on my product's public page?
      - Can I load a product by its public slug?
      instructions:
      - text: Show the public product page {slug}.
        slots:
          slug: path.slug
      - text: View product {slug} as a buyer.
        slots:
          slug: path.slug
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/products/p/{slug}/connect'].post
  update:
    x-apievangelist-phrasing:
      intent: Start a checkout session for a product
      effect: write
      questions:
      - How does a buyer start paying for a product?
      - Can a checkout session be started with a custom amount?
      instructions:
      - text: Start a checkout session for product {slug}.
        slots:
          slug: path.slug
      - text: Start checkout on {slug} for wallet {payer_wallet} paying {amount_minor_units}.
        slots:
          slug: path.slug
          payer_wallet: requestBody.payer_wallet
          amount_minor_units: requestBody.amount_minor_units
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/products/p/{slug}/resolve-handoff'].post
  update:
    x-apievangelist-phrasing:
      intent: Resolve a signed buyer handoff link
      effect: write
      questions:
      - What buyer identity is encoded in a signed checkout handoff?
      - How does checkout read a handoff token from a buyer link?
      instructions:
      - text: Resolve handoff token {handoff_token} for product {slug}.
        slots:
          handoff_token: requestBody.handoff_token
          slug: path.slug
      - text: Decode the buyer handoff {handoff_token} on {slug}.
        slots:
          handoff_token: requestBody.handoff_token
          slug: path.slug
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/products/{product_id}/payments'].get
  update:
    x-apievangelist-phrasing:
      intent: List payments for a product
      effect: read
      questions:
      - Who has paid for this product?
      - Can I see only confirmed or failed payments for a product?
      instructions:
      - text: List payments for product {product_id}.
        slots:
          product_id: path.product_id
      - text: Show {status} payments on product {product_id}.
        slots:
          status: query.status
          product_id: path.product_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/products/{product_id}/analytics'].get
  update:
    x-apievangelist-phrasing:
      intent: View payment analytics for a product
      effect: read
      questions:
      - How much has a single product earned?
      - What are the conversion and payment stats for one product?
      instructions:
      - text: Show analytics for product {product_id}.
        slots:
          product_id: path.product_id
      - text: Summarize payment performance of product {product_id}.
        slots:
          product_id: path.product_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/products/{product_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a product by ID
      effect: read
      questions:
      - What are the full settings of one of my products?
      - Can I fetch a product's private details by its ID?
      instructions:
      - text: Get product {product_id}.
        slots:
          product_id: path.product_id
      - text: Show the configuration of product {product_id}.
        slots:
          product_id: path.product_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/products/{product_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Archive a product
      effect: destructive
      questions:
      - How do I stop selling a product?
      - Can I archive a product I no longer offer?
      instructions:
      - text: Archive product {product_id}.
        slots:
          product_id: path.product_id
      - text: Take product {product_id} off sale.
        slots:
          product_id: path.product_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/products/{product_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update a product
      effect: write
      questions:
      - Can I change the price of an existing product?
      - Can I switch the payout wallet on a product I already made?
      instructions:
      - text: Change the price of product {product_id} to {amount_minor_units}.
        slots:
          product_id: path.product_id
          amount_minor_units: requestBody.amount_minor_units
      - text: Rename product {product_id} to {title}.
        slots:
          product_id: path.product_id
          title: requestBody.title
      - text: Set payout wallet of product {product_id} to {merchant_wallet}.
        slots:
          product_id: path.product_id
          merchant_wallet: requestBody.merchant_wallet
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/products/{product_id}/handoff-link'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a signed checkout link for a buyer
      effect: write
      questions:
      - Can I send a buyer a personalized checkout link tied to their identity?
      - How long does a signed buyer checkout link last?
      instructions:
      - text: Create a checkout link for product {product_id} for buyer {identity_value}.
        slots:
          product_id: path.product_id
          identity_value: requestBody.identity_value
      - text: Make a buyer link for {identity_value} on product {product_id} expiring in {expires_in_minutes} minutes.
        slots:
          identity_value: requestBody.identity_value
          product_id: path.product_id
          expires_in_minutes: requestBody.expires_in_minutes
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/payments/{payment_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Poll a payment's status
      effect: read
      questions:
      - Has my checkout payment gone through after signing in Phantom?
      - What's the current status of a payment?
      instructions:
      - text: Check status of payment {payment_id}.
        slots:
          payment_id: path.payment_id
      - text: Poll payment {payment_id} until it confirms.
        slots:
          payment_id: path.payment_id
      method: generated
      generated: '2026-09-26'