Projects and the API
Projects and the API
What projects are for
A project is one product, brand or client you collect feedback for. Each project has its own surveys, responses and insights, and nothing from one project shows up in another. One account, one plan and one set of API keys cover all of your projects.
In the panel, the project is part of the page address as a short code, for example
app.rawquotes.io/k7x2m9qa/surveys, and you switch projects with the project switcher in the
sidebar, which is always there, even when you have only one project. Every account starts with
one project, named Default; rename it in the panel.
Each survey belongs to exactly one project, chosen when the survey is created, and it can't be moved later. Projects hold surveys and other sources: how a survey is shown, answered and counted doesn't change. Projects are created, renamed and deleted in the panel.
Find your project ids
List the projects with your API key. Each item has an id, a code, a
name and a createdAt. The API always takes the id as projectId; the code is only the
panel's short address.
curl https://app.rawquotes.io/api/v1/projects \
-H "Authorization: Bearer rq_live_YOUR_KEY"
{
"items": [{ "id": "YOUR-PROJECT-ID", "code": "k7x2m9qa", "name": "My product", "createdAt": "2026-10-14T09:00:00+00:00" }],
"total": 1,
"page": 1,
"perPage": 50
}
GET /api/v1/projects/{projectId} returns one project.
Create a survey in a project
Send the project in the request body as projectId. It is required.
curl -X POST https://app.rawquotes.io/api/v1/surveys \
-H "Authorization: Bearer rq_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"projectId": "YOUR-PROJECT-ID", "name": "Post-purchase", "questions": [ … ]}'
The questions list is shown in full in the API reference.
List data from a project
The lists of surveys and responses take the project as a query parameter. It is required.
curl "https://app.rawquotes.io/api/v1/surveys?projectId=YOUR-PROJECT-ID" \
-H "Authorization: Bearer rq_live_YOUR_KEY"
The same projectId is required on GET /api/v1/responses.
| Request | Result |
|---|---|
projectId missing | 400 with validation.failed |
projectId unknown, or belonging to another account | 404 with project.not_found |
Routes that already name a single survey or response in the address, such as
POST /api/v1/surveys/{surveyId}/fills, need no projectId.