# Update a Campaign Plan

Update a campaign plan by ID

Endpoint: POST /campaign_plans/{campaign_plan_id}
Version: 3.0.1807
Security: Auth0

## Path parameters:

  - `campaign_plan_id` (integer, required)
    Numeric ID of the campaign plan object to update

## Request fields (application/json):

  - `name` (string, required)

  - `duration` (object, required)

  - `duration.start_date` (string, required)
    start_date can not be in the past

  - `duration.end_date` (string, required)
    end_date must be between 1 and 30 days away from start_date

  - `budget` (object, required)

  - `budget.total_budget` (number, required)

  - `budget.currency_code` (string, required)

  - `zone_name` (string, required)

  - `version` (integer)
    Example: 2

## Response 200 fields (application/json):

  - `data` (object)

  - `data.version` (integer)

  - `data.id` (integer)

  - `data.advertiser_id` (integer)

  - `data.created_on` (string)

  - `data.updated_on` (string)

  - `data.name` (string)

  - `data.duration` (object)

  - `data.duration.start_date` (string)

  - `data.duration.end_date` (string)

  - `data.budget` (object)

  - `data.budget.total_budget` (number)

  - `data.budget.currency_code` (string)

  - `data.zone_name` (string)

  - `meta` (object)

  - `meta.status` (string, required)
    Example: "success"

## Response 400 fields (application/json):

  - `errors` (array, required)

  - `errors.code` (string)

  - `errors.field` (string)
    Optional when it is a schema error

  - `errors.message` (string)

  - `meta` (object, required)

  - `meta.status` (string, required)

## Response 401 fields (application/json):

  - `errors` (array, required)

  - `errors.code` (string)

  - `errors.field` (string)
    Optional when it is a schema error

  - `errors.message` (string)

  - `meta` (object, required)

  - `meta.status` (string, required)

## Response 403 fields (application/json):

  - `errors` (array, required)

  - `errors.code` (string)

  - `errors.field` (string)
    Optional when it is a schema error

  - `errors.message` (string)

  - `meta` (object, required)

  - `meta.status` (string, required)

## Response 409 fields (application/json):

  - `errors` (array, required)

  - `errors.code` (string)

  - `errors.field` (string)
    Optional when it is a schema error

  - `errors.message` (string)

  - `meta` (object, required)

  - `meta.status` (string, required)


