Neon is a serverless Postgres platform that provides fully managed, scalable PostgreSQL databases optimized for modern cloud and edge application development. Their developer platform offers management APIs, data APIs, authentication services, and serverless drivers for building and automating database-driven workflows.
The Neon Management API is a RESTful interface for programmatically managing Neon serverless Postgres resources. It allows developers to create and manage projects, branches, da...
The Neon Data API provides a secure, stateless HTTP interface to Neon Postgres databases, allowing developers to access and manage data directly from web browsers, serverless fu...
The Neon Serverless Driver is a low-latency JavaScript and TypeScript driver that enables querying Neon Postgres databases from serverless and edge environments over HTTP or Web...
Neon Auth is a managed authentication service built on Better Auth that connects directly to a Neon Postgres database. It stores authentication data including users, sessions, a...
Neon Auth webhooks deliver HTTP POST requests when authentication events occur, including OTP delivery, magic link delivery, and user creation. Webhooks can be used to replace b...
opencollection: 1.0.0
info:
name: Neon Management API
version: '2.0'
request:
auth:
type: bearer
token: '{{bearerToken}}'
items:
- info:
name: Projects
type: folder
items:
- info:
name: List projects
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects
params:
- name: cursor
value: ''
type: query
description: Pagination cursor for retrieving the next page of results
- name: limit
value: ''
type: query
description: Maximum number of items to return per page
- name: org_id
value: ''
type: query
description: The organization ID to scope the request to
docs: Retrieves a list of projects for the authenticated user or organization. Returns project metadata including ID,
name, region, creation time, and current status.
- info:
name: Create a project
type: http
http:
method: POST
url: https://console.neon.tech/api/v2/projects
body:
type: json
data: '{}'
docs: Creates a new Neon project within an organization. You can specify a region and Postgres version in the request
body. Neon currently supports PostgreSQL 14, 15, 16, and 17.
- info:
name: Retrieve project details
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
docs: Retrieves information about the specified project including its name, region, Postgres version, creation time, and
current settings.
- info:
name: Update a project
type: http
http:
method: PATCH
url: https://console.neon.tech/api/v2/projects/:project_id
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
body:
type: json
data: '{}'
docs: Updates the specified project. You can update the project name and other configurable settings.
- info:
name: Delete a project
type: http
http:
method: DELETE
url: https://console.neon.tech/api/v2/projects/:project_id
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
docs: Deletes the specified project and all its associated resources including branches, databases, roles, and compute
endpoints.
- info:
name: Retrieve connection URI
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/connection_uri
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: query
description: The branch ID
- name: endpoint_id
value: ''
type: query
description: The endpoint ID
- name: database_name
value: ''
type: query
description: The database name
- name: role_name
value: ''
type: query
description: The role name
docs: Retrieves the connection URI for the specified project. The connection URI includes the host, database, role, and
password needed to connect.
- info:
name: Branches
type: folder
items:
- info:
name: List branches
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/branches
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
docs: Retrieves a list of branches for the specified project. Returns branch metadata including ID, name, parent branch,
creation time, and current state.
- info:
name: Create a branch
type: http
http:
method: POST
url: https://console.neon.tech/api/v2/projects/:project_id/branches
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
body:
type: json
data: '{}'
docs: Creates a branch in the specified project. You can specify a parent branch, endpoints, and other configuration.
Branches use copy-on-write technology for instant creation.
- info:
name: Retrieve branch details
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
docs: Retrieves information about the specified branch including its name, parent branch, creation time, and current state.
- info:
name: Update a branch
type: http
http:
method: PATCH
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
body:
type: json
data: '{}'
docs: Updates the specified branch. You can update the branch name and other configurable settings.
- info:
name: Delete a branch
type: http
http:
method: DELETE
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
docs: Deletes the specified branch and all its associated databases, roles, and compute endpoints.
- info:
name: Restore a branch
type: http
http:
method: POST
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/restore
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
body:
type: json
data: '{}'
docs: Restores a branch to a specified point in time or to another branch. This operation can be used for point-in-time
recovery.
- info:
name: Databases
type: folder
items:
- info:
name: List databases
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/databases
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
docs: Retrieves a list of databases for the specified branch. A branch can contain multiple databases.
- info:
name: Create a database
type: http
http:
method: POST
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/databases
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
body:
type: json
data: '{}'
docs: Creates a database in the specified branch. You must specify a database name and owner role.
- info:
name: Retrieve database details
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/databases/:database_name
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
- name: database_name
value: ''
type: path
description: The database name
docs: Retrieves information about the specified database including its name, owner role, and creation time.
- info:
name: Update a database
type: http
http:
method: PATCH
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/databases/:database_name
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
- name: database_name
value: ''
type: path
description: The database name
body:
type: json
data: '{}'
docs: Updates the specified database. You can update the database name and owner role.
- info:
name: Delete a database
type: http
http:
method: DELETE
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/databases/:database_name
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
- name: database_name
value: ''
type: path
description: The database name
docs: Deletes the specified database from the branch.
- info:
name: Roles
type: folder
items:
- info:
name: List roles
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/roles
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
docs: Retrieves a list of Postgres roles for the specified branch.
- info:
name: Create a role
type: http
http:
method: POST
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/roles
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
body:
type: json
data: '{}'
docs: Creates a Postgres role in the specified branch. You must specify a role name.
- info:
name: Retrieve role details
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/roles/:role_name
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
- name: role_name
value: ''
type: path
description: The Postgres role name
docs: Retrieves information about the specified Postgres role.
- info:
name: Delete a role
type: http
http:
method: DELETE
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/roles/:role_name
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
- name: role_name
value: ''
type: path
description: The Postgres role name
docs: Deletes the specified Postgres role from the branch.
- info:
name: Reset role password
type: http
http:
method: POST
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/roles/:role_name/reset_password
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
- name: role_name
value: ''
type: path
description: The Postgres role name
docs: Resets the password for the specified Postgres role. Returns the new password in the response.
- info:
name: Endpoints
type: folder
items:
- info:
name: List compute endpoints
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/endpoints
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
docs: Retrieves a list of compute endpoints for the specified project. Returns endpoint metadata including ID, branch,
type, host, and current state.
- info:
name: Create a compute endpoint
type: http
http:
method: POST
url: https://console.neon.tech/api/v2/projects/:project_id/endpoints
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
body:
type: json
data: '{}'
docs: Creates a compute endpoint for the specified branch. There is a maximum of one read-write compute endpoint per branch,
while a branch can have multiple read-only compute endpoints.
- info:
name: Retrieve compute endpoint details
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/endpoints/:endpoint_id
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: endpoint_id
value: ''
type: path
description: The compute endpoint ID
docs: Retrieves information about the specified compute endpoint including its host, type, branch, autoscaling configuration,
and current state.
- info:
name: Update a compute endpoint
type: http
http:
method: PATCH
url: https://console.neon.tech/api/v2/projects/:project_id/endpoints/:endpoint_id
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: endpoint_id
value: ''
type: path
description: The compute endpoint ID
body:
type: json
data: '{}'
docs: Updates the specified compute endpoint. You can update autoscaling settings, suspend timeout, and other configuration.
- info:
name: Delete a compute endpoint
type: http
http:
method: DELETE
url: https://console.neon.tech/api/v2/projects/:project_id/endpoints/:endpoint_id
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: endpoint_id
value: ''
type: path
description: The compute endpoint ID
docs: Deletes the specified compute endpoint.
- info:
name: Start a compute endpoint
type: http
http:
method: POST
url: https://console.neon.tech/api/v2/projects/:project_id/endpoints/:endpoint_id/start
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: endpoint_id
value: ''
type: path
description: The compute endpoint ID
docs: Starts the specified compute endpoint. This operation resumes a suspended endpoint.
- info:
name: Suspend a compute endpoint
type: http
http:
method: POST
url: https://console.neon.tech/api/v2/projects/:project_id/endpoints/:endpoint_id/suspend
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: endpoint_id
value: ''
type: path
description: The compute endpoint ID
docs: Suspends the specified compute endpoint. A suspended endpoint does not consume compute resources.
- info:
name: Restart a compute endpoint
type: http
http:
method: POST
url: https://console.neon.tech/api/v2/projects/:project_id/endpoints/:endpoint_id/restart
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: endpoint_id
value: ''
type: path
description: The compute endpoint ID
docs: Restarts the specified compute endpoint.
- info:
name: List branch endpoints
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/endpoints
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
docs: Retrieves a list of compute endpoints for the specified branch.
- info:
name: Operations
type: folder
items:
- info:
name: List project operations
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/operations
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: cursor
value: ''
type: query
description: Pagination cursor for retrieving the next page of results
- name: limit
value: ''
type: query
description: Maximum number of items to return per page
docs: Retrieves a list of operations for the specified project. Operations track the progress and status of actions such
as branch creation, endpoint start, and database updates.
- info:
name: Retrieve operation details
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/operations/:operation_id
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: operation_id
value: ''
type: path
description: The operation ID
docs: Retrieves information about the specified operation including its action, status, and timing.
- info:
name: Consumption
type: folder
items:
- info:
name: Get account consumption metrics
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/consumption_history/account
params:
- name: from
value: ''
type: query
description: Start date for the consumption period
- name: to
value: ''
type: query
description: End date for the consumption period
- name: org_id
value: ''
type: query
description: The organization ID to scope the request to
docs: Retrieves total consumption metrics across all projects in your account. Available for Scale, Business, and Enterprise
plan accounts.
- info:
name: Get project consumption metrics
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/consumption_history/projects
params:
- name: from
value: ''
type: query
description: Start date for the consumption period
- name: to
value: ''
type: query
description: End date for the consumption period
- name: cursor
value: ''
type: query
description: Pagination cursor for retrieving the next page of results
- name: limit
value: ''
type: query
description: Maximum number of items to return per page
- name: org_id
value: ''
type: query
description: The organization ID to scope the request to
docs: Retrieves consumption metrics for projects. Available for Scale, Business, and Enterprise plan projects.
- info:
name: API Keys
type: folder
items:
- info:
name: List API keys
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/api_keys
docs: Retrieves a list of API keys for the authenticated user.
- info:
name: Create an API key
type: http
http:
method: POST
url: https://console.neon.tech/api/v2/api_keys
body:
type: json
data: '{}'
docs: Creates a new API key for the authenticated user. The full key value is only returned in this response and cannot
be retrieved again.
- info:
name: Revoke an API key
type: http
http:
method: DELETE
url: https://console.neon.tech/api/v2/api_keys/:key_id
params:
- name: key_id
value: ''
type: path
description: The API key ID
docs: Revokes the specified API key. A revoked key can no longer be used to authenticate API requests.
- info:
name: Data API
type: folder
items:
- info:
name: Get Data API configuration
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/data-api
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
docs: Retrieves the Data API configuration for the specified branch, including whether it is enabled, the target database,
exposed schemas, and authentication provider settings.
- info:
name: Update Data API configuration
type: http
http:
method: PUT
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/data-api
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
body:
type: json
data: '{}'
docs: Updates the Data API configuration for the specified branch, including enabling or disabling the API, configuring
exposed schemas, setting response limits, and configuring authentication providers.
- info:
name: Auth
type: folder
items:
- info:
name: Get Auth configuration
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/auth
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
docs: Retrieves the Neon Auth configuration for the specified branch, including whether Auth is enabled, the Auth URL,
and OAuth provider settings.
- info:
name: Update Auth configuration
type: http
http:
method: PUT
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/auth
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
body:
type: json
data: '{}'
docs: Updates the Neon Auth configuration for the specified branch, including enabling or disabling Auth and configuring
settings.
- info:
name: List OAuth providers
type: http
http:
method: GET
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/auth/providers
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
docs: Retrieves a list of configured OAuth providers for Neon Auth on the specified branch.
- info:
name: Create an OAuth provider
type: http
http:
method: POST
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/auth/providers
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
body:
type: json
data: '{}'
docs: Configures a new OAuth provider for Neon Auth on the specified branch.
- info:
name: Update an OAuth provider
type: http
http:
method: PATCH
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/auth/providers/:provider_id
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
- name: provider_id
value: ''
type: path
description: The OAuth provider ID
body:
type: json
data: '{}'
docs: Updates the configuration for the specified OAuth provider.
- info:
name: Delete an OAuth provider
type: http
http:
method: DELETE
url: https://console.neon.tech/api/v2/projects/:project_id/branches/:branch_id/auth/providers/:provider_id
params:
- name: project_id
value: ''
type: path
description: The Neon project ID
- name: branch_id
value: ''
type: path
description: The branch ID
- name: provider_id
value: ''
type: path
description: The OAuth provider ID
docs: Removes the specified OAuth provider from Neon Auth configuration.
bundled: true