Skip to main content
Neon Postgres Docs
current

Search documentation

Type to search this documentation.

On this pageOverview

Retrieve connection URI

Retrieves a connection URI for the specified database.

GET /projects/{project_id}/connection_uri

Retrieves a connection URI for the specified database. The URI uses the standard PostgreSQL connection string format. Set pooled=true to include the -pooler suffix for a connection pooler URI.

Markdown for AI context

REST API - curl
curl "https://console.neon.tech/api/v2/projects/$PROJECT_ID/connection_uri?database_name=$DATABASE_NAME&role_name=$ROLE_NAME" \
  -H "Authorization: Bearer $NEON_API_KEY"

Every field below is optional. An empty body works too.

Also available in

Bash
neon connection-string [branch]

Tool: get_connection_string

Get a PostgreSQL connection string for a Neon database. All parameters are optional; the tool resolves the project, branch, and database automatically if not specified. Requires write access: the connection string carries a privileged role password, so it is unavailable in read-only mode. A read-only caller who needs a DATABASE_URL must copy it from https://console.neon.tech manually.

  • projectId (string, required) The ID of the project. If not provided, the only available project will be used.
  • branchId (string, optional) The ID or name of the branch. If not provided, the default branch will be used.
  • computeId (string, optional) The ID of the compute/endpoint. If not provided, the read-write compute associated with the branch will be used.
  • databaseName (string, optional)
  • roleName (string, optional) The name of the role to connect with. If not provided, the database owner name will be used.

Project ID

project_id

string

The Neon project ID

Branch ID

branch_id

string

The branch ID. Defaults to your project's default branch_id if not specified.

Endpoint ID

endpoint_id

string

The endpoint ID. Defaults to the read-write endpoint_id associated with the branch_id if not specified.

Database name

database_name

string

The database name

Role name

role_name

string

The role name

Pooled

pooled

boolean

Adds the -pooler option to the connection URI when set to true, creating a pooled connection URI.

200

Returned the connection URI

Depth

"uri": (string),req

default

General error

This endpoint can return the standard Neon API error response.

Response fields

  • message Required. Human-readable error message.
  • code Required. Machine-readable error code.
  • request_id Optional. Request identifier for debugging. You can provide one with the X-Request-ID header.

Retry guidance

If no response is returned, the request may still have reached the server. This is why retry safety depends on the method and status code.

Idempotent methods (GET, HEAD, OPTIONS) are generally safe to retry after a network error or timeout. Non-idempotent methods (POST, PATCH, DELETE, PUT) can change state, so avoid automatic retries unless your workflow can tolerate duplicate effects.

Responses with 423 Locked or 503 Service Unavailable are safe to retry. 423 Locked means the resource is temporarily locked, usually because another operation is in progress.

Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu