---
title: "Authenticated Vote"
method: POST
path: "/userportal/votes"
tags: ["userportal-public"]
---

# Authenticated Vote

`POST /userportal/votes`

## Request

- Base URL: `https://api.feedback1.ai/api/v1`
- URL: `https://api.feedback1.ai/api/v1/userportal/votes`
- Auth: none declared

Cast an authenticated vote on a feature.

Requires authentication via session token in Authorization header.
Toggles vote on/off - if user already voted, removes the vote.

Accepts both JSON and FormData (for file attachments).

## Query parameters

- `access` string, nullable: Access token for token-protected roadmaps

## Headers

- `F1-Product` string
- `authorization` string, nullable

## Response `200`

Successful Response

- AuthenticatedVoteResponse: Response schema for authenticated voting.
  - `success` boolean, required: Whether the vote was recorded
  - `feature_id` integer, required: Feature pub_id that was voted on
  - `votes_count` integer, required: Updated vote count for the feature
  - `user_voted` boolean, required: Whether the user has voted for this feature
  - `message` string, nullable: Optional message (e.g., 'Vote removed')

## Other responses

- `422`: Validation Error

---

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