Optimizely · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Optimizely Warehouses API

18 actions 18 updates phrasing extends openapi/optimizely-warehouses-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 18 · first 16 shown; the file carries all of them

$.info
$.paths['/api/v1/admin/Warehouses'].get
$.paths['/api/v1/admin/Warehouses'].post
$.paths['/api/v1/admin/Warehouses({id})'].get
$.paths['/api/v1/admin/Warehouses({id})'].put
$.paths['/api/v1/admin/Warehouses({id})'].delete
$.paths['/api/v1/admin/Warehouses({id})'].patch
$.paths['/api/v1/admin/Warehouses/Default.Default()'].get
$.paths['/api/v1/admin/Warehouses/Default.archive'].post
$.paths['/api/v1/admin/warehouses/archive'].delete
$.paths['/api/v1/admin/warehouses/delete'].delete
$.paths['/api/v1/admin/warehouses({key})/alternateofwarehouses({warehouseKey})'].get
$.paths['/api/v1/admin/warehouses({key})/alternatewarehouses({warehouseKey})'].get
$.paths['/api/v1/admin/warehouses({key})/customproperties({custompropertyKey})'].get
$.paths['/api/v1/admin/warehouses({key})/productwarehouses({productwarehouseKey})'].get
$.paths['/api/v1/admin/warehouses({key})/websites({websiteKey})'].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 Optimizely Warehouses API
  version: 1.0.0
