Leadping · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Leadping Phone Numbers API

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

What the actions change

x-apievangelist-phrasing

Targets 15

$.info
$.paths['/phone-numbers/search'].post
$.paths['/phone-numbers/all/organization'].post
$.paths['/phone-numbers/outgoing/conversation/{conversationId}'].post
$.paths['/phone-numbers/outgoing/new'].post
$.paths['/phone-numbers/outgoing/manual-override'].post
$.paths['/phone-numbers/outgoing/conversation/{conversationId}/override'].post
$.paths['/phone-numbers/outgoing/conversation/{conversationId}/override'].delete
$.paths['/phone-numbers/{phoneNumberId}'].get
$.paths['/phone-numbers/{phoneNumberId}'].put
$.paths['/phone-numbers/{phoneNumberId}'].delete
$.paths['/phone-numbers'].post
$.paths['/phone-numbers/{phoneNumber}/status'].get
$.paths['/phone-numbers/{phoneNumberId}/warmup'].get
$.paths['/phone-numbers/is-available-for-purchase'].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 Leadping Phone Numbers API
  version: 1.0.0
extends: openapi/leadping-phone-numbers-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: 14
- target: $.paths['/phone-numbers/search'].post
  update:
    x-apievangelist-phrasing:
      intent: Search phone numbers to buy
      effect: read
      questions:
      - What phone numbers are available to purchase in my area?
      - Can I search for a number to buy by location?
      instructions:
      - text: Search purchasable numbers near {location}.
        slots:
          location: requestBody.location
      - text: Find available numbers matching {phoneNumber}.
        slots:
          phoneNumber: requestBody.phoneNumber
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers/all/organization'].post
  update:
    x-apievangelist-phrasing:
      intent: List my organization's phone numbers
      effect: read
      questions:
      - Which phone numbers does my organization own?
      - Can I filter my numbers for messaging and warmup management?
      instructions:
      - text: List my organization's phone numbers.
      - text: Search our owned numbers for {search}.
        slots:
          search: requestBody.search
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers/outgoing/conversation/{conversationId}'].post
  update:
    x-apievangelist-phrasing:
      intent: Pick the sender number for a conversation
      effect: read
      questions:
      - Which of my numbers will be used to reply in an existing conversation?
      - How is the sending number chosen for an ongoing thread?
      instructions:
      - text: Select the sender number for conversation {conversationId}.
        slots:
          conversationId: path.conversationId
      - text: Choose the reply number for conversation {conversationId} on {channel}.
        slots:
          conversationId: path.conversationId
          channel: requestBody.channel
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers/outgoing/new'].post
  update:
    x-apievangelist-phrasing:
      intent: Pick the sender number for a new lead
      effect: read
      questions:
      - Which number will be used when I text a new lead for the first time?
      - How does Leadping choose an outgoing number for a brand-new outbound message?
      instructions:
      - text: Select a sender number for a new outbound to {recipientPhoneNumber}.
        slots:
          recipientPhoneNumber: requestBody.recipientPhoneNumber
      - text: Pick an outgoing number for new lead {leadId}.
        slots:
          leadId: requestBody.leadId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers/outgoing/manual-override'].post
  update:
    x-apievangelist-phrasing:
      intent: Validate a sender number override
      effect: read
      questions:
      - Can I check if a number is allowed as a manual sender before using it?
      - Is a particular outgoing-number override eligible for delivery?
      instructions:
      - text: Validate using number {fromPhoneNumberId} as a manual override for {selection}.
        slots:
          fromPhoneNumberId: requestBody.fromPhoneNumberId
          selection: requestBody.selection
      - text: Check if {fromPhoneNumberId} is an eligible manual sender for {selection}.
        slots:
          fromPhoneNumberId: requestBody.fromPhoneNumberId
          selection: requestBody.selection
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers/outgoing/conversation/{conversationId}/override'].post
  update:
    x-apievangelist-phrasing:
      intent: Pin a sender number to a conversation
      effect: write
      questions:
      - How do I force a conversation to always use one specific number?
      - Can I override the automatic sender for future messages in a thread?
      instructions:
      - text: Set conversation {conversationId} to send from {fromPhoneNumberId} for {selection}.
        slots:
          conversationId: path.conversationId
          fromPhoneNumberId: requestBody.fromPhoneNumberId
          selection: requestBody.selection
      - text: Pin number {fromPhoneNumberId} to conversation {conversationId} using selection {selection}.
        slots:
          fromPhoneNumberId: requestBody.fromPhoneNumberId
          conversationId: path.conversationId
          selection: requestBody.selection
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers/outgoing/conversation/{conversationId}/override'].delete
  update:
    x-apievangelist-phrasing:
      intent: Clear a conversation's sender override
      effect: destructive
      questions:
      - How do I go back to automatic number selection for a conversation?
      - Can I remove the pinned sender number from a thread?
      instructions:
      - text: Clear the sender override on conversation {conversationId}.
        slots:
          conversationId: path.conversationId
      - text: Return conversation {conversationId} to automatic number selection.
        slots:
          conversationId: path.conversationId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers/{phoneNumberId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a phone number's details
      effect: read
      questions:
      - How do I see the assignment and messaging status of one of my numbers?
      - When was a particular number purchased?
      instructions:
      - text: Show phone number {phoneNumberId}.
        slots:
          phoneNumberId: path.phoneNumberId
      - text: Get details and assignment for number {phoneNumberId}.
        slots:
          phoneNumberId: path.phoneNumberId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers/{phoneNumberId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a phone number's settings
      effect: write
      questions:
      - How do I give one of my phone numbers a friendly label?
      - Can I change the settings of a number I already own?
      instructions:
      - text: Label phone number {phoneNumberId} as {name}.
        slots:
          phoneNumberId: path.phoneNumberId
          name: requestBody.name
      - text: Update settings for {phoneNumberId} with number {number}.
        slots:
          phoneNumberId: path.phoneNumberId
          number: requestBody.number
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers/{phoneNumberId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a phone number
      effect: destructive
      questions:
      - How do I get rid of a number I no longer use for leads?
      - Can I remove a phone number from my organization?
      instructions:
      - text: Delete phone number {phoneNumberId}.
        slots:
          phoneNumberId: path.phoneNumberId
      - text: Remove number {phoneNumberId} from my organization.
        slots:
          phoneNumberId: path.phoneNumberId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers'].post
  update:
    x-apievangelist-phrasing:
      intent: Buy a phone number
      effect: write
      questions:
      - How do I buy a new phone number for texting leads?
      - Can I add a number and name it at the same time?
      instructions:
      - text: Buy phone number {number}.
        slots:
          number: requestBody.number
      - text: Purchase {number} and label it {name}.
        slots:
          number: requestBody.number
          name: requestBody.name
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers/{phoneNumber}/status'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a phone number's provider status
      effect: read
      questions:
      - Is my number verified with the carrier?
      - What is the provider status of a number over the last few days?
      instructions:
      - text: Get the provider status of {phoneNumber}.
        slots:
          phoneNumber: path.phoneNumber
      - text: Show verification status for {phoneNumber} over the last {windowDays} days.
        slots:
          phoneNumber: path.phoneNumber
          windowDays: query.windowDays
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers/{phoneNumberId}/warmup'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a phone number's warmup status
      effect: read
      questions:
      - How far along is my new number's warmup?
      - What sending limits apply to a number during warmup?
      instructions:
      - text: Show warmup status for number {phoneNumberId}.
        slots:
          phoneNumberId: path.phoneNumberId
      - text: Get warmup limits for {phoneNumberId} from {startDate} to {endDate}.
        slots:
          phoneNumberId: path.phoneNumberId
          startDate: query.startDate
          endDate: query.endDate
      method: generated
      generated: '2026-10-01'
- target: $.paths['/phone-numbers/is-available-for-purchase'].post
  update:
    x-apievangelist-phrasing:
      intent: Check if a number can be bought
      effect: read
      questions:
      - Is a specific phone number still available to purchase?
      - Can I confirm a number is buyable before I try to add it?
      instructions:
      - text: Check if {phoneNumber} is available to buy.
        slots:
          phoneNumber: requestBody.phoneNumber
      - text: Confirm I can purchase number {phoneNumber}.
        slots:
          phoneNumber: requestBody.phoneNumber
      method: generated
      generated: '2026-10-01'