v1

latestOpenAPI 3.0.3Proprietary2026-07-26162247330.6 KB
Branch

Create anonymized branch

Creates a new branch with anonymized data using PostgreSQL Anonymizer for static masking. This allows developers to work with masked production data. Optionally, provide masking_rules to set initial masking rules for the branch and start_anonymization to automatically start anonymization after creation. This combines functionality of updating masking rules and starting anonymization into the branch creation request.

Note: This endpoint is currently in Beta.

post/projects/{project_id}/branch_anonymized

Request body

annotation_valueAnnotationValueData

Annotation properties.

start_anonymizationboolean

If true, automatically start anonymization after the branch is created. Defaults to false.

Example request

{
  "annotation_value": {
    "github-commit-ref": "github-branch-name"
  },
  "branch_create": {
    "branch": {
      "expires_at": "2025-06-09T18:02:16Z"
    }
  },
  "masking_rules": [
    {
      "database_name": "neondb",
      "schema_name": "public",
      "table_name": "users",
      "column_name": "email",
      "masking_function": "anon.fake_email()"
    }
  ]
}

Response

Created a branch. An endpoint is only created if it was specified in the request.

Example response

{
  "branch": {
    "id": "br-wispy-meadow-118737",
    "project_id": "spring-example-302709",
    "parent_id": "br-aged-salad-637688",
    "parent_lsn": "0/1DE2850",
    "name": "dev2",
    "protected": false,
    "current_state": "ready",
    "state_changed_at": "2022-11-30T20:09:48Z",
    "creation_source": "console",
    "created_at": "2022-11-30T19:09:48Z",
    "updated_at": "2022-12-01T19:53:05Z",
    "default": true,
    "init_source": "parent-data",
    "data_transfer_bytes": 72911987,
    "written_data_bytes": 542998300,
    "compute_time_seconds": 823880990,
    "active_time_seconds": 922200,
    "cpu_used_sec": 461100
  },
  "endpoints": [
    {
      "host": "ep-silent-smoke-806639.us-east-2.aws.neon.tech",
      "id": "ep-silent-smoke-806639",
      "name": "My cool compute",
      "project_id": "spring-example-302709",
      "branch_id": "br-wispy-meadow-118737",
      "autoscaling_limit_min_cu": 1,
      "autoscaling_limit_max_cu": 1,
      "region_id": "aws-us-east-2",
      "type": "read_write",
      "current_state": "init",
      "pending_state": "active",
      "settings": {
        "pg_settings": {}
      },
      "pooler_enabled": false,
      "pooler_mode": "transaction",
      "disabled": false,
      "passwordless_access": true,
      "creation_source": "console",
      "created_at": "2022-12-03T15:37:07Z",
      "updated_at": "2022-12-03T15:37:07Z",
      "proxy_host": "us-east-2.aws.neon.tech",
      "suspend_timeout_seconds": 0,
      "provisioner": "k8s-neonvm"
    }
  ],
  "operations": [
    {
      "id": "d8ac46eb-a757-42b1-9907-f78322ee394e",
      "project_id": "spring-example-302709",
      "branch_id": "br-wispy-meadow-118737",
      "endpoint_id": "ep-silent-smoke-806639",
      "action": "start_compute",
      "status": "finished",
      "failures_count": 0,
      "created_at": "2022-11-15T20:02:00Z",
      "updated_at": "2022-11-15T20:02:02Z",
      "total_duration_ms": 200
    }
  ],
  "roles": [
    {
      "branch_id": "br-wispy-meadow-118737",
      "name": "casey",
      "protected": false,
      "created_at": "2022-11-23T17:42:25Z",
      "updated_at": "2022-11-23T17:42:25Z"
    }
  ],
  "databases": [
    {
      "id": 834686,
      "branch_id": "br-wispy-meadow-118737",
      "name": "neondb",
      "owner_name": "casey",
      "created_at": "2022-11-30T18:25:15Z",
      "updated_at": "2022-11-30T18:25:15Z"
    }
  ]
}