Skip to content
Home / Docs / Projects

Projects API

GET /v1/projects

List Projects

List projects for the current organization.

Auth: BearerAuth with a user session token (JWT). API keys are rejected.

Response 200 (ProjectsContextResponse)

curl -X GET "https://api.pinbridge.io/v1/projects" \
  -H "Authorization: Bearer $PINBRIDGE_JWT"

POST /v1/projects/sandbox

Create Sandbox Project

Create sandbox project for the current organization (idempotent).

Auth: BearerAuth with a user session token (JWT). API keys are rejected.

Request body (CreateSandboxProjectRequest)

Field Type Required Description
name string? no

Response 201 (ProjectsContextResponse)

curl -X POST "https://api.pinbridge.io/v1/projects/sandbox" \
  -H "Authorization: Bearer $PINBRIDGE_JWT" \
  -H "Content-Type: application/json" \
  -d '{}'

POST /v1/projects/sandbox/reset

Reset Sandbox Project Data

Delete all sandbox-scoped resources so users can start fresh for testing.

Auth: BearerAuth with a user session token (JWT). API keys are rejected.

Response 200 (ProjectsContextResponse)

curl -X POST "https://api.pinbridge.io/v1/projects/sandbox/reset" \
  -H "Authorization: Bearer $PINBRIDGE_JWT"

POST /v1/projects/switch

Switch Project

Switch active project for the current session and issue a new JWT.

Auth: BearerAuth with a user session token (JWT). API keys are rejected.

Request body (SwitchProjectRequest)

Field Type Required Description
project_id string yes

Response 200 (ProjectSwitchResponse)

curl -X POST "https://api.pinbridge.io/v1/projects/switch" \
  -H "Authorization: Bearer $PINBRIDGE_JWT" \
  -H "Content-Type: application/json" \
  -d '{"project_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"}'

Last updated October 29, 2026 Was this page helpful? Tell us →