# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Thehiveryiq Com Affordances API version: 1.0.0 extends: openapi/thehiveryiq-com-affordances-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: 28 - target: $.paths['/v1/affordance/catalog'].get update: x-apievangelist-phrasing: intent: List affordance catalogs across all supermodels effect: read questions: - Which affordances are available across every hot supermodel? - Can I include cold supermodels when browsing the full affordance catalog? instructions: - text: Show me the affordance catalog for every hot supermodel. - text: 'List the affordance catalogs for all supermodels, include cold ones: {include_cold}.' slots: include_cold: query.include_cold method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/catalog'].get update: x-apievangelist-phrasing: intent: Get one supermodel's affordance catalog effect: read questions: - What affordance types does a single supermodel offer? - Where can I see the catalog of affordances for just one supermodel? instructions: - text: Show the affordance catalog for supermodel {supermodel}. slots: supermodel: path.supermodel - text: Fetch which affordance types {supermodel} supports. slots: supermodel: path.supermodel method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/list'].get update: x-apievangelist-phrasing: intent: List a supermodel's open affordances effect: read questions: - How do I see the individual affordances opened against a supermodel? - Can I filter a supermodel's affordance instances by type or state? instructions: - text: List the affordances opened on supermodel {supermodel}. slots: supermodel: path.supermodel - text: List {type} affordances on {supermodel} in state {state}, up to {limit}. slots: type: query.type supermodel: path.supermodel state: query.state limit: query.limit method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/affordance/{aff_id}'].get update: x-apievangelist-phrasing: intent: Get a single affordance by ID effect: read questions: - How can I look up one specific affordance by its ID? - What details are returned for a single affordance record? instructions: - text: Show affordance {aff_id}. slots: aff_id: path.aff_id - text: Look up the current state of affordance {aff_id}. slots: aff_id: path.aff_id method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/health'].get update: x-apievangelist-phrasing: intent: Check a supermodel's affordance health effect: read questions: - Is the affordance service for a given supermodel healthy? - Can I check affordance health for one supermodel before opening something on it? instructions: - text: Check affordance health for supermodel {supermodel}. slots: supermodel: path.supermodel - text: Tell me whether {supermodel}'s affordances are up. slots: supermodel: path.supermodel method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/pull'].post update: x-apievangelist-phrasing: intent: Pull a supermodel's cord with a reason effect: write questions: - How do I pull the cord on a supermodel and say why? - Can I add a tip to a pull so it jumps the queue? instructions: - text: Pull the cord on {supermodel} because {reason}. slots: supermodel: path.supermodel reason: query.reason - text: Pull {supermodel} for reason {reason} with a {bonus} bonus to jump the queue. slots: supermodel: path.supermodel reason: query.reason bonus: query.bonus method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/light-fuse'].post update: x-apievangelist-phrasing: intent: Light a fuse on a supermodel effect: write questions: - How do I light a fuse on a supermodel with a predicted daily USDC lift? - Can a fuse ignition carry kit deltas and a rationale? instructions: - text: Light fuse {fuse_id} on {supermodel} as caller {caller_did}. slots: fuse_id: query.fuse_id supermodel: path.supermodel caller_did: requestBody.caller_did - text: Light fuse {fuse_id} on {supermodel} for {caller_did}, predicting {predicted_lift_usdc_per_day} USDC/day lift. slots: fuse_id: query.fuse_id supermodel: path.supermodel caller_did: requestBody.caller_did predicted_lift_usdc_per_day: requestBody.predicted_lift_usdc_per_day method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/grab'].post update: x-apievangelist-phrasing: intent: Grab a supermodel's rope for a duration effect: write questions: - How do I grab the rope on a supermodel for a set number of seconds? - What does the grab-rope affordance need from the caller? instructions: - text: Grab the rope on {supermodel} for {duration_sec} seconds as {caller_did}. slots: supermodel: path.supermodel duration_sec: query.duration_sec caller_did: requestBody.caller_did - text: Hold {supermodel}'s rope for {duration_sec} seconds on my behalf, {caller_did}. slots: supermodel: path.supermodel duration_sec: query.duration_sec caller_did: requestBody.caller_did method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/snip'].post update: x-apievangelist-phrasing: intent: Snip a supermodel with a reason effect: write questions: - How do I snip a supermodel and record why? - Does the snip affordance require a reason and a caller DID? instructions: - text: Snip {supermodel} because {reason}, caller {caller_did}. slots: supermodel: path.supermodel reason: query.reason caller_did: requestBody.caller_did - text: Use the snip affordance on {supermodel} with reason {reason} as {caller_did}. slots: supermodel: path.supermodel reason: query.reason caller_did: requestBody.caller_did method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/hook'].post update: x-apievangelist-phrasing: intent: Set an event hook on a supermodel effect: write questions: - How do I hook a supermodel so something fires on an event? - Can I prepay USDC and cap the number of triggers on a hook? instructions: - text: Hook {supermodel} on event {event} for caller {caller_did}. slots: supermodel: path.supermodel event: query.event caller_did: requestBody.caller_did - text: Set a hook on {supermodel} for {event}, {n_triggers} triggers, prepaying {prepay_usdc} USDC, as {caller_did}. slots: supermodel: path.supermodel event: query.event n_triggers: requestBody.n_triggers prepay_usdc: requestBody.prepay_usdc caller_did: requestBody.caller_did method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/hooks'].get update: x-apievangelist-phrasing: intent: List hooks set on a supermodel effect: read questions: - Which hooks are currently attached to a supermodel? - Can I see only the hooks listening for one event? instructions: - text: List the hooks on supermodel {supermodel}. slots: supermodel: path.supermodel - text: Show hooks on {supermodel} listening for event {event}. slots: supermodel: path.supermodel event: query.event method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/ring'].post update: x-apievangelist-phrasing: intent: Ring a supermodel's bell effect: write questions: - How do I ring the bell on a supermodel? - What does a caller need to supply to ring a supermodel's bell? instructions: - text: Ring the bell on {supermodel} as {caller_did}. slots: supermodel: path.supermodel caller_did: requestBody.caller_did - text: Ring {supermodel}'s bell for me. slots: supermodel: path.supermodel method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/trip'].post update: x-apievangelist-phrasing: intent: Trip a supermodel's tripwire effect: write questions: - How do I trip the tripwire on a supermodel? - Is a caller DID all that's needed to trip a supermodel? instructions: - text: Trip the tripwire on {supermodel} as {caller_did}. slots: supermodel: path.supermodel caller_did: requestBody.caller_did - text: Trip {supermodel} now. slots: supermodel: path.supermodel method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/top-off'].post update: x-apievangelist-phrasing: intent: Request a USDC top-off for a supermodel effect: write questions: - How does an agent ask for a USDC top-off on a supermodel? - Can a top-off request refund whatever isn't used? - What comes back when I post a top-off ask? instructions: - text: Ask for a {needed_usdc} USDC top-off on {supermodel} because {reason}. slots: needed_usdc: requestBody.needed_usdc supermodel: path.supermodel reason: requestBody.reason - text: 'Request {needed_usdc} USDC top-off on {supermodel} for {reason}, refund unused: {refund_unused}.' slots: needed_usdc: requestBody.needed_usdc supermodel: path.supermodel reason: requestBody.reason refund_unused: requestBody.refund_unused method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/top-off/{top_off_id}/fulfill'].post update: x-apievangelist-phrasing: intent: Fund someone's top-off request effect: write questions: - How do I fulfill an open top-off request with USDC? - Can a different caller fund a top-off another agent asked for? instructions: - text: Fulfill top-off {top_off_id} with {amount_usdc} USDC from {caller_did}. slots: top_off_id: path.top_off_id amount_usdc: requestBody.amount_usdc caller_did: requestBody.caller_did - text: Fund top-off request {top_off_id} for {amount_usdc} USDC as {caller_did}. slots: top_off_id: path.top_off_id amount_usdc: requestBody.amount_usdc caller_did: requestBody.caller_did method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/top-off/{top_off_id}/complete'].post update: x-apievangelist-phrasing: intent: Close out a top-off with actual burn effect: write questions: - How do I report how much of a top-off was actually burned? - What marks a funded top-off as complete? instructions: - text: Complete top-off {top_off_id} with an actual burn of {actual_burn_usdc} USDC. slots: top_off_id: path.top_off_id actual_burn_usdc: requestBody.actual_burn_usdc - text: Mark top-off {top_off_id} done; we used {actual_burn_usdc} USDC. slots: top_off_id: path.top_off_id actual_burn_usdc: requestBody.actual_burn_usdc method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/tip'].post update: x-apievangelist-phrasing: intent: Tip a supermodel's tip jar effect: write questions: - How do I drop a USDC tip into a supermodel's tip jar? - Does a tip have to reference a parent receipt? instructions: - text: Tip {supermodel} {amount_usdc} USDC from {caller_did} against receipt {parent_receipt_hash}. slots: supermodel: path.supermodel amount_usdc: requestBody.amount_usdc caller_did: requestBody.caller_did parent_receipt_hash: requestBody.parent_receipt_hash - text: Put {amount_usdc} USDC in {supermodel}'s tip jar for receipt {parent_receipt_hash}. slots: amount_usdc: requestBody.amount_usdc supermodel: path.supermodel parent_receipt_hash: requestBody.parent_receipt_hash method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/sos'].post update: x-apievangelist-phrasing: intent: Raise an SOS funding request effect: write questions: - How does a supermodel send an SOS asking for USDC by a deadline? - Can I offer rescuers a reward share in basis points on an SOS? instructions: - text: Send an SOS for {supermodel} needing {needed_usdc} USDC within {deadline_sec} seconds, sharing {reward_share_bps} bps. slots: supermodel: path.supermodel needed_usdc: requestBody.needed_usdc deadline_sec: requestBody.deadline_sec reward_share_bps: requestBody.reward_share_bps - text: 'Raise an SOS on {supermodel}: {needed_usdc} USDC, {deadline_sec}s deadline, {reward_share_bps} bps reward.' slots: supermodel: path.supermodel needed_usdc: requestBody.needed_usdc deadline_sec: requestBody.deadline_sec reward_share_bps: requestBody.reward_share_bps method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/sos/active'].get update: x-apievangelist-phrasing: intent: List active SOS requests effect: read questions: - Which SOS calls are open right now that I could answer? - Where do I find supermodels currently asking for rescue funding? instructions: - text: List all active SOS requests. - text: Show me the open SOS calls waiting for a rescuer. method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/sos/{sos_id}/fulfill'].post update: x-apievangelist-phrasing: intent: Answer an SOS request effect: write questions: - How do I respond to and fulfill an open SOS? - What do I send to claim an SOS as the rescuer? instructions: - text: Fulfill SOS {sos_id} as {caller_did}. slots: sos_id: path.sos_id caller_did: requestBody.caller_did - text: Answer SOS request {sos_id} for me. slots: sos_id: path.sos_id method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/iou'].post update: x-apievangelist-phrasing: intent: Borrow USDC via an IOU effect: write questions: - Can a supermodel borrow USDC by writing an IOU with interest? - How is interest expressed on an IOU request? instructions: - text: Open an IOU for {supermodel} borrowing {borrow_usdc} USDC at {interest_bps} bps. slots: supermodel: path.supermodel borrow_usdc: requestBody.borrow_usdc interest_bps: requestBody.interest_bps - text: Borrow {borrow_usdc} USDC on {supermodel} at {interest_bps} bps interest. slots: borrow_usdc: requestBody.borrow_usdc supermodel: path.supermodel interest_bps: requestBody.interest_bps method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/iou/{iou_id}/repay'].post update: x-apievangelist-phrasing: intent: Repay an IOU effect: write questions: - How do I pay back an IOU? - Can I repay part of an IOU by choosing the USDC amount? instructions: - text: Repay {repay_usdc} USDC on IOU {iou_id}. slots: repay_usdc: requestBody.repay_usdc iou_id: path.iou_id - text: Pay down IOU {iou_id} by {repay_usdc} USDC. slots: iou_id: path.iou_id repay_usdc: requestBody.repay_usdc method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/bucket'].post update: x-apievangelist-phrasing: intent: Open a prefilled USDC bucket effect: write questions: - How do I set up a bucket of USDC for a supermodel to draw from? - What amount does a new bucket fill to? instructions: - text: Open a bucket on {supermodel} filled to {fill_to} USDC for {caller_did}. slots: supermodel: path.supermodel fill_to: query.fill_to caller_did: requestBody.caller_did - text: Fill a {fill_to} USDC bucket for {supermodel}. slots: fill_to: query.fill_to supermodel: path.supermodel method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/bucket/{bucket_id}/burn'].post update: x-apievangelist-phrasing: intent: Spend USDC out of a bucket effect: write questions: - How do I burn USDC out of an existing bucket? - Can I draw down just part of a bucket? instructions: - text: Burn {amount_usdc} USDC from bucket {bucket_id}. slots: amount_usdc: requestBody.amount_usdc bucket_id: path.bucket_id - text: Draw {amount_usdc} USDC out of bucket {bucket_id}. slots: amount_usdc: requestBody.amount_usdc bucket_id: path.bucket_id method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/drip'].post update: x-apievangelist-phrasing: intent: Start a USDC drip to a supermodel effect: write questions: - Can I stream USDC to a supermodel at a per-second rate? - How do I cap the total amount a drip will pay out? instructions: - text: Start a drip to {supermodel} at {rate_per_sec} per second, capped at {max_total}, from {caller_did}. slots: supermodel: path.supermodel rate_per_sec: query.rate_per_sec max_total: query.max_total caller_did: requestBody.caller_did - text: Drip {rate_per_sec}/sec into {supermodel} up to {max_total} total. slots: rate_per_sec: query.rate_per_sec supermodel: path.supermodel max_total: query.max_total method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/drip/{drip_id}/stop'].post update: x-apievangelist-phrasing: intent: Stop a running drip effect: destructive questions: - How do I stop a USDC drip that's already running? - Can I shut off a drip before it reaches its max total? instructions: - text: Stop drip {drip_id}. slots: drip_id: path.drip_id - text: Turn off the running drip line {drip_id} now. slots: drip_id: path.drip_id method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/phone-home'].post update: x-apievangelist-phrasing: intent: Phone home for a decision effect: write questions: - How does a supermodel phone home when it's waiting on something? - Can a phone-home request state what it would cost to skip the wait? instructions: - text: 'Phone home from {supermodel}: waiting for {waiting_for}, skip costs {cost_to_skip_usdc} USDC.' slots: supermodel: path.supermodel waiting_for: requestBody.waiting_for cost_to_skip_usdc: requestBody.cost_to_skip_usdc - text: Send a phone-home ask for {supermodel} about {waiting_for} with a {cost_to_skip_usdc} USDC skip price. slots: supermodel: path.supermodel waiting_for: requestBody.waiting_for cost_to_skip_usdc: requestBody.cost_to_skip_usdc method: generated generated: '2026-09-26' - target: $.paths['/v1/affordance/{supermodel}/phone-home/respond'].post update: x-apievangelist-phrasing: intent: Answer a supermodel's phone-home effect: write questions: - How do I reply to a phone-home request with a decision? - Can I pay to skip the wait when answering a phone-home? instructions: - text: Respond to phone-home {ph_id} on {supermodel} with decision {decision}. slots: ph_id: query.ph_id supermodel: path.supermodel decision: requestBody.decision - text: 'Answer phone-home {ph_id} for {supermodel}: {decision}, skip paid {skip_paid}.' slots: ph_id: query.ph_id supermodel: path.supermodel decision: requestBody.decision skip_paid: requestBody.skip_paid method: generated generated: '2026-09-26'