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

# /2026-01/retail-media/preferred-line-items/{line-item-id}

> Updates the preferred line item for the given line item id



## OpenAPI

````yaml https://api.criteo.com/2026-01/retailmedia/open-api-specifications.json put /2026-01/retail-media/preferred-line-items/{line-item-id}
openapi: 3.0.1
info:
  title: Criteo API
  description: Criteo API - RetailMedia
  version: 2026-01
servers:
  - url: https://api.criteo.com
security:
  - oauth: []
tags:
  - name: Accounts
  - name: Analytics
  - name: Audience
  - name: Balance
  - name: Billing
  - name: Campaign
  - name: Gateway
paths:
  /2026-01/retail-media/preferred-line-items/{line-item-id}:
    put:
      tags:
        - Campaign
      summary: /2026-01/retail-media/preferred-line-items/{line-item-id}
      description: Updates the preferred line item for the given line item id
      operationId: UpdatePreferredLineItemByLineItemId
      parameters:
        - name: line-item-id
          in: path
          description: The given line item id
          required: true
          schema:
            type: string
      requestBody:
        description: The line item settings to create a line item with
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PreferredLineItemUpdateModelV2Request'
        required: true
        x-bodyName: lineItem
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PreferredLineItemV2Response'
      security:
        - oauth:
            - RetailMedia_Campaign_Manage
components:
  schemas:
    PreferredLineItemUpdateModelV2Request:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ResourceOfPreferredLineItemUpdateModelV2'
      description: >-
        A top-level object that encapsulates a Criteo API request for a single
        entity
    PreferredLineItemV2Response:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ResourceOfPreferredLineItemV2'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/CommonProblem'
          readOnly: true
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/CommonProblem'
          readOnly: true
      description: >-
        A top-level object that encapsulates a Criteo API response for a single
        entity
    ResourceOfPreferredLineItemUpdateModelV2:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/PreferredLineItemUpdateModelV2'
        id:
          type: string
          description: Id of the entity
        type:
          type: string
          description: Canonical type name of the entity
      description: A class that represents a domain entity exposed by an API
    ResourceOfPreferredLineItemV2:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/PreferredLineItemV2'
        id:
          type: string
          description: Id of the entity
          nullable: true
        type:
          type: string
          description: Canonical type name of the entity
          nullable: true
      description: A class that represents a domain entity exposed by an API
      nullable: true
    CommonProblem:
      type: object
      properties:
        code:
          type: string
          description: A machine-readable error code, expressed as a string value.
          nullable: true
        detail:
          type: string
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem
          nullable: true
        instance:
          type: string
          description: A URI that identifies the specific occurrence of the problem.
          nullable: true
        source:
          type: object
          additionalProperties:
            type: string
          description: >-
            A machine-readable structure to reference to the exact location(s)
            causing the error(s)
          nullable: true
        stackTrace:
          type: string
          nullable: true
        title:
          type: string
          description: A short human-readable description of the problem type
          nullable: true
        traceId:
          type: string
          description: The request correlation ID this problem comes from.
          nullable: true
        traceIdentifier:
          type: string
          description: >-
            The request correlation ID this problem comes from. (deprecated, use
            traceId instead)
          nullable: true
        type:
          enum:
            - unknown
            - access-control
            - authentication
            - authorization
            - availability
            - deprecation
            - quota
            - validation
          type: string
          description: The problem's category.
          nullable: true
      description: Common problem object.
    PreferredLineItemUpdateModelV2:
      required:
        - name
        - startDate
        - endDate
        - status
      type: object
      properties:
        budget:
          type: number
          format: double
        capping:
          $ref: '#/components/schemas/LineItemCappingV2'
        creativeId:
          type: string
          format: long-id
        endDate:
          type: string
          description: >-
            Represents the Date as a year, month, and day in the format
            YYYY-MM-DD
          format: date
        name:
          maxLength: 255
          minLength: 0
          type: string
        pacing:
          enum:
            - unknown
            - standard
            - accelerated
          type: string
          default: accelerated
        page:
          $ref: '#/components/schemas/LineItemPageV2'
        startDate:
          type: string
          description: >-
            Represents the Date as a year, month, and day in the format
            YYYY-MM-DD
          format: date
        status:
          enum:
            - unknown
            - active
            - scheduled
            - draft
            - paused
            - budgetHit
            - ended
            - archived
            - noFunds
          type: string
          description: Line Item Status Enum
      description: Model used to update a preferred line item
    PreferredLineItemV2:
      required:
        - name
        - startDate
        - status
        - targetRetailerId
        - budget
        - campaignId
      type: object
      properties:
        budget:
          type: number
          format: double
        budgetRemaining:
          type: number
          format: double
          nullable: true
        budgetSpent:
          type: number
          format: double
          nullable: true
        campaignId:
          type: string
          format: long-id
        capping:
          $ref: '#/components/schemas/LineItemCappingV2'
        createdAt:
          type: string
          format: date-time
        creativeId:
          type: string
          description: creative Id
          format: long-id
          nullable: true
        endDate:
          type: string
          description: >-
            Represents the Date as a year, month, and day in the format
            YYYY-MM-DD
          format: date
          nullable: true
        id:
          type: string
          nullable: true
        name:
          maxLength: 255
          minLength: 0
          type: string
        pacing:
          enum:
            - unknown
            - standard
            - accelerated
          type: string
          nullable: true
        page:
          $ref: '#/components/schemas/LineItemPageV2'
        startDate:
          type: string
          description: >-
            Represents the Date as a year, month, and day in the format
            YYYY-MM-DD
          format: date
        status:
          enum:
            - unknown
            - active
            - scheduled
            - draft
            - paused
            - budgetHit
            - ended
            - archived
            - noFunds
          type: string
          description: Line Item Status Enum
        targetRetailerId:
          type: string
          format: long-id
        updatedAt:
          type: string
          format: date-time
      description: >-
        A Retail Media Preferred Line Item used to hold bid settings for one or
        many promoted products on a single retailer
    LineItemCappingV2:
      required:
        - type
        - count
      type: object
      properties:
        count:
          type: integer
          format: int32
        type:
          enum:
            - unknown
            - day
            - session
          type: string
          description: Line Item Capping Type Enum
      description: Frequency Capping for a Preferred Line Item
      nullable: true
    LineItemPageV2:
      required:
        - pageType
      type: object
      properties:
        categories:
          type: array
          items:
            $ref: '#/components/schemas/LineItemPageCategoryV2'
          nullable: true
        pageType:
          enum:
            - unknown
            - search
            - home
            - browse
            - checkout
            - category
            - productDetail
            - confirmation
            - merchandising
            - deals
            - favorites
            - searchBar
            - categoryMenu
          type: string
          description: Page Type Enum
        searchKeywords:
          type: array
          items:
            type: string
          nullable: true
      description: Page information for a preferred line item
      nullable: true
    LineItemPageCategoryV2:
      required:
        - categoryId
      type: object
      properties:
        categoryId:
          type: string
        includeChildren:
          type: boolean
          default: true
      description: Category information for a preferred line item page
  securitySchemes:
    oauth:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.criteo.com/oauth2/token
          scopes: {}
        authorizationCode:
          authorizationUrl: https://api.criteo.com/oauth2
          tokenUrl: https://api.criteo.com/oauth2/token
          scopes: {}

````