extends: openapi/optimizely-warehouses-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: 17
- target: $.paths['/api/v1/admin/Warehouses'].get
  update:
    x-apievangelist-phrasing:
      intent: List warehouses in commerce admin
      effect: read
      questions:
      - Which warehouses are configured in my commerce admin?
      - Can I filter the admin warehouse list by city or state with an OData query?
      instructions:
      - text: List all warehouses in the admin console.
      - text: List admin warehouses matching {filter}.
        slots:
          filter: query.$filter
      - text: Show the first {top} warehouses ordered by {orderby}.
        slots:
          top: query.$top
          orderby: query.$orderby
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/Warehouses'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a warehouse
      effect: write
      questions:
      - How do I add a new warehouse with its address, phone and opening hours?
      - Can a new warehouse be set up to allow customer pickup?
      instructions:
      - text: Create a warehouse named {name} at {address1}, {city}, {state} {postalCode}.
        slots:
          name: requestBody.name
          address1: requestBody.address1
          city: requestBody.city
          state: requestBody.state
          postalCode: requestBody.postalCode
      - text: Add pickup warehouse {name} open {hours} with contact {contactName}.
        slots:
          name: requestBody.name
          hours: requestBody.hours
          contactName: requestBody.contactName
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/Warehouses({id})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a warehouse's admin record
      effect: read
      questions:
      - What address and contact details are stored for one warehouse?
      - Can I expand related data when fetching a single admin warehouse?
      instructions:
      - text: Show admin details for warehouse {id}.
        slots:
          id: path.id
      - text: Fetch warehouse {id} expanding {expand}.
        slots:
          id: path.id
          expand: query.$expand
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/Warehouses({id})'].put
  update:
    x-apievangelist-phrasing:
      intent: Replace a warehouse record
      effect: write
      questions:
      - How do I overwrite an existing warehouse's entire record, address included?
      - Can I resend every field of a warehouse to replace it in one go?
      instructions:
      - text: Replace warehouse {id} with name {name} located at {address1}, {city}.
        slots:
          id: path.id
          name: requestBody.name
          address1: requestBody.address1
          city: requestBody.city
      - text: Overwrite the full record of warehouse {id}, contact now {contactName}.
        slots:
          id: path.id
          contactName: requestBody.contactName
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/Warehouses({id})'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete one warehouse
      effect: destructive
      questions:
      - How do I remove a single warehouse by its id?
      - Does deleting a warehouse honor an If-Match ETag check?
      instructions:
      - text: Delete warehouse {id}.
        slots:
          id: path.id
      - text: Delete warehouse {id} only if its ETag still equals {etag}.
        slots:
          id: path.id
          etag: header.If-Match
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/Warehouses({id})'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update selected fields on a warehouse
      effect: write
      questions:
      - Can I change just the phone number of a warehouse without resending everything?
      - How do I schedule a warehouse to deactivate on a date?
      instructions:
      - text: Change the phone on warehouse {id} to {phone}.
        slots:
          id: path.id
          phone: requestBody.phone
      - text: Deactivate warehouse {id} on {deactivateOn}.
        slots:
          id: path.id
          deactivateOn: requestBody.deactivateOn
      - text: Patch warehouse {id} so pickup is set to {allowPickup}.
        slots:
          id: path.id
          allowPickup: requestBody.allowPickup
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/Warehouses/Default.Default()'].get
  update:
    x-apievangelist-phrasing:
      intent: Get default values for a new warehouse
      effect: read
      questions:
      - What default values does a brand-new warehouse start with?
      - Is there a blank warehouse object I can use to pre-fill a create form?
      instructions:
      - text: Get the default template for a new warehouse.
      - text: Fetch a blank warehouse with its default field values.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/Warehouses/Default.archive'].post
  update:
    x-apievangelist-phrasing:
      intent: Archive warehouses via the archive action
      effect: write
      questions:
      - Can I archive several warehouses at once instead of deleting them?
      - Which POST action archives warehouses from a list of ids?
      instructions:
      - text: Archive warehouses {ids} using the POST archive action.
        slots:
          ids: query.ids
      - text: Run the Default.archive operation on warehouses {ids}.
        slots:
          ids: query.ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/warehouses/archive'].delete
  update:
    x-apievangelist-phrasing:
      intent: Archive warehouses via the DELETE archive route
      effect: destructive
      questions:
      - Is there a DELETE-verb route that archives a batch of warehouses?
      - How can I archive warehouses through the lowercase warehouses/archive endpoint?
      instructions:
      - text: Call the DELETE archive route for warehouses {ids}.
        slots:
          ids: query.ids
      - text: Archive warehouses {ids} through the warehouses/archive route.
        slots:
          ids: query.ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/warehouses/delete'].delete
  update:
    x-apievangelist-phrasing:
      intent: Bulk delete warehouses by id
      effect: destructive
      questions:
      - Can I permanently delete many warehouses in one request?
      - How do I bulk-remove warehouses given a list of ids?
      instructions:
      - text: Bulk delete warehouses {ids}.
        slots:
          ids: query.ids
      - text: Permanently remove every warehouse in {ids}.
        slots:
          ids: query.ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/warehouses({key})/alternateofwarehouses({warehouseKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a warehouse this one backs up
      effect: read
      questions:
      - Which warehouse relies on this warehouse as its alternate?
      - Can I check that a warehouse is registered as an alternate of another one?
      instructions:
      - text: Get warehouse {warehouseKey} that warehouse {key} is an alternate of.
        slots:
          key: path.key
          warehouseKey: path.warehouseKey
      - text: Confirm warehouse {key} serves as backup for warehouse {warehouseKey}.
        slots:
          key: path.key
          warehouseKey: path.warehouseKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/warehouses({key})/alternatewarehouses({warehouseKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get an alternate warehouse of a warehouse
      effect: read
      questions:
      - Which backup warehouse is configured as an alternate for my warehouse?
      - Can I read one specific alternate warehouse assigned to a warehouse?
      instructions:
      - text: Get alternate warehouse {warehouseKey} assigned to warehouse {key}.
        slots:
          key: path.key
          warehouseKey: path.warehouseKey
      - text: Show fallback warehouse {warehouseKey} for primary warehouse {key}.
        slots:
          key: path.key
          warehouseKey: path.warehouseKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/warehouses({key})/customproperties({custompropertyKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a custom property on a warehouse
      effect: read
      questions:
      - What custom property values have been added to a warehouse?
      - Can I read a single custom property attached to a warehouse?
      instructions:
      - text: Get custom property {custompropertyKey} on warehouse {key}.
        slots:
          key: path.key
          custompropertyKey: path.custompropertyKey
      - text: Read extra attribute {custompropertyKey} stored on warehouse {key}.
        slots:
          key: path.key
          custompropertyKey: path.custompropertyKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/warehouses({key})/productwarehouses({productwarehouseKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a product stocking record for a warehouse
      effect: read
      questions:
      - How do I see a product's stocking record at a particular warehouse?
      - Can I fetch one product-warehouse entry under a warehouse?
      instructions:
      - text: Get product warehouse record {productwarehouseKey} for warehouse {key}.
        slots:
          key: path.key
          productwarehouseKey: path.productwarehouseKey
      - text: Show product stocking entry {productwarehouseKey} at warehouse {key}.
        slots:
          key: path.key
          productwarehouseKey: path.productwarehouseKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/admin/warehouses({key})/websites({websiteKey})'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a website a warehouse serves
      effect: read
      questions:
      - Which storefront websites is a warehouse assigned to?
      - Can I check one website linked to a warehouse?
      instructions:
      - text: Get website {websiteKey} linked to warehouse {key}.
        slots:
          key: path.key
          websiteKey: path.websiteKey
      - text: Show the storefront site {websiteKey} that warehouse {key} fulfils for.
        slots:
          key: path.key
          websiteKey: path.websiteKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/warehouses'].get
  update:
    x-apievangelist-phrasing:
      intent: Find storefront pickup warehouses near a location
      effect: read
      questions:
      - Which pickup warehouses are within a radius of my customer's location?
      - Can the storefront warehouse list leave out the customer's current pickup warehouse?
      - What warehouses does the storefront API show shoppers, page by page?
      instructions:
      - text: Find pickup warehouses within {radius} of {latitude}, {longitude}.
        slots:
          radius: query.parameter.radius
          latitude: query.parameter.latitude
          longitude: query.parameter.longitude
      - text: List storefront warehouses, page {page} with {pageSize} per page.
        slots:
          page: query.parameter.page
          pageSize: query.parameter.pageSize
      - text: Show nearby pickup locations excluding current pickup warehouse {current}.
        slots:
          current: query.parameter.currentPickupWarehouseId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/warehouses/{warehouseId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a warehouse from the storefront API
      effect: read
      questions:
      - What does the storefront show a shopper about one warehouse?
      - Can I load a pickup location's details for my storefront by warehouseId?
      instructions:
      - text: Get storefront warehouse {warehouseId}.
        slots:
          warehouseId: path.warehouseId
      - text: Load pickup location {warehouseId} for the shopper-facing site.
        slots:
          warehouseId: path.warehouseId
      method: generated
      generated: '2026-09-26'