PgBeam Docs
Projects

Create a project

POST
/v1/projects

Creates a new project within the specified organization.

Authorization

AuthorizationBearer <token>

JWT issued by Better Auth. Verified via JWKS.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request body for creating a project and its primary database.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/projects" \  -H "Content-Type: application/json" \  -d '{    "name": "my-app",    "org_id": "org_abc123",    "database": {      "host": "db.example.com",      "port": 5432,      "name": "mydb",      "username": "pgbeam",      "password": "pa$$word"    }  }'
{  "project": {    "id": "prj_01h455vb4pex5vsknk084sn02q",    "org_id": "org_abc123",    "name": "my-app",    "description": "Production database proxy",    "tags": [      "production",      "us-east-1"    ],    "cloud": "aws",    "proxy_host": "string",    "queries_per_second": 1000,    "burst_size": 200,    "max_connections": 500,    "allowed_cidrs": [      {        "cidr": "10.0.0.0/8",        "label": "VPC"      },      {        "cidr": "2001:db8::/32",        "label": "IPv6 range"      }    ],    "default_policy_profile_id": "pol_01h455vb4pex5vsknk084sn02q",    "agents_disabled": false,    "database_count": 0,    "active_connections": 0,    "status": "active",    "created_at": "2019-08-24T14:15:22Z",    "updated_at": "2019-08-24T14:15:22Z"  },  "database": {    "id": "db_01h455vb4pex5vsknk084sn02q",    "project_id": "prj_01h455vb4pex5vsknk084sn02q",    "connection_string": "postgresql://myuser:YOUR_PASSWORD@myproject.proxy.pgbeam.app:5432/mydb",    "host": "db.example.com",    "port": 5432,    "name": "mydb",    "username": "pgbeam",    "ssl_mode": "require",    "role": "primary",    "pool_region": "us-east-1",    "query_timeout_ms": 0,    "auto_read_routing": false,    "cache_config": {      "enabled": true,      "ttl_seconds": 60,      "max_entries": 10000,      "swr_seconds": 30    },    "pool_config": {      "pool_size": 20,      "min_pool_size": 5,      "pool_mode": "transaction",      "max_active": 200    },    "created_at": "2019-08-24T14:15:22Z",    "updated_at": "2019-08-24T14:15:22Z"  }}
{  "error": {    "code": "string",    "message": "string"  }}
{  "error": {    "code": "string",    "message": "string"  }}
{  "error": {    "code": "string",    "message": "string"  }}
{  "error": {    "code": "string",    "message": "string"  }}
{  "error": {    "code": "string",    "message": "string"  }}