# Upvoty Public API > Programmatic access to feedback boards, roadmaps, changelogs, and user management. Base URL: https://api.upvotyfeedback.com/v1 Last updated: 2026-05-28 All requests require an API key via the `X-Upvoty-Key` header. Two key types: **secret** (`upvoty_sk_*`) for full server-side access, **publishable** (`upvoty_pk_*`) for restricted client-side use. - [Full API Reference](https://api.upvotyfeedback.com/llms-full.txt): Complete endpoint details, parameters, request/response schemas - [Interactive Docs](https://api.upvotyfeedback.com/docs): OpenAPI explorer with try-it-out ## API Sections - [Auth](https://api.upvotyfeedback.com/llms-full.txt#auth): Authentication and session management (1 endpoint) - [Feedback](https://api.upvotyfeedback.com/llms-full.txt#feedback): Feedback board operations (61 endpoints) - [Changelog](https://api.upvotyfeedback.com/llms-full.txt#changelog): Changelog operations (34 endpoints) - [Roadmap](https://api.upvotyfeedback.com/llms-full.txt#roadmap): Roadmap operations (13 endpoints) - [Project](https://api.upvotyfeedback.com/llms-full.txt#project): Project configuration and settings (6 endpoints) - [Users](https://api.upvotyfeedback.com/llms-full.txt#users): Portal user management (16 endpoints) - [Webhooks](https://api.upvotyfeedback.com/llms-full.txt#webhooks): Outbound webhook management (5 endpoints) ## Endpoints ### Auth - [`POST /auth/sso`](https://api.upvotyfeedback.com/llms/auth-sso.md) — Exchange SSO token for session ### Feedback - [`GET /feedback-items`](https://api.upvotyfeedback.com/llms/list-feedback-items.md) — List feedback items - [`POST /feedback-items`](https://api.upvotyfeedback.com/llms/create-feedback-item.md) — Create a feedback item - [`GET /feedback-items/{id}`](https://api.upvotyfeedback.com/llms/get-feedback-item.md) — Get a feedback item - [`PATCH /feedback-items/{id}`](https://api.upvotyfeedback.com/llms/update-feedback-item.md) — Update a feedback item - [`DELETE /feedback-items/{id}`](https://api.upvotyfeedback.com/llms/delete-feedback-item.md) — Delete a feedback item - [`POST /feedback-items/{id}/archive`](https://api.upvotyfeedback.com/llms/archive-feedback-item.md) — Archive a feedback item - [`DELETE /feedback-items/{id}/archive`](https://api.upvotyfeedback.com/llms/unarchive-feedback-item.md) — Unarchive a feedback item - [`POST /feedback-items/{id}/pin`](https://api.upvotyfeedback.com/llms/pin-feedback-item.md) — Pin a feedback item - [`DELETE /feedback-items/{id}/pin`](https://api.upvotyfeedback.com/llms/unpin-feedback-item.md) — Unpin a feedback item - [`POST /feedback-items/{id}/merge`](https://api.upvotyfeedback.com/llms/merge-feedback-item.md) — Merge a feedback item into another - [`DELETE /feedback-items/{id}/merge`](https://api.upvotyfeedback.com/llms/unmerge-feedback-item.md) — Unmerge a feedback item - [`POST /feedback-items/{id}/privacy`](https://api.upvotyfeedback.com/llms/set-feedback-item-private.md) — Make a feedback item private - [`DELETE /feedback-items/{id}/privacy`](https://api.upvotyfeedback.com/llms/set-feedback-item-public.md) — Make a feedback item public - [`POST /feedback-items/{id}/reply`](https://api.upvotyfeedback.com/llms/reply-to-feedback-item.md) — Send a reply to the feedback author - [`POST /feedback-items/{id}/duplicate`](https://api.upvotyfeedback.com/llms/duplicate-feedback-item.md) — Duplicate a feedback item - [`POST /feedback-items/{id}/screenshot`](https://api.upvotyfeedback.com/llms/upload-feedback-item-screenshot.md) — Upload a screenshot for a feedback item - [`DELETE /feedback-items/{id}/screenshot`](https://api.upvotyfeedback.com/llms/delete-feedback-item-screenshot.md) — Delete a feedback item screenshot - [`GET /feedback-items/{id}/votes`](https://api.upvotyfeedback.com/llms/list-feedback-item-votes.md) — List votes on a feedback item - [`POST /feedback-items/{id}/votes`](https://api.upvotyfeedback.com/llms/create-feedback-item-vote.md) — Vote on a feedback item - [`DELETE /feedback-items/{id}/votes`](https://api.upvotyfeedback.com/llms/delete-feedback-item-vote.md) — Remove a vote from a feedback item - [`GET /feedback-items/{id}/reactions`](https://api.upvotyfeedback.com/llms/list-feedback-item-reactions.md) — List reactions on a feedback item - [`POST /feedback-items/{id}/reactions`](https://api.upvotyfeedback.com/llms/create-feedback-item-reaction.md) — React to a feedback item - [`DELETE /feedback-items/{id}/reactions`](https://api.upvotyfeedback.com/llms/delete-feedback-item-reaction.md) — Remove a reaction from a feedback item - [`GET /feedback-items/{id}/comments`](https://api.upvotyfeedback.com/llms/list-feedback-item-comments.md) — List comments on a feedback item - [`POST /feedback-items/{id}/comments`](https://api.upvotyfeedback.com/llms/create-feedback-item-comment.md) — Add a comment to a feedback item - [`GET /feedback-items/{id}/comments/{commentId}`](https://api.upvotyfeedback.com/llms/get-feedback-item-comment.md) — Get a comment on a feedback item - [`PATCH /feedback-items/{id}/comments/{commentId}`](https://api.upvotyfeedback.com/llms/update-feedback-item-comment.md) — Update a comment on a feedback item - [`DELETE /feedback-items/{id}/comments/{commentId}`](https://api.upvotyfeedback.com/llms/delete-feedback-item-comment.md) — Delete a comment from a feedback item - [`GET /feedback-items/{id}/comments/{commentId}/likes`](https://api.upvotyfeedback.com/llms/list-feedback-comment-likes.md) — List likes on a comment - [`POST /feedback-items/{id}/comments/{commentId}/likes`](https://api.upvotyfeedback.com/llms/create-feedback-comment-like.md) — Like a comment - [`DELETE /feedback-items/{id}/comments/{commentId}/likes`](https://api.upvotyfeedback.com/llms/delete-feedback-comment-like.md) — Unlike a comment - [`GET /feedback-items/{id}/comments/{commentId}/reactions`](https://api.upvotyfeedback.com/llms/list-feedback-comment-reactions.md) — List reactions on a comment - [`POST /feedback-items/{id}/comments/{commentId}/reactions`](https://api.upvotyfeedback.com/llms/create-feedback-comment-reaction.md) — React to a comment - [`DELETE /feedback-items/{id}/comments/{commentId}/reactions`](https://api.upvotyfeedback.com/llms/delete-feedback-comment-reaction.md) — Remove a reaction from a comment - [`GET /feedback-categories`](https://api.upvotyfeedback.com/llms/list-feedback-categories.md) — List feedback categories - [`POST /feedback-categories`](https://api.upvotyfeedback.com/llms/create-feedback-category.md) — Create a feedback category - [`GET /feedback-categories/{id}`](https://api.upvotyfeedback.com/llms/get-feedback-category.md) — Get a feedback category - [`PATCH /feedback-categories/{id}`](https://api.upvotyfeedback.com/llms/update-feedback-category.md) — Update a feedback category - [`GET /feedback-statuses`](https://api.upvotyfeedback.com/llms/list-feedback-statuses.md) — List feedback statuses - [`POST /feedback-statuses`](https://api.upvotyfeedback.com/llms/create-feedback-status.md) — Create a feedback status - [`GET /feedback-statuses/{id}`](https://api.upvotyfeedback.com/llms/get-feedback-status.md) — Get a feedback status - [`PATCH /feedback-statuses/{id}`](https://api.upvotyfeedback.com/llms/update-feedback-status.md) — Update a feedback status - [`GET /feedback-tags`](https://api.upvotyfeedback.com/llms/list-feedback-tags.md) — List feedback tags - [`POST /feedback-tags`](https://api.upvotyfeedback.com/llms/create-feedback-tag.md) — Create a feedback tag - [`GET /feedback-tags/{id}`](https://api.upvotyfeedback.com/llms/get-feedback-tag.md) — Get a feedback tag - [`PATCH /feedback-tags/{id}`](https://api.upvotyfeedback.com/llms/update-feedback-tag.md) — Update a feedback tag - [`DELETE /feedback-tags/{id}`](https://api.upvotyfeedback.com/llms/delete-feedback-tag.md) — Delete a feedback tag - [`GET /feedback-fields`](https://api.upvotyfeedback.com/llms/list-feedback-fields.md) — List custom feedback fields - [`POST /feedback-fields`](https://api.upvotyfeedback.com/llms/create-feedback-field.md) — Create a custom feedback field - [`GET /feedback-fields/{id}`](https://api.upvotyfeedback.com/llms/get-feedback-field.md) — Get a custom feedback field - [`PATCH /feedback-fields/{id}`](https://api.upvotyfeedback.com/llms/update-feedback-field.md) — Update a custom feedback field - [`GET /feedback-comments`](https://api.upvotyfeedback.com/llms/list-feedback-comments.md) — List comments across all feedback items - [`GET /feedback-votes`](https://api.upvotyfeedback.com/llms/list-feedback-votes.md) — List votes across all feedback items - [`POST /feedback-items/batch`](https://api.upvotyfeedback.com/llms/batch-create-feedback-items.md) — Batch create feedback items - [`PATCH /feedback-items/batch`](https://api.upvotyfeedback.com/llms/batch-update-feedback-items.md) — Batch update feedback items - [`DELETE /feedback-items/batch`](https://api.upvotyfeedback.com/llms/batch-delete-feedback-items.md) — Batch delete feedback items - [`POST /feedback-votes/batch`](https://api.upvotyfeedback.com/llms/batch-create-feedback-votes.md) — Batch create feedback votes - [`DELETE /feedback-votes/batch`](https://api.upvotyfeedback.com/llms/batch-delete-feedback-votes.md) — Batch delete feedback votes - [`PATCH /feedback-categories/batch`](https://api.upvotyfeedback.com/llms/batch-reorder-feedback-categories.md) — Batch reorder feedback categories - [`PATCH /feedback-statuses/batch`](https://api.upvotyfeedback.com/llms/batch-reorder-feedback-statuses.md) — Batch reorder feedback statuses - [`PATCH /feedback-fields/batch`](https://api.upvotyfeedback.com/llms/batch-reorder-feedback-fields.md) — Batch reorder feedback fields ### Changelog - [`GET /changelog`](https://api.upvotyfeedback.com/llms/list-changelog-entries.md) — List changelog entries - [`POST /changelog`](https://api.upvotyfeedback.com/llms/create-changelog-entry.md) — Create a changelog entry - [`GET /changelog/{id}`](https://api.upvotyfeedback.com/llms/get-changelog-entry.md) — Get a changelog entry - [`PATCH /changelog/{id}`](https://api.upvotyfeedback.com/llms/update-changelog-entry.md) — Update a changelog entry - [`DELETE /changelog/{id}`](https://api.upvotyfeedback.com/llms/delete-changelog-entry.md) — Delete a changelog entry - [`POST /changelog/{id}/publication`](https://api.upvotyfeedback.com/llms/publish-changelog-entry.md) — Publish a changelog entry - [`DELETE /changelog/{id}/publication`](https://api.upvotyfeedback.com/llms/unpublish-changelog-entry.md) — Unpublish a changelog entry - [`POST /changelog/{id}/cover`](https://api.upvotyfeedback.com/llms/upload-changelog-cover.md) — Upload a cover image for a changelog entry - [`DELETE /changelog/{id}/cover`](https://api.upvotyfeedback.com/llms/delete-changelog-cover.md) — Remove a cover image from a changelog entry - [`POST /changelog/{id}/images`](https://api.upvotyfeedback.com/llms/upload-changelog-image.md) — Upload an inline image for a changelog entry - [`GET /changelog/{id}/comments`](https://api.upvotyfeedback.com/llms/list-changelog-entry-comments.md) — List comments on a changelog entry - [`POST /changelog/{id}/comments`](https://api.upvotyfeedback.com/llms/create-changelog-entry-comment.md) — Create a comment on a changelog entry - [`GET /changelog/{id}/comments/{commentId}`](https://api.upvotyfeedback.com/llms/get-changelog-entry-comment.md) — Get a comment on a changelog entry - [`PATCH /changelog/{id}/comments/{commentId}`](https://api.upvotyfeedback.com/llms/update-changelog-entry-comment.md) — Update a comment on a changelog entry - [`DELETE /changelog/{id}/comments/{commentId}`](https://api.upvotyfeedback.com/llms/delete-changelog-entry-comment.md) — Delete a comment on a changelog entry - [`GET /changelog/{id}/comments/{commentId}/likes`](https://api.upvotyfeedback.com/llms/list-changelog-comment-likes.md) — List likes on a changelog comment - [`POST /changelog/{id}/comments/{commentId}/likes`](https://api.upvotyfeedback.com/llms/create-changelog-comment-like.md) — Like a changelog comment - [`DELETE /changelog/{id}/comments/{commentId}/likes`](https://api.upvotyfeedback.com/llms/delete-changelog-comment-like.md) — Unlike a changelog comment - [`GET /changelog/{id}/comments/{commentId}/reactions`](https://api.upvotyfeedback.com/llms/list-changelog-comment-reactions.md) — List reactions on a changelog comment - [`POST /changelog/{id}/comments/{commentId}/reactions`](https://api.upvotyfeedback.com/llms/create-changelog-comment-reaction.md) — React to a changelog comment - [`DELETE /changelog/{id}/comments/{commentId}/reactions`](https://api.upvotyfeedback.com/llms/delete-changelog-comment-reaction.md) — Remove a reaction from a changelog comment - [`GET /changelog/{id}/reactions`](https://api.upvotyfeedback.com/llms/list-changelog-entry-reactions.md) — List reactions on a changelog entry - [`POST /changelog/{id}/reactions`](https://api.upvotyfeedback.com/llms/create-changelog-entry-reaction.md) — React to a changelog entry - [`DELETE /changelog/{id}/reactions`](https://api.upvotyfeedback.com/llms/delete-changelog-entry-reaction.md) — Remove a reaction from a changelog entry - [`GET /changelog-tags`](https://api.upvotyfeedback.com/llms/list-changelog-tags.md) — List changelog tags - [`POST /changelog-tags`](https://api.upvotyfeedback.com/llms/create-changelog-tag.md) — Create a changelog tag - [`GET /changelog-tags/{id}`](https://api.upvotyfeedback.com/llms/get-changelog-tag.md) — Get a changelog tag - [`PATCH /changelog-tags/{id}`](https://api.upvotyfeedback.com/llms/update-changelog-tag.md) — Update a changelog tag - [`DELETE /changelog-tags/{id}`](https://api.upvotyfeedback.com/llms/delete-changelog-tag.md) — Delete a changelog tag - [`GET /changelog-comments`](https://api.upvotyfeedback.com/llms/list-changelog-comments.md) — List changelog comments across all entries - [`GET /changelog-subscribers`](https://api.upvotyfeedback.com/llms/list-changelog-subscribers.md) — List changelog subscribers - [`POST /changelog-subscribers`](https://api.upvotyfeedback.com/llms/create-changelog-subscriber.md) — Subscribe to the changelog - [`DELETE /changelog-subscribers`](https://api.upvotyfeedback.com/llms/delete-changelog-subscriber.md) — Unsubscribe from the changelog - [`PATCH /changelog/batch`](https://api.upvotyfeedback.com/llms/batch-update-changelog-entries.md) — Batch update changelog entries ### Roadmap - [`GET /roadmap-statuses`](https://api.upvotyfeedback.com/llms/list-roadmap-statuses.md) — List roadmap statuses - [`POST /roadmap-statuses`](https://api.upvotyfeedback.com/llms/create-roadmap-status.md) — Create a roadmap status - [`GET /roadmap-statuses/{id}`](https://api.upvotyfeedback.com/llms/get-roadmap-status.md) — Get a roadmap status - [`PATCH /roadmap-statuses/{id}`](https://api.upvotyfeedback.com/llms/update-roadmap-status.md) — Update a roadmap status - [`GET /roadmap-items`](https://api.upvotyfeedback.com/llms/list-roadmap-items.md) — List roadmap items - [`POST /roadmap-items`](https://api.upvotyfeedback.com/llms/create-roadmap-item.md) — Create a roadmap item - [`GET /roadmap-items/{id}`](https://api.upvotyfeedback.com/llms/get-roadmap-item.md) — Get a roadmap item - [`PATCH /roadmap-items/{id}`](https://api.upvotyfeedback.com/llms/update-roadmap-item.md) — Update a roadmap item - [`DELETE /roadmap-items/{id}`](https://api.upvotyfeedback.com/llms/delete-roadmap-item.md) — Delete a roadmap item - [`GET /roadmap-items/{id}/votes`](https://api.upvotyfeedback.com/llms/list-roadmap-item-votes.md) — List votes on a roadmap item - [`POST /roadmap-items/{id}/votes`](https://api.upvotyfeedback.com/llms/create-roadmap-item-vote.md) — Vote on a roadmap item - [`DELETE /roadmap-items/{id}/votes`](https://api.upvotyfeedback.com/llms/delete-roadmap-item-vote.md) — Remove a vote from a roadmap item - [`PATCH /roadmap-items/batch`](https://api.upvotyfeedback.com/llms/batch-update-roadmap-items.md) — Batch update roadmap items ### Project - [`GET /project`](https://api.upvotyfeedback.com/llms/get-project.md) — Get project details - [`GET /project/authentication`](https://api.upvotyfeedback.com/llms/get-project-authentication.md) — Get authentication settings - [`GET /project/portal`](https://api.upvotyfeedback.com/llms/get-project-portal.md) — Get portal settings - [`GET /project/widget`](https://api.upvotyfeedback.com/llms/get-project-widget.md) — Get widget settings - [`GET /project/custom-domain`](https://api.upvotyfeedback.com/llms/get-project-custom-domain.md) — Get custom domain settings - [`GET /project/sending-email`](https://api.upvotyfeedback.com/llms/get-project-sending-email.md) — Get custom sending email settings ### Users - [`GET /users`](https://api.upvotyfeedback.com/llms/list-users.md) — List users - [`POST /users`](https://api.upvotyfeedback.com/llms/create-user.md) — Create or retrieve a user - [`GET /users/{id}`](https://api.upvotyfeedback.com/llms/get-user.md) — Get a user - [`PATCH /users/{id}`](https://api.upvotyfeedback.com/llms/update-user.md) — Update a user - [`GET /attributes`](https://api.upvotyfeedback.com/llms/list-attributes.md) — List user attributes - [`POST /attributes`](https://api.upvotyfeedback.com/llms/create-attribute.md) — Create a user attribute - [`GET /attributes/{id}`](https://api.upvotyfeedback.com/llms/get-attribute.md) — Get a user attribute - [`PATCH /attributes/{id}`](https://api.upvotyfeedback.com/llms/update-attribute.md) — Update a user attribute - [`DELETE /attributes/{id}`](https://api.upvotyfeedback.com/llms/delete-attribute.md) — Archive a user attribute - [`GET /segments`](https://api.upvotyfeedback.com/llms/list-segments.md) — List user segments - [`POST /segments`](https://api.upvotyfeedback.com/llms/create-segment.md) — Create a user segment - [`GET /segments/{id}`](https://api.upvotyfeedback.com/llms/get-segment.md) — Get a user segment - [`PATCH /segments/{id}`](https://api.upvotyfeedback.com/llms/update-segment.md) — Update a user segment - [`DELETE /segments/{id}`](https://api.upvotyfeedback.com/llms/delete-segment.md) — Delete a user segment - [`POST /users/batch`](https://api.upvotyfeedback.com/llms/batch-create-users.md) — Batch import users - [`PATCH /users/batch`](https://api.upvotyfeedback.com/llms/batch-update-users.md) — Batch update users ### Webhooks - [`GET /webhooks`](https://api.upvotyfeedback.com/llms/list-webhooks.md) — List webhooks - [`POST /webhooks`](https://api.upvotyfeedback.com/llms/create-webhook.md) — Create a webhook - [`GET /webhooks/{id}`](https://api.upvotyfeedback.com/llms/get-webhook.md) — Get a webhook - [`PATCH /webhooks/{id}`](https://api.upvotyfeedback.com/llms/update-webhook.md) — Update a webhook - [`DELETE /webhooks/{id}`](https://api.upvotyfeedback.com/llms/delete-webhook.md) — Delete a webhook ## Optional - [Team Members](https://api.upvotyfeedback.com/llms-full.txt#team-members): Team member listing (1 endpoint) - [Portal Links](https://api.upvotyfeedback.com/llms-full.txt#portal-links): Portal navigation links (2 endpoints) - [Feed](https://api.upvotyfeedback.com/llms-full.txt#feed): Activity feed (1 endpoint) ### Team Members - [`GET /team-members`](https://api.upvotyfeedback.com/llms/list-team-members.md) — List team members ### Portal Links - [`GET /portal-links`](https://api.upvotyfeedback.com/llms/list-portal-links.md) — List portal links - [`PATCH /portal-links/batch`](https://api.upvotyfeedback.com/llms/batch-reorder-portal-links.md) — Batch reorder portal links ### Feed - [`GET /feed`](https://api.upvotyfeedback.com/llms/list-feed.md) — List activity feed