# 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 Invoice History Lines API version: 1.0.0 extends: openapi/optimizely-invoice-history-lines-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: 9 - target: $.paths['/api/v1/admin/InvoiceHistoryLines'].get update: x-apievangelist-phrasing: intent: List invoice history lines effect: read questions: - Where can I see the individual line items from past invoices? - Can I filter invoice lines by ERP order number or product? instructions: - text: List invoice history lines. - text: List invoice lines matching {filter}, first {top}, with a total count {count}. slots: filter: query.$filter top: query.$top count: query.$count method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/InvoiceHistoryLines'].post update: x-apievangelist-phrasing: intent: Add a line to an invoice history effect: write questions: - How do I load a line item from my ERP into an invoice history record? - Which fields are mandatory on a new invoice history line? instructions: - text: Add a line to invoice {invoiceHistoryId} for product {productErpNumber} on ERP order {erpOrderNumber}. slots: invoiceHistoryId: requestBody.invoiceHistoryId productErpNumber: requestBody.productErpNumber erpOrderNumber: requestBody.erpOrderNumber - text: Create an invoice line of {qtyInvoiced} {unitOfMeasure} at {unitPrice} each for invoice {invoiceHistoryId}. slots: qtyInvoiced: requestBody.qtyInvoiced unitOfMeasure: requestBody.unitOfMeasure unitPrice: requestBody.unitPrice invoiceHistoryId: requestBody.invoiceHistoryId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/InvoiceHistoryLines({id})'].get update: x-apievangelist-phrasing: intent: Get an invoice history line effect: read questions: - Can I open one invoice line to see its tax and discount amounts? - What quantity and price were billed on a specific invoice line? instructions: - text: Get invoice history line {id}. slots: id: path.id - text: Show pricing and tax on invoice line {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/InvoiceHistoryLines({id})'].put update: x-apievangelist-phrasing: intent: Replace an invoice history line effect: write questions: - Is there a way to overwrite an entire invoice line from the ERP? - What must I resend to fully replace an invoice history line? instructions: - text: Replace invoice line {id} with a full record for product {productErpNumber}. slots: id: path.id productErpNumber: requestBody.productErpNumber - text: Overwrite invoice history line {id} entirely. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/InvoiceHistoryLines({id})'].delete update: x-apievangelist-phrasing: intent: Delete an invoice history line effect: destructive questions: - Can I remove one line from an invoice history by id? - Does deleting a single invoice line accept an If-Match ETag? instructions: - text: Delete invoice history line {id}. slots: id: path.id - text: Delete invoice line {id} only if its ETag is {etag}. slots: id: path.id etag: header.If-Match method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/InvoiceHistoryLines({id})'].patch update: x-apievangelist-phrasing: intent: Update fields on an invoice line effect: write questions: - How do I correct just the quantity invoiced on one line? - Can I update only the tax amount on an invoice history line? instructions: - text: Set quantity invoiced on line {id} to {qtyInvoiced}. slots: id: path.id qtyInvoiced: requestBody.qtyInvoiced - text: Change the tax amount on invoice line {id} to {taxAmount}. slots: id: path.id taxAmount: requestBody.taxAmount method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/InvoiceHistoryLines/Default.Default()'].get update: x-apievangelist-phrasing: intent: Get a blank invoice line template effect: read questions: - What default values does a new invoice history line start with? - Is there an empty invoice line template to fill in? instructions: - text: Get the default invoice history line template. - text: Show starting values for a new invoice line. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/invoicehistorylines/delete'].delete update: x-apievangelist-phrasing: intent: Bulk delete invoice history lines effect: destructive questions: - Can I delete many invoice lines in one request? - Is there a bulk delete that takes a list of invoice line ids? instructions: - text: Bulk delete invoice history lines {ids}. slots: ids: query.ids - text: 'Remove these invoice lines in one call: {ids}.' slots: ids: query.ids method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/invoicehistorylines({key})/customproperties({custompropertyKey})'].get update: x-apievangelist-phrasing: intent: Get a custom property on an invoice line effect: read questions: - How can I read a custom property stored on an invoice line? - Can extra ERP metadata on an invoice line be fetched by property id? instructions: - text: Get custom property {custompropertyKey} on invoice line {key}. slots: custompropertyKey: path.custompropertyKey key: path.key - text: Read invoice line {key}'s custom field {custompropertyKey}. slots: key: path.key custompropertyKey: path.custompropertyKey method: generated generated: '2026-09-26'