Skip to content

Projects

POST /projects
{
"name": "Landing Page Tests",
"description": "All landing page A/B tests"
}
FieldTypeRequiredDescription
namestringYesProject name (1–200 chars)
descriptionstringNoDescription (max 2000 chars)
{
"id": "uuid",
"name": "Landing Page Tests",
"description": "All landing page A/B tests",
"createdAt": "2025-01-15T09:00:00Z",
"updatedAt": "2025-01-15T09:00:00Z"
}

GET /projects
ParamTypeDescription
includeArchivedbooleanInclude archived projects (default false)
limitintegerMax results (default 50, max 100)
{
"data": [
{
"id": "uuid",
"name": "Landing Page Tests",
"description": "All landing page A/B tests",
"jobCount": 12,
"testerCount": 47,
"archivedAt": null,
"createdAt": "2025-01-15T09:00:00Z",
"updatedAt": "2025-01-20T14:00:00Z"
}
]
}

GET /projects/:id
{
"id": "uuid",
"name": "Landing Page Tests",
"description": "All landing page A/B tests",
"jobCount": 12,
"testerCount": 47,
"archivedAt": null,
"createdAt": "2025-01-15T09:00:00Z",
"updatedAt": "2025-01-20T14:00:00Z"
}

PATCH /projects/:id
{
"name": "Updated Name",
"description": "Updated description"
}

Both fields are optional. Pass null for description to clear it.


DELETE /projects/:id

Jobs within the project are unlinked, not deleted.

{ "ok": true }

POST /projects/:id/archive

Hidden from default listings. Jobs remain active.


POST /projects/:id/unarchive

POST /jobs/:id/project
{ "projectId": "project-uuid" }

Pass null for projectId to unlink.


GET /projects/:id/testers

Returns all testers associated with the project. Testers are auto-added when they complete a job within the project.

{
"data": [
{
"id": "record-uuid",
"testerId": 123456,
"trusted": false,
"highValue": true,
"blocked": false,
"createdAt": "2025-01-15T10:00:00Z",
"updatedAt": "2025-01-18T12:00:00Z"
}
]
}

Tester IDs are numeric public IDs — owners never see tester PII.

POST /projects/:id/testers

Manually add a tester to a project.

{ "testerId": 123456 }

Accepts numeric public ID or UUID.

PATCH /projects/:id/testers/:testerId
{
"trusted": true,
"highValue": false,
"blocked": false
}

All fields optional.

DELETE /projects/:id/testers/:testerId

Deletes the project-tester record entirely.