Upvoty API

A REST API for everything in Upvoty.

Read posts, write votes, sync segments, fire webhooks. Every resource in Upvoty is exposed through a clean REST API with strong auth and clear docs.

curl
curl https://api.upvoty.com/v2/posts \
  -H "Authorization: Bearer up_live_..." \
  -d '{
    "board_id": "brd_dashboard",
    "title": "Dark mode for the dashboard",
    "user_id": "usr_123"
  }'

Every resource exposed

Posts, comments, votes, boards, users, tags, segments. If it exists in Upvoty, it's in the API.

Event webhooks

Subscribe to any event. Get pinged when posts are created, status changes, or votes cross thresholds.

Scoped API keys

Per-environment keys with read-only or read-write scope. Rotate and revoke without downtime.

Included

API-first by design.

The same API that powers our dashboard powers yours.

REST + JSON

Standard HTTP everywhere.

OpenAPI spec

Generate clients in any language.

Webhooks

Event-driven integration.

Rate limits

Fair, generous, documented.

Pagination

Cursor-based, fast.

Scoped keys

Read, write, admin scopes.

Audit log

Every API call traceable.

Sandbox env

Test without touching prod.

When the API matters more than the dashboard

For most users, the Upvoty dashboard is the entire product. For engineering teams, automation specialists, and AI-driven workflows, the API is where Upvoty really lives. Every resource you can see in the dashboard, posts, comments, votes, boards, users, tags, segments, status definitions, is available through a clean, predictable REST API with full read and write access. The same endpoints that power our own UI power yours.

We treat the API as a product, not an afterthought. That means a versioned base path (v2 today, with a clear deprecation policy), an OpenAPI specification so you can generate clients in any language in seconds, cursor-based pagination that stays fast even on million-row datasets, and detailed rate-limit headers on every response so your integrations degrade gracefully under load.

Webhooks: events, not polling

Polling an API to check for changes is wasteful. Webhooks flip the model: you tell Upvoty which events you care about, point us at a URL, and we POST to it the moment something happens. Subscribe to post.created, post.status_changed, vote.added, comment.created, whatever event matters to your workflow. Webhook payloads are signed with HMAC so you can verify they really came from Upvoty, and they include retry logic so a temporary outage on your side does not lose data.

Where teams use the API in practice

The most common API integrations we see fall into a few buckets. Pushing customer attributes (plan, MRR, region) from your billing system into Upvoty so segments stay current without anyone managing a sync. Auto-creating engineering tickets in Jira or Linear when a roadmap item moves to "In progress". Pulling feedback into a data warehouse for executive reporting alongside revenue and churn data. Powering custom dashboards that show feedback velocity per product area, per team, per quarter.

For teams that want even more flexibility, our native integrations are mostly built on the same API, so anything our integrations do, your engineers can do too. There is no hidden internal API we use that you cannot.

Security and operations

API keys are scoped (read-only, read-write, admin), environment-specific (sandbox keys never touch production data), and rotatable without downtime. Every API call is recorded in an audit log with the key, timestamp, IP, and outcome, which makes incident investigation and compliance reviews straightforward. Tie API access to team roles so the keys a contractor has access to are different from the keys your CTO has access to.

If your workflow involves AI agents, Claude, Cursor, ChatGPT, custom LLM pipelines, you can use the API directly, or you can use Upvoty MCP, which exposes the same surface area through the Model Context Protocol for native integration with AI tools. Either way, the API is the foundation that the rest of Upvoty's automation story sits on top of.

FAQ

Frequently asked questions

Is the API included on all plans?
Yes. Every plan includes API access. Higher plans get higher rate limits and access to advanced endpoints like bulk operations and admin actions, but read/write basics are on every tier.
How are API keys secured?
Keys are scoped (read-only, read-write, admin), per-environment (sandbox vs production), and rotatable without downtime. Every request is logged with the key that made it for full traceability.
Do you have client libraries?
We publish an OpenAPI spec so you can generate clients in any language. Official SDKs are available for JavaScript/TypeScript, Python, and Ruby; community SDKs cover Go, PHP, and others.

Start building things your users will love.

Turn user feedback into actionable product optimizations. 14-day free trial, no credit card required.