ConfettiDocs

Overview

Secret-key API for backend integrations.

The server-to-server API lets your backend integrate with Confetti directly — for example, to pull data into a scheduled pipeline or custom dashboard.

For ad-hoc reporting and summaries, use MCP reporting first. This API is best when you need repeatable automation, engagement funnel metrics (GET …/stats), or to feed data into your own systems.

All endpoints live under https://confetti.gov.sg/api/v1/protected/ and return JSON wrapped in a data envelope (list endpoints also include pagination fields).

Authentication

Requests are authenticated with a secret API key, sent as a bearer token:

GET /api/v1/protected/surveys/{surveyId}/responses HTTP/1.1
Host: confetti.gov.sg
Authorization: Bearer cfti_sk_<your-secret-key>

Create and revoke secret keys on the Setup page in Confetti. The key is shown only once when created — store it somewhere safe.

The secret API key grants access to your team's data. Keep it on your server — never expose it in client-side code or commit it to source control. For browser use, use the public API and its publishable key instead.

Endpoints

ResourceEndpointUse when you need…
SurveysGET /surveysA paginated list of surveys in your team
SurveyGET /surveys/{surveyId}The full survey definition, including question IDs
ResponsesGET /surveys/{surveyId}/responsesIndividual response records (newest first, cursor-paginated)
StatsGET /surveys/{surveyId}/statsEngagement totals — views, dismissals, and responses (total and unique)
Score distributionsGET /surveys/{surveyId}/score-distributionsScore histograms for rating questions over a time range

For score breakdowns in conversation, use MCP reporting (get_score_distributions). This API section is for programmatic access in automated pipelines.

Browse the endpoints grouped by resource in the sidebar.

Was this page helpful?

On this page