> ## Documentation Index
> Fetch the complete documentation index at: https://docs-vnext.kiflo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Patch line item

> This method patches an existing line item. You can leave some properties empty in the request body, they won't be modified.



## OpenAPI

````yaml /openapi.json patch /v3/deals/{dealId}/line-items/{id}
openapi: 3.0.1
info:
  title: Kiflo Public API v3
  description: "The Kiflo API allows you to have control over your integration and create the best experiences.\r\n\r\n***\r\n\r\n## Format\r\n\r\nThe API follows the REST standard using JSON to format requests and responses.  \r\nDecimals are formatted using invariant culture, ie: using \".\" (dot) as a decimal sperator and no thousands separator.  \r\nDates are formatted using ISO standards, in UTC format, including the timezone. Ex:  2015-03-25T12:00:00Z\r\n\r\n***\r\n\r\n## Security\r\n\r\nThe API is secured using an API token.\r\n\r\n**How to generate an API Access Token**  \r\n 1. Open your [account settings page](https://app.kiflo.com/account/integration)\r\n 2. Go to the \"API Access Token\" section\r\n 3. Click \"Add\" button\r\n 4. Choose a name that will be used to identify the token and click \"Add\"\r\n 4. Copy the generate token\r\n   \r\n> **Note:** For security reason, the generated API Access Token won't be visible after you close the settings page. Be sure to copy the generated token otherwise you won't be able to get it later.\r\n  \r\n**How to authenticate on the API**  \r\n  \r\nTo authenticate on the API, send the generated token in the Authorization header using the Bearer scheme:  \r\n`Authorization: Bearer #YOUR_GENERATED_TOKEN_HERE#`\r\n"
  version: v3
servers: []
security: []
paths:
  /v3/deals/{dealId}/line-items/{id}:
    patch:
      tags:
        - LineItems
      summary: Patch line item
      description: >-
        This method patches an existing line item. You can leave some properties
        empty in the request body, they won't be modified.
      parameters:
        - name: dealId
          in: path
          description: The ID of the deal containing the line item.
          required: true
          schema:
            type: integer
            format: int32
        - name: id
          in: path
          description: The ID of the line item to delete.
          required: true
          schema:
            type: integer
            format: int32
      requestBody:
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/LineItemPatchRequestDto'
          application/json:
            schema:
              $ref: '#/components/schemas/LineItemPatchRequestDto'
          text/json:
            schema:
              $ref: '#/components/schemas/LineItemPatchRequestDto'
          application/*+json:
            schema:
              $ref: '#/components/schemas/LineItemPatchRequestDto'
      responses:
        '200':
          description: Line item updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LineItemDto'
        '403':
          description: You do not have access to this functionality in your current plan
        '404':
          description: Line item not found
      security:
        - oauth2:
            - LineItem.Update
            - Api
components:
  schemas:
    LineItemPatchRequestDto:
      type: object
      properties:
        productId:
          type: integer
          format: int32
          nullable: true
        partnerId:
          type: integer
          format: int32
          nullable: true
        quantity:
          type: integer
          description: Optional. Sets the quantity of product for this line item.
          format: int32
          nullable: true
        unitPrice:
          type: number
          description: >-
            Optional. Overrides or defines the price per unit in the deal's
            currency.
          format: double
          nullable: true
        suggestedPrice:
          type: number
          description: >-
            Optional. Overrides or defines the suggested end-customer price in
            the deal's currency.
          format: double
          nullable: true
      additionalProperties: false
    LineItemDto:
      type: object
      properties:
        id:
          type: integer
          format: int32
        productId:
          type: integer
          format: int32
          nullable: true
        dealId:
          type: integer
          format: int32
          nullable: true
        unitPrice:
          $ref: '#/components/schemas/AmountDto'
        price:
          $ref: '#/components/schemas/AmountDto'
        suggestedPrice:
          $ref: '#/components/schemas/AmountDto'
        quantity:
          type: integer
          format: int32
          nullable: true
        properties:
          type: object
          additionalProperties:
            nullable: true
          nullable: true
        creationDate:
          type: string
          format: date-time
      additionalProperties: false
    AmountDto:
      type: object
      properties:
        value:
          type: number
          format: double
        currency:
          type: string
          nullable: true
      additionalProperties: false

````