# UpdateCampaignInput

Input object

Input for the updateCampaign mutation. Omitted fields are left unchanged. The campaign-level changes (name, dateEnd) apply together or not at all, and before the roster changes, which apply before the posts changes; if a campaign-level change is refused, nothing in the call applies.

## Fields

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `creators` | [`CampaignCreatorsPatchInput`](/api/v2/docs/types/campaign-creators-patch-input) | No | — | Creators to add to or remove from the campaign's roster. |
| `dateEnd` | [`DateTime`](/api/v2/docs/types/date-time) | No | — | New end of the campaign's window (UTC), not before its dateStart. For CREATOR_MONITORING, moving it later also extends tracking for creators already on the roster. Uses the supplied instant at whole-second precision; choose your timezone and day boundaries, then convert to UTC before sending it. |
| `id` | `ID!` | Yes | — | UUID of the campaign to update. It must be of a type the API provisions (campaignType not null). |
| `name` | `String` | No | — | New campaign name, under the same rules as CreateCampaignInput.name: a blank or invalid name is a userError on input.name. Omit it, or send the current name back unchanged, to keep the name as stored. |
| `posts` | [`CampaignPostsPatchInput`](/api/v2/docs/types/campaign-posts-patch-input) | No | — | Posts to add to or remove from a CONTENT_CAPTURE campaign; refused on any other type. |
