Boom Ai · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Boom CDP Custom Objects API

9 actions 9 updates phrasing extends openapi/boom-ai-cdp-custom-objects-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 9

$.info
$.paths['/api/v1/cdp/custom-objects'].get
$.paths['/api/v1/cdp/custom-objects'].post
$.paths['/api/v1/cdp/custom-objects/{type}/{externalId}'].get
$.paths['/api/v1/cdp/custom-objects/{type}/{externalId}'].delete
$.paths['/api/v1/cdp/custom-objects/batch'].post
$.paths['/api/v1/cdp/custom-objects/types'].get
$.paths['/api/v1/cdp/custom-objects/types'].post
$.paths['/api/v1/cdp/custom-objects/types/{type}'].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 Custom Objects API
  version: 1.0.0
extends: openapi/boom-ai-cdp-custom-objects-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: 8
- target: $.paths['/api/v1/cdp/custom-objects'].get
  update:
    x-apievangelist-phrasing:
      intent: List custom objects of one type
      effect: read
      questions:
      - Which orders or other custom records have I stored in the CDP for a given type?
      - Can I page through all custom objects of one type, newest first?
      instructions:
      - text: List my {type} custom objects.
        slots:
          type: query.type
      - text: Show the latest {limit} custom objects of type {type}.
        slots:
          type: query.type
          limit: query.limit
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/cdp/custom-objects'].post
  update:
    x-apievangelist-phrasing:
      intent: Create or update a custom object
      effect: write
      questions:
      - How do I save a single order or subscription record into the CDP?
      - Are a custom object's attributes merged or fully replaced when I upsert it again?
      instructions:
      - text: Upsert {type} object {externalId} with attributes {attributes}.
        slots:
          type: requestBody.type
          externalId: requestBody.externalId
          attributes: requestBody.attributes
      - text: Save a {type} record {externalId} labeled {displayName}.
        slots:
          type: requestBody.type
          externalId: requestBody.externalId
          displayName: requestBody.displayName
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/cdp/custom-objects/{type}/{externalId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Read one custom object
      effect: read
      questions:
      - What attributes are stored on a specific custom object?
      - Can I look up a custom record by its type and my own external id?
      instructions:
      - text: Get {type} object {externalId}.
        slots:
          type: path.type
          externalId: path.externalId
      - text: Show me the stored {type} record with id {externalId}.
        slots:
          type: path.type
          externalId: path.externalId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/cdp/custom-objects/{type}/{externalId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a custom object
      effect: destructive
      questions:
      - What happens to a custom object's relationships when I delete it?
      - Is deleting a custom object safe to repeat?
      instructions:
      - text: Delete {type} object {externalId}.
        slots:
          type: path.type
          externalId: path.externalId
      - text: Remove the {type} record {externalId} and its links.
        slots:
          type: path.type
          externalId: path.externalId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/cdp/custom-objects/batch'].post
  update:
    x-apievangelist-phrasing:
      intent: Bulk upsert custom objects
      effect: write
      questions:
      - How many custom objects can I load into the CDP in a single request?
      - Is it safe to retry a bulk custom object import that failed partway?
      instructions:
      - text: 'Bulk upsert these custom objects: {items}.'
        slots:
          items: requestBody.items
      - text: 'Import this batch of up to 1000 custom records: {items}.'
        slots:
          items: requestBody.items
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/cdp/custom-objects/types'].get
  update:
    x-apievangelist-phrasing:
      intent: List custom object types
      effect: read
      questions:
      - Which custom object types have been defined for my organization?
      - What kinds of custom records can I store in the CDP today?
      instructions:
      - text: List my custom object types.
      - text: Show every custom object type defined in the CDP.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/cdp/custom-objects/types'].post
  update:
    x-apievangelist-phrasing:
      intent: Define a new custom object type
      effect: write
      questions:
      - How do I define a new kind of custom record, like orders, before loading any?
      - Why is my custom object upsert rejected for an unknown type?
      instructions:
      - text: Create a custom object type {name} labeled {displayName}.
        slots:
          name: requestBody.name
          displayName: requestBody.displayName
      - text: Define object type {name} ({displayName}) described as {description}.
        slots:
          name: requestBody.name
          displayName: requestBody.displayName
          description: requestBody.description
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/cdp/custom-objects/types/{type}'].get
  update:
    x-apievangelist-phrasing:
      intent: Read one custom object type
      effect: read
      questions:
      - What is the label and description of a particular custom object type?
      - Does a given custom object type exist yet?
      instructions:
      - text: Get custom object type {type}.
        slots:
          type: path.type
      - text: Show the definition of object type {type}.
        slots:
          type: path.type
      method: generated
      generated: '2026-09-26'