# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for 2026-07 Fulfillments API version: 1.0.0 extends: openapi/lightspeed-fulfillments-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['/fulfillments'].get update: x-apievangelist-phrasing: intent: List fulfillments effect: read questions: - Which orders are waiting to be picked, packed or shipped? - Can I filter fulfillments by outlet, sale or state? instructions: - text: List fulfillments for outlet {outlet} in state {state}. slots: outlet: query.outlet_id state: query.fulfillment_state - text: Show the fulfillments for sale {sale}. slots: sale: query.sale_id method: generated generated: '2026-09-26' - target: $.paths['/fulfillments/fulfill'].post update: x-apievangelist-phrasing: intent: Fulfill an entire sale effect: write questions: - How do I mark every item in an order as fulfilled at once? - Is fulfilling a whole sale safe to retry? instructions: - text: Fulfill all items on sale {sale}. slots: sale: requestBody.sale_id - text: Complete every fulfillment for sale {sale}. slots: sale: requestBody.sale_id method: generated generated: '2026-09-26' - target: $.paths['/fulfillments/{fulfillment_id}/fulfill'].post update: x-apievangelist-phrasing: intent: Fulfill specific line items effect: write questions: - Can I fulfill only some line items of an order? - Is there a way to say which stock source each fulfilled quantity comes from? instructions: - text: Fulfill line items {items} on fulfillment {fulfillment} at version {version}. slots: items: requestBody.line_items fulfillment: path.fulfillment_id version: requestBody.version - text: Mark lines {items} as fulfilled for fulfillment {fulfillment}, version {version}. slots: items: requestBody.line_items fulfillment: path.fulfillment_id version: requestBody.version method: generated generated: '2026-09-26' - target: $.paths['/fulfillments/{fulfillment_id}/history'].get update: x-apievangelist-phrasing: intent: Get a fulfillment's history effect: read questions: - When was each item in an order picked, packed or returned? - Can I page through the event log of one fulfillment? instructions: - text: Show the history of fulfillment {fulfillment}. slots: fulfillment: path.fulfillment_id - text: Get the next {limit} history events for fulfillment {fulfillment} after cursor {cursor}. slots: limit: query.limit fulfillment: path.fulfillment_id cursor: query.cursor method: generated generated: '2026-09-26' - target: $.paths['/fulfillments/{fulfillment_id}/pack'].post update: x-apievangelist-phrasing: intent: Set packed quantities for line items effect: write questions: - How do I record that some items have been packed? - Can I pack part of a line item's quantity? instructions: - text: Pack line items {items} for fulfillment {fulfillment} at version {version}. slots: items: requestBody.line_items fulfillment: path.fulfillment_id version: requestBody.version - text: Record packed quantities {items} on fulfillment {fulfillment}, version {version}. slots: items: requestBody.line_items fulfillment: path.fulfillment_id version: requestBody.version method: generated generated: '2026-09-26' - target: $.paths['/fulfillments/{fulfillment_id}/pick'].post update: x-apievangelist-phrasing: intent: Set picked quantities for line items effect: write questions: - How do I record items picked from the shelf for an order? - Can I pick a partial quantity of a line item? instructions: - text: Pick line items {items} for fulfillment {fulfillment} at version {version}. slots: items: requestBody.line_items fulfillment: path.fulfillment_id version: requestBody.version - text: Record picked quantities {items} on fulfillment {fulfillment}, version {version}. slots: items: requestBody.line_items fulfillment: path.fulfillment_id version: requestBody.version method: generated generated: '2026-09-26'