Optimizely · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Admin API V1 Dealer Products API

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

What the actions change

x-apievangelist-phrasing

Targets 10

$.info
$.paths['/api/v1/admin/DealerProducts'].get
$.paths['/api/v1/admin/DealerProducts'].post
$.paths['/api/v1/admin/DealerProducts({id})'].get
$.paths['/api/v1/admin/DealerProducts({id})'].put
$.paths['/api/v1/admin/DealerProducts({id})'].delete
$.paths['/api/v1/admin/DealerProducts({id})'].patch
$.paths['/api/v1/admin/DealerProducts/Default.Default()'].get
$.paths['/api/v1/admin/dealerproducts/delete'].delete
$.paths['/api/v1/admin/dealerproducts({key})/customproperties({custompropertyKey})'].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 Admin API V1 Dealer Products API
  version: 1.0.0
extends: openapi/optimizely-dealer-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: 9
- target: $.paths['/api/v1/admin/DealerProducts'].get
  update:
    x-apievangelist-phrasing:
      intent: List dealer-product assignments
      effect: read
      questions:
      - Which products are carried by which dealers?
      - Can I filter dealer products down to one dealer?
      instructions:
      - text: List all dealer-product assignments.
      - text: Find dealer products matching {filter}.
        slots:
          filter: query.$filter
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/DealerProducts'].post
  update:
    x-apievangelist-phrasing:
      intent: Assign a product to a dealer
      effect: write
      questions:
      - How do I mark a product as carried by a dealer?
      - Can I link a dealer to a product?
      instructions:
      - text: Assign product {productId} to dealer {dealerId}.
        slots:
          productId: requestBody.productId
          dealerId: requestBody.dealerId
      - text: Add dealer {dealerId} as a seller of product {productId}.
        slots:
          productId: requestBody.productId
          dealerId: requestBody.dealerId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/DealerProducts({id})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a dealer-product assignment
      effect: read
      questions:
      - Can I look up one dealer-product link by ID?
      - Which dealer and product does an assignment connect?
      instructions:
      - text: Show dealer-product assignment {id}.
        slots:
          id: path.id
      - text: Get the dealer and product for link {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/DealerProducts({id})'].put
  update:
    x-apievangelist-phrasing:
      intent: Replace a dealer-product assignment
      effect: write
      questions:
      - How do I overwrite a dealer-product link completely?
      - Can I replace an assignment with another dealer and product pair?
      instructions:
      - text: Replace assignment {id} with dealer {dealerId} and product {productId}.
        slots:
          id: path.id
          dealerId: requestBody.dealerId
          productId: requestBody.productId
      - text: Overwrite dealer-product link {id} in full.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/DealerProducts({id})'].delete
  update:
    x-apievangelist-phrasing:
      intent: Remove a dealer-product assignment
      effect: destructive
      questions:
      - How do I stop a dealer from carrying a product?
      - Can I delete one dealer-product link with an ETag check?
      instructions:
      - text: Delete dealer-product assignment {id}.
        slots:
          id: path.id
      - text: Remove link {id} only if its ETag is {etag}.
        slots:
          id: path.id
          etag: header.If-Match
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/DealerProducts({id})'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change a dealer-product assignment
      effect: write
      questions:
      - Can I switch an existing assignment to a different dealer?
      - How do I change only the product on a dealer-product link?
      instructions:
      - text: Move assignment {id} to dealer {dealerId}.
        slots:
          id: path.id
          dealerId: requestBody.dealerId
      - text: Change the product on link {id} to {productId}.
        slots:
          id: path.id
          productId: requestBody.productId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/DealerProducts/Default.Default()'].get
  update:
    x-apievangelist-phrasing:
      intent: Get default values for a new dealer-product link
      effect: read
      questions:
      - What defaults does a new dealer-product assignment start with?
      - Is there an empty template for a dealer-product link?
      instructions:
      - text: Get the default dealer-product template.
      - text: Show prefilled defaults for a new dealer-product link.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/dealerproducts/delete'].delete
  update:
    x-apievangelist-phrasing:
      intent: Bulk remove dealer-product assignments
      effect: destructive
      questions:
      - Can I delete many dealer-product links in one call?
      - How do I bulk drop products from dealers?
      instructions:
      - text: Bulk delete dealer-product assignments {ids}.
        slots:
          ids: query.ids
      - text: Remove the dealer-product links with IDs {ids}.
        slots:
          ids: query.ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/dealerproducts({key})/customproperties({custompropertyKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a custom property on a dealer-product link
      effect: read
      questions:
      - Can I read a custom property on a dealer-product assignment?
      - Where do extra fields for a dealer-product link live?
      instructions:
      - text: Show custom property {property} on dealer-product link {key}.
        slots:
          property: path.custompropertyKey
          key: path.key
      - text: Get assignment {key}'s custom field {property}.
        slots:
          property: path.custompropertyKey
          key: path.key
      method: generated
      generated: '2026-09-26'