Optimizely · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Storefront API V1 Requisitions API

7 actions 7 updates phrasing extends openapi/optimizely-requisitions-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 7

$.info
$.paths['/api/v1/requisitions'].get
$.paths['/api/v1/requisitions/{requisitionId}'].get
$.paths['/api/v1/requisitions/{RequisitionId}/requisitionlines'].get
$.paths['/api/v1/requisitions/{requisitionId}/requisitionlines/{requisitionLineId}'].get
$.paths['/api/v1/requisitions/{requisitionId}/requisitionlines/{requisitionLineId}'].delete
$.paths['/api/v1/requisitions/{requisitionId}/requisitionlines/{requisitionLineId}'].patch

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 Storefront API V1 Requisitions API
  version: 1.0.0
extends: openapi/optimizely-requisitions-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/requisitions'].get
  update:
    x-apievangelist-phrasing:
      intent: List purchase requisitions
      effect: read
      questions:
      - Which purchase requisitions are waiting for my approval?
      - Can I have prices recalculated when listing requisitions?
      instructions:
      - text: List my requisitions.
      - text: 'List requisitions page {page} with {pageSize} per page and recalculate prices: {recalculatePrice}.'
        slots:
          page: query.parameter.page
          pageSize: query.parameter.pageSize
          recalculatePrice: query.parameter.recalculatePrice
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/requisitions/{requisitionId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one purchase requisition
      effect: read
      questions:
      - How do I open a single requisition to review it?
      - What does a requisition look like when I fetch it by ID?
      instructions:
      - text: Get requisition {requisitionId}.
        slots:
          requisitionId: path.requisitionId
      - text: Show me requisition {requisitionId} for review.
        slots:
          requisitionId: path.requisitionId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/requisitions/{RequisitionId}/requisitionlines'].get
  update:
    x-apievangelist-phrasing:
      intent: List the lines on a requisition
      effect: read
      questions:
      - Which products and quantities are on a requisition?
      - Can I sort and page the lines of a requisition?
      instructions:
      - text: List the lines on requisition {RequisitionId}.
        slots:
          RequisitionId: path.RequisitionId
      - text: List lines of requisition {RequisitionId} sorted by {sort}.
        slots:
          RequisitionId: path.RequisitionId
          sort: query.parameter.sort
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/requisitions/{requisitionId}/requisitionlines/{requisitionLineId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one requisition line
      effect: read
      questions:
      - How do I see who requested a specific line item and when?
      - Can I fetch a single line from a requisition by its line ID?
      instructions:
      - text: Get line {requisitionLineId} of requisition {requisitionId}.
        slots:
          requisitionLineId: path.requisitionLineId
          requisitionId: path.requisitionId
      - text: Show who ordered line {requisitionLineId} on requisition {requisitionId}.
        slots:
          requisitionLineId: path.requisitionLineId
          requisitionId: path.requisitionId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/requisitions/{requisitionId}/requisitionlines/{requisitionLineId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Remove a line from a requisition
      effect: destructive
      questions:
      - How do I reject or drop one line item from a requisition?
      - Can I delete a single requested item without discarding the whole requisition?
      instructions:
      - text: Delete line {requisitionLineId} from requisition {requisitionId}.
        slots:
          requisitionLineId: path.requisitionLineId
          requisitionId: path.requisitionId
      - text: Drop requested item {requisitionLineId} on requisition {requisitionId}.
        slots:
          requisitionLineId: path.requisitionLineId
          requisitionId: path.requisitionId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/requisitions/{requisitionId}/requisitionlines/{requisitionLineId}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Change quantity or cost code on a requisition line
      effect: write
      questions:
      - Can I change the quantity requested on a requisition line before approving it?
      - How do I assign a cost code to a requisition line?
      instructions:
      - text: Set quantity {qtyOrdered} on line {requisitionLineId} of requisition {requisitionId}.
        slots:
          qtyOrdered: requestBody.qtyOrdered
          requisitionLineId: path.requisitionLineId
          requisitionId: path.requisitionId
      - text: Apply cost code {costCode} to line {requisitionLineId} on requisition {requisitionId}.
        slots:
          costCode: requestBody.costCode
          requisitionLineId: path.requisitionLineId
          requisitionId: path.requisitionId
      method: generated
      generated: '2026-09-26'