---
title: line_item_update
description: 'Edit a line item. Any real change returns it to draft, and only it.'
---

Updates a **Line Item**. Omit a field to leave it alone; send `null` to clear it.

## Input

Takes `campaign_plan_name`, `line_item_id` and `base_revision`, plus any field [`line_item_create`](/mcp/tools/line-item-create) accepts. `countries` is replaced wholesale — send `[]` to clear the geography.

:::warning[Editing cancels a validation — and only this line's]

A validated line returns to `draft` and must be re-validated before it can be executed again. The plan's own approval stands: approving is a statement about the allocation as a whole, and one row moving does not unmake the rest.

:::

:::info[Live objects are never altered from here]

If the line already created campaigns or ad sets, they are untouched. The divergence simply becomes visible, since the line keeps the record of what it created. Changing what is live is the mutation tools' job.

:::

:::tip[Clearing an end date flips how the budget reads]

From a total for a period to a rate per day, without the figure changing. That is allowed — and it returns the line to draft, so the change can never be silent.

:::

Requires the `campaign_plan:write` scope.
