Impact · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Brand Contacts API

6 actions 6 updates phrasing extends openapi/impact-contacts-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Impact's API. It is a proposal applied on top of the contract, not a document Impact publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 6

$.info
$.paths['/Advertisers/{AccountSID}/Campaigns/{CampaignId}/Contacts'].get
$.paths['/Advertisers/{AccountSID}/Campaigns/{CampaignId}/Contacts'].post
$.paths['/Advertisers/{AccountSID}/Campaigns/{CampaignId}/Contacts/{ContactId}'].get
$.paths['/Advertisers/{AccountSID}/Campaigns/{CampaignId}/Contacts/{ContactId}'].put
$.paths['/Advertisers/{AccountSID}/Campaigns/{CampaignId}/Contacts/{ContactId}'].delete

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 Brand Contacts API
  version: 1.0.0
extends: openapi/impact-contacts-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: 5
- target: $.paths['/Advertisers/{AccountSID}/Campaigns/{CampaignId}/Contacts'].get
  update:
    x-apievangelist-phrasing:
      intent: List contacts on a campaign
      effect: read
      questions:
      - Who are the partner contacts on my campaign?
      - Can I filter campaign contacts by title or partner account?
      instructions:
      - text: List contacts for campaign {campaign} in account {sid}.
        slots:
          sid: path.AccountSID
          campaign: path.CampaignId
      - text: Show campaign {campaign} contacts for partner account {acct}.
        slots:
          campaign: path.CampaignId
          acct: query.AccountId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/Advertisers/{AccountSID}/Campaigns/{CampaignId}/Contacts'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a partner contact
      effect: write
      questions:
      - How do I add a new contact for a partner account?
      - Can I upload a profile image when creating a contact?
      instructions:
      - text: Create contact {first} {last} ({email}) for accounts {accounts} on campaign {campaign} in {sid}.
        slots:
          sid: path.AccountSID
          campaign: path.CampaignId
          first: requestBody.FirstName
          last: requestBody.LastName
          email: requestBody.EmailAddress
          accounts: requestBody.Accounts
      - text: Add {email} as a contact named {first} {last}, linked to {accounts}, in campaign {campaign}.
        slots:
          email: requestBody.EmailAddress
          first: requestBody.FirstName
          last: requestBody.LastName
          accounts: requestBody.Accounts
          campaign: path.CampaignId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/Advertisers/{AccountSID}/Campaigns/{CampaignId}/Contacts/{ContactId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a contact's details
      effect: read
      questions:
      - What info do I have on a specific partner contact?
      - Is a contact user-created or system-created?
      instructions:
      - text: Get contact {contact} on campaign {campaign} in account {sid}.
        slots:
          sid: path.AccountSID
          campaign: path.CampaignId
          contact: path.ContactId
      - text: Show details for contact {contact} in campaign {campaign}.
        slots:
          campaign: path.CampaignId
          contact: path.ContactId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/Advertisers/{AccountSID}/Campaigns/{CampaignId}/Contacts/{ContactId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a contact
      effect: write
      questions:
      - Can I change a system-created contact's title?
      - How do I update a contact's email or phone number?
      instructions:
      - text: Update contact {contact} on campaign {campaign} in {sid} with title {title}.
        slots:
          sid: path.AccountSID
          campaign: path.CampaignId
          contact: path.ContactId
          title: requestBody.Title
      - text: Change the email of contact {contact} in campaign {campaign} to {email}.
        slots:
          campaign: path.CampaignId
          contact: path.ContactId
          email: requestBody.EmailAddress
      method: generated
      generated: '2026-09-26'
- target: $.paths['/Advertisers/{AccountSID}/Campaigns/{CampaignId}/Contacts/{ContactId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a contact
      effect: destructive
      questions:
      - Can I permanently remove a contact I created?
      - Is deleting a partner contact reversible?
      instructions:
      - text: Delete contact {contact} from campaign {campaign} in account {sid}.
        slots:
          sid: path.AccountSID
          campaign: path.CampaignId
          contact: path.ContactId
      - text: Permanently remove user-created contact {contact} in campaign {campaign}.
        slots:
          campaign: path.CampaignId
          contact: path.ContactId
      method: generated
      generated: '2026-09-26'