Birdeye · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Birdeye GMB Products API

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

What the actions change

x-apievangelist-phrasing

Targets 9

$.info
$.paths['/v1/listing/public/product/setup/googleMerchant'].post
$.paths['/v1/listing/public/product'].post
$.paths['/v1/listing/public/product/{productId}'].put
$.paths['/v1/listing/public/product/{productIdentifier}'].get
$.paths['/v1/listing/public/product/deleteProduct'].post
$.paths['/v1/listing/public/product/getList'].post
$.paths['/v1/listing/public/product/addProduct'].post
$.paths['/v1/listing/public/product/removeProduct'].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 Birdeye GMB Products API
  version: 1.0.0
extends: openapi/birdeye-gmb-products-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['/v1/listing/public/product/setup/googleMerchant'].post
  update:
    x-apievangelist-phrasing:
      intent: Connect a Google Merchant Center account
      effect: write
      questions:
      - Can I connect my Google Merchant Center account to manage product listings?
      - What ID do I need to onboard a merchant account?
      instructions:
      - text: Onboard Google Merchant account {merchantId}.
        slots:
          merchantId: query.merchantId
      - text: Connect Merchant Center ID {merchantId} for product listings.
        slots:
          merchantId: query.merchantId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/listing/public/product'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a product listing
      effect: write
      questions:
      - Can I create a product listing with a price and image for my Google profile?
      - What fields are required to add a new product, like category and status?
      instructions:
      - text: Create product {title} priced {price} with image {imageLink}, category {googleProductCategoryId}, status {status}.
        slots:
          title: requestBody.title
          price: requestBody.price
          imageLink: requestBody.imageLink
          googleProductCategoryId: requestBody.googleProductCategoryId
          status: requestBody.status
      - text: Add a new product {title} for locations {businessNumbers}.
        slots:
          title: requestBody.title
          businessNumbers: requestBody.businessNumbers
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/listing/public/product/{productId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a product listing
      effect: write
      questions:
      - Can I change the price or sale price of an existing product listing?
      - Can I edit a product I already listed?
      instructions:
      - text: Update product {productId} to price {price}.
        slots:
          productId: path.productId
          price: requestBody.price
      - text: Set sale price {salePrice} on product {productId}.
        slots:
          salePrice: requestBody.salePrice
          productId: path.productId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/listing/public/product/{productIdentifier}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one product listing
      effect: read
      questions:
      - Can I fetch one product listing by its identifier?
      - What details are stored for a single product?
      instructions:
      - text: Get product listing {productIdentifier}.
        slots:
          productIdentifier: path.productIdentifier
      - text: Show product {productIdentifier}.
        slots:
          productIdentifier: path.productIdentifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/listing/public/product/deleteProduct'].post
  update:
    x-apievangelist-phrasing:
      intent: Delete product listings
      effect: destructive
      questions:
      - Can I delete several product listings at once?
      - Is there a way to permanently remove products from the catalog?
      instructions:
      - text: Delete products {productIds}.
        slots:
          productIds: requestBody.productIds
      - text: Permanently remove product listings {productIds}.
        slots:
          productIds: requestBody.productIds
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/listing/public/product/getList'].post
  update:
    x-apievangelist-phrasing:
      intent: List product listings
      effect: read
      questions:
      - Which products are listed for my locations?
      - Can I filter the product list by status or search text?
      instructions:
      - text: List product listings matching {search}.
        slots:
          search: requestBody.search
      - text: Get products with status {status} for locations {businessNumbers}.
        slots:
          status: requestBody.status
          businessNumbers: requestBody.businessNumbers
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/listing/public/product/addProduct'].post
  update:
    x-apievangelist-phrasing:
      intent: Add existing products to a location
      effect: write
      questions:
      - Can I publish existing products to a location?
      - How do I attach products I already created to a store location?
      instructions:
      - text: Add products {productIds} to the location.
        slots:
          productIds: requestBody.productIds
      - text: Attach existing products {productIds} to a location.
        slots:
          productIds: requestBody.productIds
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/listing/public/product/removeProduct'].post
  update:
    x-apievangelist-phrasing:
      intent: Remove products from a location
      effect: write
      questions:
      - Can I take products off a location without deleting them from the catalog?
      - Is there a way to unpublish products from one location?
      instructions:
      - text: Remove products {productIds} from the location.
        slots:
          productIds: requestBody.productIds
      - text: Detach products {productIds} from a location.
        slots:
          productIds: requestBody.productIds
      method: generated
      generated: '2026-09-26'