Tapfiliate · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Tapfiliate REST Affiliates API
25 actions
25 updates
phrasing
extends
openapi/tapfiliate-affiliates-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Tapfiliate's API. It is a proposal applied on top of the contract, not a document Tapfiliate publishes.
What the actions change
x-apievangelist-phrasing
Targets 25 · first 16 shown; the file carries all of them
$.info
$.paths['/affiliates/{affiliate_id}/'].get
$.paths['/affiliates/{affiliate_id}/'].delete
$.paths['/affiliates/'].get
$.paths['/affiliates/'].post
$.paths['/affiliates/{affiliate_id}/group/'].put
$.paths['/affiliates/{affiliate_id}/group/'].delete
$.paths['/affiliates/{affiliate_id}/notes/{id}/'].delete
$.paths['/affiliates/{affiliate_id}/notes/{id}/'].patch
$.paths['/affiliates/{affiliate_id}/notes/'].get
$.paths['/affiliates/{affiliate_id}/notes/'].post
$.paths['/affiliates/{affiliate_id}/meta-data/'].get
$.paths['/affiliates/{affiliate_id}/meta-data/'].put
$.paths['/affiliates/{affiliate_id}/meta-data/{key}/'].get
$.paths['/affiliates/{affiliate_id}/meta-data/{key}/'].put
$.paths['/affiliates/{affiliate_id}/meta-data/{key}/'].delete
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 Tapfiliate REST Affiliates API
version: 1.0.0
extends: openapi/tapfiliate-affiliates-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: 24
- target: $.paths['/affiliates/{affiliate_id}/'].get
update:
x-apievangelist-phrasing:
intent: Retrieve an affiliate
effect: read
questions:
- Can I pull up one affiliate's profile by their ID?
- What details does Tapfiliate keep on a single affiliate?
instructions:
- text: Get affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
- text: Show me the profile of affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/'].delete
update:
x-apievangelist-phrasing:
intent: Delete an affiliate
effect: destructive
questions:
- How do I permanently delete an affiliate from my account?
- Can I remove an affiliate record entirely?
instructions:
- text: Delete affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
- text: Remove affiliate {affiliate_id} and their record.
slots:
affiliate_id: path.affiliate_id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/'].get
update:
x-apievangelist-phrasing:
intent: List affiliates
effect: read
questions:
- Which affiliates belong to a particular affiliate group?
- Can I find an affiliate by their email address?
- Where can I see all the affiliates I've signed up?
instructions:
- text: List all my affiliates.
- text: Find the affiliate with email {email}.
slots:
email: query.email
- text: List affiliates in group {affiliate_group_id}.
slots:
affiliate_group_id: query.affiliate_group_id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/'].post
update:
x-apievangelist-phrasing:
intent: Create an affiliate
effect: write
questions:
- How do I sign up a new affiliate directly through the API?
- What do I need to provide to create an affiliate?
instructions:
- text: Create an affiliate named {firstname} {lastname} with email {email}.
slots:
firstname: requestBody.firstname
lastname: requestBody.lastname
email: requestBody.email
- text: Add {email} as a new affiliate, {firstname} {lastname}, with metadata {meta_data}.
slots:
email: requestBody.email
firstname: requestBody.firstname
lastname: requestBody.lastname
meta_data: requestBody.meta_data
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/group/'].put
update:
x-apievangelist-phrasing:
intent: Assign an affiliate to a group
effect: write
questions:
- Can I move an affiliate into one of my affiliate groups?
- What's the way to put an affiliate in a group?
instructions:
- text: Put affiliate {affiliate_id} in group {group}.
slots:
affiliate_id: path.affiliate_id
group: requestBody.group
- text: Assign affiliate {affiliate_id} to affiliate group {group}.
slots:
affiliate_id: path.affiliate_id
group: requestBody.group
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/group/'].delete
update:
x-apievangelist-phrasing:
intent: Remove an affiliate from their group
effect: destructive
questions:
- Can I take an affiliate out of their group without deleting them?
- What happens to an affiliate's group assignment if I clear it?
instructions:
- text: Remove affiliate {affiliate_id} from their group.
slots:
affiliate_id: path.affiliate_id
- text: Clear the group assignment for affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/notes/{id}/'].delete
update:
x-apievangelist-phrasing:
intent: Delete a note on an affiliate
effect: destructive
questions:
- Can I delete a note I left on an affiliate?
- How do I get rid of an outdated affiliate note?
instructions:
- text: Delete note {id} from affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
id: path.id
- text: Remove note {id} on affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/notes/{id}/'].patch
update:
x-apievangelist-phrasing:
intent: Edit a note on an affiliate
effect: write
questions:
- Can I edit the text of a note I already added to an affiliate?
- Is it possible to correct an existing affiliate note?
instructions:
- text: Change note {id} on affiliate {affiliate_id} to say {note}.
slots:
affiliate_id: path.affiliate_id
id: path.id
note: requestBody.note
- text: Update existing note {id} for affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/notes/'].get
update:
x-apievangelist-phrasing:
intent: List notes on an affiliate
effect: read
questions:
- What notes have been written about a given affiliate?
- Can I read every internal note kept on one affiliate?
instructions:
- text: List notes for affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
- text: Show all the notes on affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/notes/'].post
update:
x-apievangelist-phrasing:
intent: Add a note to an affiliate
effect: write
questions:
- How do I leave an internal note on an affiliate's record?
- Can I attach a new comment to an affiliate?
instructions:
- text: 'Add a note to affiliate {affiliate_id}: {note}.'
slots:
affiliate_id: path.affiliate_id
note: requestBody.note
- text: Write a new note {note} on affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
note: requestBody.note
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/meta-data/'].get
update:
x-apievangelist-phrasing:
intent: Get all metadata for an affiliate
effect: read
questions:
- What custom metadata is stored on an affiliate?
- Can I fetch every metadata key and value for one affiliate at once?
instructions:
- text: Get all metadata for affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
- text: Show the full metadata set on affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/meta-data/'].put
update:
x-apievangelist-phrasing:
intent: Replace an affiliate's metadata
effect: write
questions:
- Can I overwrite an affiliate's entire metadata object in one call?
- What happens to existing affiliate metadata keys when I replace it all?
instructions:
- text: Replace all metadata on affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
- text: Overwrite the whole metadata set for affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/meta-data/{key}/'].get
update:
x-apievangelist-phrasing:
intent: Get one metadata key for an affiliate
effect: read
questions:
- Can I read a single metadata value on an affiliate by its key?
- What value does an affiliate have for a specific metadata key?
instructions:
- text: Get metadata key {key} for affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
key: path.key
- text: Show affiliate {affiliate_id}'s {key} metadata value.
slots:
affiliate_id: path.affiliate_id
key: path.key
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/meta-data/{key}/'].put
update:
x-apievangelist-phrasing:
intent: Set one metadata key on an affiliate
effect: write
questions:
- Can I set just one metadata key on an affiliate without touching the others?
- Is there a way to update a single affiliate metadata field?
instructions:
- text: Set metadata key {key} on affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
key: path.key
- text: Update only the {key} metadata field for affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
key: path.key
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/meta-data/{key}/'].delete
update:
x-apievangelist-phrasing:
intent: Delete one metadata key from an affiliate
effect: destructive
questions:
- Can I remove a single metadata key from an affiliate?
- How do I drop one custom metadata field from an affiliate?
instructions:
- text: Delete metadata key {key} from affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
key: path.key
- text: Remove the {key} metadata entry on affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
key: path.key
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/payout-methods/{payout_method_id}/'].get
update:
x-apievangelist-phrasing:
intent: Get an affiliate's payout method
effect: read
questions:
- Can I see the details of one specific payout method an affiliate has?
- Which payout account details are stored for a given method?
instructions:
- text: Get payout method {payout_method_id} for affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
payout_method_id: path.payout_method_id
- text: Show affiliate {affiliate_id}'s payout method {payout_method_id}.
slots:
affiliate_id: path.affiliate_id
payout_method_id: path.payout_method_id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/payout-methods/{payout_method_id}/'].put
update:
x-apievangelist-phrasing:
intent: Set an affiliate's payout method
effect: write
questions:
- Can I set an affiliate to be paid by PayPal or wire transfer?
- How do I update the payout details for an affiliate?
instructions:
- text: Set payout method {payout_method_id} for affiliate {affiliate_id} to type {type}.
slots:
affiliate_id: path.affiliate_id
payout_method_id: path.payout_method_id
type: requestBody.type
- text: Update payout method {payout_method_id} on affiliate {affiliate_id} with details {details}.
slots:
affiliate_id: path.affiliate_id
payout_method_id: path.payout_method_id
details: requestBody.details
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/payout-methods/'].get
update:
x-apievangelist-phrasing:
intent: List an affiliate's payout methods
effect: read
questions:
- Which payout methods has an affiliate configured?
- Does this affiliate have any way set up to receive payouts?
instructions:
- text: List payout methods for affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
- text: Show every payout option affiliate {affiliate_id} has.
slots:
affiliate_id: path.affiliate_id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{child_affiliate_id}/parent/'].put
update:
x-apievangelist-phrasing:
intent: Set an affiliate's parent (MLM)
effect: write
questions:
- How do I put an affiliate under another affiliate in a multi-level setup?
- Can I make one affiliate the recruiter or upline of another?
instructions:
- text: Make {parent} the parent of affiliate {child_affiliate_id}.
slots:
parent: requestBody.parent
child_affiliate_id: path.child_affiliate_id
- text: Set the MLM parent of affiliate {child_affiliate_id} to {parent}.
slots:
parent: requestBody.parent
child_affiliate_id: path.child_affiliate_id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{child_affiliate_id}/parent/'].delete
update:
x-apievangelist-phrasing:
intent: Remove an affiliate's MLM parent
effect: destructive
questions:
- Can I detach an affiliate from their upline parent?
- What do I do to take an affiliate out of a multi-level hierarchy?
instructions:
- text: Remove the parent from affiliate {child_affiliate_id}.
slots:
child_affiliate_id: path.child_affiliate_id
- text: Detach affiliate {child_affiliate_id} from their MLM parent.
slots:
child_affiliate_id: path.child_affiliate_id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/balances/'].get
update:
x-apievangelist-phrasing:
intent: Get an affiliate's balances
effect: read
questions:
- How much is owed to one particular affiliate right now?
- Can I see an affiliate's balance in each currency?
instructions:
- text: Get the balances for affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
- text: Show what we owe affiliate {affiliate_id} per currency.
slots:
affiliate_id: path.affiliate_id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{affiliate_id}/payments/'].get
update:
x-apievangelist-phrasing:
intent: List payments made to an affiliate
effect: read
questions:
- What payouts has a specific affiliate received?
- Can I page through one affiliate's payment history?
instructions:
- text: List payments made to affiliate {affiliate_id}.
slots:
affiliate_id: path.affiliate_id
- text: Show page {page} of payouts for affiliate {affiliate_id}, {limit} per page.
slots:
affiliate_id: path.affiliate_id
page: query.page
limit: query.limit
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/{id}/programs/'].get
update:
x-apievangelist-phrasing:
intent: List programs an affiliate is in
effect: read
questions:
- Which affiliate programs is a given affiliate enrolled in?
- Is this affiliate part of more than one program?
instructions:
- text: List the programs affiliate {id} belongs to.
slots:
id: path.id
- text: Show every program enrollment for affiliate {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/affiliates/custom-fields/'].get
update:
x-apievangelist-phrasing:
intent: Get affiliate custom field definitions
effect: read
questions:
- What custom fields have I defined for affiliate signups?
- Which extra profile fields do my affiliates fill in?
instructions:
- text: Get the affiliate custom field definitions.
- text: Show me the custom fields configured for affiliates.
method: generated
generated: '2026-10-01'