# 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 Punch Out Order Requests API version: 1.0.0 extends: openapi/optimizely-punch-out-order-requests-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: 12 - target: $.paths['/api/v1/admin/PunchOutOrderRequests'].get update: x-apievangelist-phrasing: intent: List punchout order requests effect: read questions: - Which punchout purchase orders have come in from procurement systems? - Can I filter punchout order requests by status or customer PO? - How many punchout order requests were received this month? instructions: - text: List all punchout order requests. - text: Find punchout order requests matching {filter}. slots: filter: query.$filter - text: Count punchout order requests matching {filter}, returning {count} for the total. slots: filter: query.$filter count: query.$count method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutOrderRequests'].post update: x-apievangelist-phrasing: intent: Record a punchout order request effect: write questions: - How do I store an incoming cXML punchout order request in the commerce admin? - What billing and shipping fields does a new punchout order request need? instructions: - text: Record punchout order {orderId} with customer PO {customerPo} and cXML {punchOutOrderRequestCXml}. slots: orderId: requestBody.orderId customerPo: requestBody.customerPo punchOutOrderRequestCXml: requestBody.punchOutOrderRequestCXml - text: Create a punchout order request for order {orderId} totalling {total} {totalCurrency}. slots: orderId: requestBody.orderId total: requestBody.total totalCurrency: requestBody.totalCurrency method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutOrderRequests({id})'].get update: x-apievangelist-phrasing: intent: Get a punchout order request effect: read questions: - What are the ship-to and bill-to details of one punchout order request? - Which requisition does a specific punchout order request belong to? instructions: - text: Get punchout order request {id}. slots: id: path.id - text: Show punchout order request {id} with {expand} expanded. slots: id: path.id expand: query.$expand method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutOrderRequests({id})'].put update: x-apievangelist-phrasing: intent: Replace a punchout order request effect: write questions: - How do I overwrite a full punchout order request record? - Does replacing a punchout order request wipe fields I omit? instructions: - text: Replace punchout order request {id} with a full record for order {orderId}. slots: id: path.id orderId: requestBody.orderId - text: Overwrite punchout order request {id} with status {status} and customer PO {customerPo}. slots: id: path.id status: requestBody.status customerPo: requestBody.customerPo method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutOrderRequests({id})'].delete update: x-apievangelist-phrasing: intent: Delete a punchout order request effect: destructive questions: - How do I remove one punchout order request by its ID? - Can a punchout order request delete be guarded by an ETag? instructions: - text: Delete punchout order request {id}. slots: id: path.id - text: Delete punchout order request {id} only if its ETag matches {etag}. slots: id: path.id etag: header.If-Match method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutOrderRequests({id})'].patch update: x-apievangelist-phrasing: intent: Update a punchout order request effect: write questions: - Can I change just the status of a punchout order request? - How do I correct the ship-to email on a punchout order request? instructions: - text: Set the status of punchout order request {id} to {status}. slots: id: path.id status: requestBody.status - text: Change the ship-to email on punchout order request {id} to {shipToEmail}. slots: id: path.id shipToEmail: requestBody.shipToEmail method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutOrderRequests/Default.Default()'].get update: x-apievangelist-phrasing: intent: Get a blank punchout order request template effect: read questions: - What default values does a new punchout order request start with? - Is there an empty punchout order request template I can fetch? instructions: - text: Fetch the default punchout order request template. - text: Show default field values for a new punchout order request. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/punchoutorderrequests/delete'].delete update: x-apievangelist-phrasing: intent: Bulk delete punchout order requests effect: destructive questions: - How do I delete many punchout order requests at once? - Can I purge a list of punchout order requests by ID in one call? instructions: - text: Bulk delete punchout order requests {ids}. slots: ids: query.ids - text: 'Remove these punchout order requests together: {ids}.' slots: ids: query.ids method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/punchoutorderrequests({key})/customproperties({custompropertyKey})'].get update: x-apievangelist-phrasing: intent: Get a custom property on a punchout order effect: read questions: - What value is stored in a custom property on a punchout order request? - Can I read one custom property from a punchout order request? instructions: - text: Get custom property {custompropertyKey} on punchout order request {key}. slots: custompropertyKey: path.custompropertyKey key: path.key - text: Show punchout order request {key}'s custom property {custompropertyKey}. slots: key: path.key custompropertyKey: path.custompropertyKey method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/punchoutorderrequests({key})/punchoutorderrequestextrinsics({punchoutorderrequestextrinsicKey})'].get update: x-apievangelist-phrasing: intent: Get an extrinsic value on a punchout order effect: read questions: - Which extrinsic values did the buyer's procurement system send with a punchout order? - Can I read one cXML extrinsic entry attached to a punchout order request? instructions: - text: Get extrinsic {punchoutorderrequestextrinsicKey} on punchout order request {key}. slots: punchoutorderrequestextrinsicKey: path.punchoutorderrequestextrinsicKey key: path.key - text: Show the cXML extrinsic {punchoutorderrequestextrinsicKey} sent with punchout order {key}. slots: punchoutorderrequestextrinsicKey: path.punchoutorderrequestextrinsicKey key: path.key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/punchoutorderrequests({key})/punchoutorderrequestitemouts({punchoutorderrequestitemoutKey})'].get update: x-apievangelist-phrasing: intent: Get a line item on a punchout order effect: read questions: - What was ordered on a specific line of a punchout order request? - Can I look up one ItemOut line from a punchout order? instructions: - text: Get item line {punchoutorderrequestitemoutKey} of punchout order request {key}. slots: punchoutorderrequestitemoutKey: path.punchoutorderrequestitemoutKey key: path.key - text: Show ItemOut {punchoutorderrequestitemoutKey} on punchout order {key}. slots: punchoutorderrequestitemoutKey: path.punchoutorderrequestitemoutKey key: path.key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/punchoutorderrequests({key})/punchoutorderrequestmessages({punchoutorderrequestmessageKey})'].get update: x-apievangelist-phrasing: intent: Get a validation message on a punchout order effect: read questions: - Why did a punchout order request fail validation? - Can I read one validation message attached to a specific punchout order? instructions: - text: Get validation message {punchoutorderrequestmessageKey} on punchout order request {key}. slots: punchoutorderrequestmessageKey: path.punchoutorderrequestmessageKey key: path.key - text: Show message {punchoutorderrequestmessageKey} recorded against punchout order {key}. slots: punchoutorderrequestmessageKey: path.punchoutorderrequestmessageKey key: path.key method: generated generated: '2026-09-26'