Boom Ai · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Boom CDP People API

7 actions 7 updates phrasing extends openapi/boom-ai-cdp-people-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Boom Ai's API. It is a proposal applied on top of the contract, not a document Boom Ai publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 7

$.info
$.paths['/api/v1/cdp/people'].get
$.paths['/api/v1/cdp/people'].post
$.paths['/api/v1/cdp/people/{externalId}'].get
$.paths['/api/v1/cdp/people/{externalId}'].delete
$.paths['/api/v1/cdp/people/batch'].post
$.paths['/api/v1/cdp/people/search'].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 Boom CDP People API
  version: 1.0.0
extends: openapi/boom-ai-cdp-people-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: 6
- target: $.paths['/api/v1/cdp/people'].get
  update:
    x-apievangelist-phrasing:
      intent: List people in the CDP
      effect: read
      questions:
      - Who are the most recently added people in my customer data?
      - Can I page through every person profile in the CDP?
      instructions:
      - text: List the people in my CDP, newest first.
      - text: Show the next {limit} people after cursor {cursor}.
        slots:
          limit: query.limit
          cursor: query.cursor
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/cdp/people'].post
  update:
    x-apievangelist-phrasing:
      intent: Create or update a person
      effect: write
      questions:
      - How do I add a customer with their phone number so Boom can reach them?
      - Are a person's custom attributes merged or overwritten when I update them?
      instructions:
      - text: Upsert person {externalId} with email {email} and phone {phoneNumber}.
        slots:
          externalId: requestBody.externalId
          email: requestBody.email
          phoneNumber: requestBody.phoneNumber
      - text: Save person {externalId} named {firstName} {lastName}.
        slots:
          externalId: requestBody.externalId
          firstName: requestBody.firstName
          lastName: requestBody.lastName
      - text: Set the custom attributes of person {externalId} to {attributes}.
        slots:
          externalId: requestBody.externalId
          attributes: requestBody.attributes
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/cdp/people/{externalId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Read one person by external id
      effect: read
      questions:
      - What profile data do we hold for a customer with a known external id?
      - Can I fetch a person directly by my own system's id?
      instructions:
      - text: Get person {externalId}.
        slots:
          externalId: path.externalId
      - text: Show the CDP profile for customer {externalId}.
        slots:
          externalId: path.externalId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/cdp/people/{externalId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a person
      effect: destructive
      questions:
      - Are a person's events kept when I delete their profile?
      - How do I remove a customer from the CDP?
      instructions:
      - text: Delete person {externalId}.
        slots:
          externalId: path.externalId
      - text: Remove customer {externalId} and their outgoing links.
        slots:
          externalId: path.externalId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/cdp/people/batch'].post
  update:
    x-apievangelist-phrasing:
      intent: Bulk upsert people
      effect: write
      questions:
      - How many customers can I import into the CDP in one request?
      - Is a bulk people import safe to retry?
      instructions:
      - text: 'Bulk upsert these people: {items}.'
        slots:
          items: requestBody.items
      - text: 'Import up to 1000 customer profiles at once: {items}.'
        slots:
          items: requestBody.items
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/cdp/people/search'].get
  update:
    x-apievangelist-phrasing:
      intent: Search people by name, email or phone
      effect: read
      questions:
      - How do I find a customer when I only know part of their email or phone number?
      - Can I search people by name and get the best matches first?
      instructions:
      - text: Search my people for {query}.
        slots:
          query: query.query
      - text: Find the top {limit} people matching {query}.
        slots:
          query: query.query
          limit: query.limit
      method: generated
      generated: '2026-09-26'