---
title: "Apply or discard a previewed note"
method: POST
path: "/api/v2/itineraries/{externalId}/note/{proposalId}"
tags: ["Itineraries (v2)"]
---

# Apply or discard a previewed note

`POST /api/v2/itineraries/{externalId}/note/{proposalId}`

## Request

- Base URL: `https://www.endlesstravelplans.com`
- URL: `https://www.endlesstravelplans.com/api/v2/itineraries/{externalId}/note/{proposalId}`
- Auth: HTTP bearer

`apply` puts the proposal on the plan (the whole trip's travel legs are recomputed, the pool takes the
overflow, the pace moves when the note asked for it) and answers the document with `label`; a proposal
made on a plan that has since changed answers 409 with the step's words. `discard` drops it.

## Request body

- object
  - `action` string, required: apply or discard.
  - `editVersion` integer, nullable: The version the client loaded.

## Response `200`

- union
  - object
    - `external_id` string
    - `state` string
    - `label` string
    - `dirty_days` string[]
  - object: discard
    - `discarded` boolean

## Other responses

- `401`: unauthenticated: No valid bearer token was sent.
- `404`
- `409`: the plan moved on
- `422`: validation_failed: The request body failed validation; field messages are in `errors`.
- `429`: rate_limited: A throttle or a per-account allowance refused the request; `retry_after` or `remaining` may be present.
- `500`

---

[API](https://skmtc.dev/endlesstravelplans/apis/endless-travel-plans-api.md) · [All operations](https://skmtc.dev/endlesstravelplans/apis/endless-travel-plans-api/llms.txt) · [OpenAPI document](https://skmtc.dev/endlesstravelplans/apis/endless-travel-plans-api/revisions/ae82ed3e4a8f?raw)
