Update purchaseInvoiceLines

Important: Currently all requests to API v2.0 must append $schemaversion=2.0 to the request URL to work properly. This is to uptake the new improved $metadata model avaliable from Business Central 17. An update will be applied shortly to apply the schemaversion automatically to API v2.0. For all other APIs $schemaversion=1.0 will be the default, unless specified in the request URL with $schemaversion=2.0. A solution is being worked on, where the schemaversion will be defined in the extension.

Update the properties of a purchase invoice line object for Dynamics 365 Business Central.

HTTP request

Replace the URL prefix for Dynamics 365 Business Central depending on environment following the guideline.

PATCH businesscentralPrefix/companies({id})/purchaseInvoices({id})/purchaseInvoiceLines({purchaseInvoiceLineId})
PATCH businesscentralPrefix/companies({id})/purchaseInvoiceLines({purchaseInvoiceLineId})

Request headers

Header Value
Authorization Bearer {token}. Required.
Content-Type application/json
If-Match Required. When this request header is included and the eTag provided does not match the current tag on the purchaseInvoiceLines, the purchaseInvoiceLines will not be updated.

Request body

In the request body, supply the values for relevant fields that should be updated. Existing properties that are not included in the request body will maintain their previous values or be recalculated based on changes to other property values. For best performance you shouldn't include existing values that haven't changed.

Response

If successful, this method returns a 200 OK response code and an updated purchaseInvoiceLines object in the response body.

Example

Request

Here is an example of the request.

PATCH https://{businesscentralPrefix}/api/v2.0/companies({id})/purchaseInvoices({id})/purchaseInvoiceLines({purchaseInvoiceLineId})
Content-type: application/json

{
  "quantity": 4
}

Response

Here is an example of the response.

Note

The response object shown here may be truncated for brevity. All of the properties will be returned from an actual call.

HTTP/1.1 200 OK
Content-type: application/json

{
    "id": "dd8db9c0-44e3-ea11-bb43-000d3a2feca1",
    "documentId": "5d115c9c-44e3-ea11-bb43-000d3a2feca1",
    "sequence": 10000,
    "itemId": "fca5738a-44e3-ea11-bb43-000d3a2feca1",
    "accountId": "00000000-0000-0000-0000-000000000000",
    "lineType": "Item",
    "lineObjectNumber": "1896-S",
    "description": "ATHENS Desk",
    "unitOfMeasureId": "5ca6738a-44e3-ea11-bb43-000d3a2feca1",
    "unitOfMeasureCode": "PCS",
    "unitCost": 780.7,
    "quantity": 4,
    "discountAmount": 0,
    "discountPercent": 0,
    "discountAppliedBeforeTax": false,
    "amountExcludingTax": 0,
    "taxCode": "FURNITURE",
    "taxPercent": 6.00006,
    "totalTaxAmount": 0,
    "amountIncludingTax": 0,
    "invoiceDiscountAllocation": 0,
    "netAmount": 3122.8,
    "netTaxAmount": 187.37,
    "netAmountIncludingTax": 3310.17,
    "expectedReceiptDate": "2019-01-01",
    "itemVariantId": "00000000-0000-0000-0000-000000000000"
}

See also

Tips for working with the APIs
purchaseinvoiceline
Get purchaseinvoiceline
Delete purchaseinvoiceline
Create purchaseinvoiceline