# 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 Request Item Outs API version: 1.0.0 extends: openapi/optimizely-punch-out-order-request-item-outs-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: 11 - target: $.paths['/api/v1/admin/PunchOutOrderRequestItemOuts'].get update: x-apievangelist-phrasing: intent: List punchout order request line items effect: read questions: - How can I see all the line items that came in on punchout order requests? - Can I filter punchout order request items by supplier part number? instructions: - text: List all punchout order request item-outs. - text: List punchout order request lines matching {filter}. slots: filter: query.$filter method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutOrderRequestItemOuts'].post update: x-apievangelist-phrasing: intent: Add a line item to a punchout order request effect: write questions: - How do I record a new line on a procurement punchout order request? - What fields does a punchout order request item need, like supplier part and quantity? instructions: - text: Add item {supplierPartId} with quantity {quantity} at {unitPrice} {unitPriceCurrency} to punchout order request {punchOutOrderRequestId}. slots: supplierPartId: requestBody.supplierPartId quantity: requestBody.quantity unitPrice: requestBody.unitPrice unitPriceCurrency: requestBody.unitPriceCurrency punchOutOrderRequestId: requestBody.punchOutOrderRequestId - text: Create punchout order line {lineNumber} for part {supplierPartId}, requisition {requisitionId}. slots: lineNumber: requestBody.lineNumber supplierPartId: requestBody.supplierPartId requisitionId: requestBody.requisitionId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutOrderRequestItemOuts({id})'].get update: x-apievangelist-phrasing: intent: Get one punchout order request item effect: read questions: - How can I inspect a single punchout order request line by its id? - Can I see the ship-to and bill-to details of one punchout order line? instructions: - text: Show punchout order request item {id}. slots: id: path.id - text: Fetch {select} from punchout order line {id}. slots: id: path.id select: query.$select method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutOrderRequestItemOuts({id})'].put update: x-apievangelist-phrasing: intent: Replace a punchout order request item effect: write questions: - How do I overwrite an entire punchout order request line? - Does replacing a punchout order line reset address fields I don't send? instructions: - text: Replace punchout order line {id} with part {supplierPartId}, quantity {quantity} and price {unitPrice}. slots: id: path.id supplierPartId: requestBody.supplierPartId quantity: requestBody.quantity unitPrice: requestBody.unitPrice - text: Overwrite the full punchout order request item {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutOrderRequestItemOuts({id})'].delete update: x-apievangelist-phrasing: intent: Delete one punchout order request item effect: destructive questions: - How do I remove a single line from a punchout order request? - Can I delete a punchout order line only if nobody changed it, using an ETag? instructions: - text: Delete punchout order request item {id}. slots: id: path.id - text: Remove punchout order line {id} if its ETag matches {etag}. slots: id: path.id etag: header.If-Match method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutOrderRequestItemOuts({id})'].patch update: x-apievangelist-phrasing: intent: Update fields on a punchout order request item effect: write questions: - How can I change only the quantity on a punchout order line? - Can I update the requested delivery date of one punchout order item? instructions: - text: Set the quantity of punchout order line {id} to {quantity}. slots: id: path.id quantity: requestBody.quantity - text: Change the requested delivery date on punchout order item {id} to {requestedDeliveryDate}. slots: id: path.id requestedDeliveryDate: requestBody.requestedDeliveryDate method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutOrderRequestItemOuts/Default.Default()'].get update: x-apievangelist-phrasing: intent: Get defaults for a new punchout order item effect: read questions: - What default values does a new punchout order request item get? - Where do I get a blank punchout order line template? instructions: - text: Fetch the default punchout order request item template. - text: Show starting values for a new punchout order line. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/punchoutorderrequestitemouts/delete'].delete update: x-apievangelist-phrasing: intent: Bulk delete punchout order request items effect: destructive questions: - How do I delete several punchout order request lines in one call? - Can I pass a list of ids to clear punchout order items? instructions: - text: Bulk delete punchout order request items {ids}. slots: ids: query.ids - text: Permanently delete every punchout order line in {ids}. slots: ids: query.ids method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/punchoutorderrequestitemouts({key})/customproperties({custompropertyKey})'].get update: x-apievangelist-phrasing: intent: Get a custom property of a punchout order item effect: read questions: - Where can I read a custom property stored on a punchout order request line? - How do I fetch one custom attribute from a punchout order item? instructions: - text: Get custom property {custompropertyKey} of punchout order item {key}. slots: key: path.key custompropertyKey: path.custompropertyKey - text: Read custom field {custompropertyKey} on punchout order line {key}. slots: key: path.key custompropertyKey: path.custompropertyKey method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/punchoutorderrequestitemouts({key})/punchoutorderrequestitemoutextrinsics({punchoutorderrequestitemoutextrinsicKey})'].get update: x-apievangelist-phrasing: intent: Get an extrinsic on a punchout order item effect: read questions: - How do I read the cXML extrinsic values sent with a punchout order line? - Which extrinsic entries are attached to a punchout order request item? instructions: - text: Get extrinsic {punchoutorderrequestitemoutextrinsicKey} on punchout order item {key}. slots: key: path.key punchoutorderrequestitemoutextrinsicKey: path.punchoutorderrequestitemoutextrinsicKey - text: Show extrinsic value {punchoutorderrequestitemoutextrinsicKey} for punchout order line {key}. slots: key: path.key punchoutorderrequestitemoutextrinsicKey: path.punchoutorderrequestitemoutextrinsicKey method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/punchoutorderrequestitemouts({key})/punchoutorderrequestmessages({punchoutorderrequestmessageKey})'].get update: x-apievangelist-phrasing: intent: Get a message on a punchout order item effect: read questions: - Where can I see messages logged against a punchout order request line? - How do I read one order request message tied to a punchout item? instructions: - text: Get message {punchoutorderrequestmessageKey} on punchout order item {key}. slots: key: path.key punchoutorderrequestmessageKey: path.punchoutorderrequestmessageKey - text: Show order request message {punchoutorderrequestmessageKey} for punchout line {key}. slots: key: path.key punchoutorderrequestmessageKey: path.punchoutorderrequestmessageKey method: generated generated: '2026-09-26'