---
title: "Cast / update / clear a vote on a destination option."
method: POST
path: "/v1/trips/{id}/variants/{variantId}/votes/options"
tags: ["Public API v1"]
---

# Cast / update / clear a vote on a destination option.

`POST /v1/trips/{id}/variants/{variantId}/votes/options`

## Request

- Base URL: `https://api.mynextadventure.cloud` (the document declares no server; this is the origin it was published from)
- URL: `https://api.mynextadventure.cloud/v1/trips/{id}/variants/{variantId}/votes/options`
- Auth: API key in header `X-API-Key`

## Path parameters

- `id` string, required
- `variantId` string, required

## Request body

- VoteOptionV1Dto
  - `destinationKey` string, required: Destination key the option belongs to.
  - `optionKey` string, required: Option key inside the destination.
  - `value` 'up' | 'down' | 'clear', required: Vote direction. 'clear' removes the caller's existing vote.

## Response `201`

- CastVoteResultV1Dto
  - `voted` boolean, required: True if a vote was cast or updated; false if it was cleared.
  - `value` 'up' | 'down' | 'clear', required: Echo of the requested value for confirmation.

## Other responses

- `404`: Trip or variant not found, or no voter access.

---

[API](https://skmtc.dev/mynextadventure/apis/mynextadventure-public-api.md) · [All operations](https://skmtc.dev/mynextadventure/apis/mynextadventure-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/mynextadventure/apis/mynextadventure-public-api/revisions/a246114e73a0?raw)
