Neon
Serverless Postgres platform for projects, branches, roles, endpoints, JWKS configuration, and team permissions.
Helps Postgres teams that provision branches and roles, configure JWKS for JWT auth, transfer projects, and manage email-level permissions.
Use Neon with Snow
Snow is a personal AI assistant that builds real apps for you, and they can put Neon to work.
What Snow can do with Neon
These are the Neon operations Snow and the apps you build with it can run. Sign in to choose which ones Snow may run without asking.
Reads48
Look at your data without changing it.
- Access project details by id
Retrieves detailed information about a specific Neon serverless Postgres project. Returns comprehensive project data including configuration, database settings, compute resources, owner information, and consumption metrics. Use this action when you need to: - Get project configuration details (region, PostgreSQL version, settings) - Check project ownership and organization membership - Review compute and storage consumption metrics - Verify project settings before making updates The action is read-only and safe to call frequently. For listing multiple projects, use the retrieve_projects_list action instead.
- Get available preload libraries
Retrieves the list of available shared preload libraries for a Neon project. Shared preload libraries are PostgreSQL extensions that can be loaded at server startup using the shared_preload_libraries setting. Use this action when you need to: - Discover which PostgreSQL extensions are available for your project - Check versions of available extensions (TimescaleDB, pg_cron, etc.) - Identify experimental vs. stable extensions before configuration - Review default libraries included in your project configuration Returns details about each library including name, version, description, and whether it's experimental or included by default. Common extensions include timescaledb (time-series data), pg_cron (job scheduling), pg_partman_bgw (partition management), and vector search extensions.
- Count project branches
Tool to get the total number of branches in a Neon project. Use when you need to count branches without retrieving full branch details. Optionally filter by branch name using the search parameter.
- Fetch database for branch
Retrieves a list of databases associated with a specific project and branch in the Neon platform. This endpoint allows developers to view all databases within a particular project and branch context, which is useful for managing different environments (e.g., development, staging, production) or versions of an application's database setup. It should be used when you need to inventory the databases in a specific branch or verify the existence of databases in a particular project environment. The endpoint does not provide detailed information about each database's schema or contents; it's primarily for listing purposes.
- Fetch organization members by id
Retrieves a list of all members associated with a specific organization in the Neon B2B SaaS integration platform. This endpoint allows you to fetch detailed information about the users or entities that belong to the organization, which is crucial for managing access, roles, and permissions within the platform. Use this endpoint when you need to review the current membership of an organization, audit user access, or gather member information for reporting purposes. The endpoint returns comprehensive member details, but it does not modify any data or provide information about non-member users. Keep in mind that for large organizations, the response may be paginated to manage the data volume efficiently.
- Fetch vpcendpoint details by id
Retrieves the current state and configuration details of a specific VPC endpoint assigned to a Neon organization. VPC endpoints enable private connectivity between your AWS VPC and Neon databases using AWS PrivateLink, bypassing the public internet. Prerequisites: - Organization must be on the Scale plan or higher (VPC Private Networking is not available on Free or Launch plans) - VPC endpoint must be previously assigned using 'create_vpc_endpoint_with_label' action Use cases: - Check the operational state of a VPC endpoint (new, accepted, available, pending, rejected) - View which projects are restricted to use this VPC endpoint - Verify endpoint configuration for compliance and security auditing - Troubleshoot private connectivity issues Note: This is a read-only endpoint. To modify VPC endpoint configuration, use 'create_vpc_endpoint_with_label' or 'delete_vpc_endpoint_by_ids' actions.
- Get auth
Retrieves authentication information about the current API request credentials. Use this action to verify which account and authentication method are being used for API calls, which is helpful for debugging authentication issues or confirming the identity of the calling user or API key.
- Get auth allow localhost
Retrieves the allow localhost configuration for a specific branch in a Neon project. Use when you need to check if localhost connections are permitted for a branch's authentication settings.
- Get auth email provider
Retrieves the email provider configuration for Neon Auth on a specific branch. Returns SMTP configuration details if a custom provider is configured, or just sender information if using the default Neon email provider. Use this action to verify email settings before testing authentication flows or troubleshooting email delivery issues.
- Get branch roles for project
Retrieves the roles associated with a specific branch within a project in the Neon B2B SaaS integration platform. This endpoint is used to fetch the current role assignments for a given project and branch combination, which is essential for managing access control and permissions within the Neon ecosystem. It should be used when you need to review or audit the roles assigned to a particular branch, such as before making changes to permissions or when verifying the current access structure. The endpoint does not modify any roles; it only provides a read-only view of the existing role assignments. Keep in mind that the response will only include roles for the specified branch and does not provide information about roles in other branches or at the project level.
Creates17
Add something new to your account.
- Add new jwks to project endpoint
Adds a new JSON Web Key Set (JWKS) URL to a Neon project for JWT-based authentication. The JWKS URL must point to a valid HTTPS endpoint that returns cryptographic keys used to verify JSON Web Tokens (JWTs). Use this action to configure authentication with identity providers like Google, Microsoft, Apple, Auth0, Clerk, or Stytch. The JWKS can be scoped to specific branches and mapped to database roles. Maximum of 10 role names can be associated with each JWKS configuration.
- Add project email permission
Adds permissions for a specified email address to a particular project within the Neon B2B SaaS integration platform. This endpoint is used to grant access or specific rights to users for a given project, enabling collaboration and controlled resource sharing. It should be called when you need to add a new user to a project or modify existing user permissions. The endpoint associates the provided email with the specified project, likely setting up default or predefined permission levels. Note that this endpoint only adds permissions and does not provide information about existing permissions or remove them.
- Add role to branch
Creates a new PostgreSQL role within a specific branch of a Neon project. Neon is a serverless PostgreSQL platform where roles are database-level users that can connect to the database and have specific permissions. Use this endpoint to: - Create application service accounts for database access - Set up read-only users for reporting - Create admin roles for database management The created role will have an auto-generated password returned in the response. Store this password securely as it may not be retrievable later. You can use the 'reveal_role_password' endpoint to retrieve it again if needed. Note: Role names must be valid PostgreSQL identifiers (max 63 bytes).
- Create anonymized branch
Creates a new branch with anonymized data using PostgreSQL Anonymizer for static masking. Use when developers need to work with masked production data in a safe development environment.
- Create API Key for Organization
Creates a new API key for the specified organization in Neon. The API key is used for authenticating and authorizing access to the Neon API. The `key_name` parameter allows for easy identification and management of multiple API keys within the organization. IMPORTANT: The actual API key value is returned only once in the response and cannot be retrieved later. Store it securely immediately after creation. Organization API keys provide admin-level access to all organization resources, including projects, members, and settings. Only organization admins can create these keys.
- Create Auth Provider SDK Keys
Tool to generate SDK or API keys for authentication providers. Use when setting up authentication for a Neon project with providers like Stack Auth, Better Auth, or for testing with mock provider.
- Create auth user
Tool to create a new user in Neon Auth for a specific project branch. Use when you need to add authentication users to a branch that has Neon Auth enabled with the 'stack' provider. The branch must already have Neon Auth configured before creating users.
- Create branch database
Creates a new database within a specified project and branch in the Neon platform. This endpoint allows users to set up a new database with a custom name and assign an owner role, facilitating the organization and management of databases within the Neon ecosystem. It should be used when initializing a new database for a specific project or when branching requires a separate database instance. The endpoint is particularly useful for developers and database administrators who need to quickly set up new databases as part of their workflow or application deployment process. Note that this operation only creates the database; additional steps may be required to configure specific schemas, tables, or access permissions within the newly created database.
- Create branch snapshot
Creates a snapshot from the specified branch at a specific point in time. Snapshots capture the state of a branch and can be used for database versioning, creating backups, or establishing checkpoints for AI agents. Use when you need to preserve the exact state of your database at a moment in time. This endpoint may initiate an asynchronous operation.
- Create compute endpoint
Creates a new compute endpoint for a specified branch within a Neon project. This endpoint allows for detailed configuration of database resources, including read/write capabilities, regional placement, autoscaling limits, and connection pooling settings. It's primarily used when setting up new database instances or modifying existing database configurations to meet specific performance, scaling, or operational requirements. The endpoint provides fine-grained control over compute resources, enabling optimized database operations for various use cases from development to production environments.
Updates23
Change something that is already there.
- Assign or Update VPC Endpoint
Assigns an AWS VPC endpoint to a Neon organization for Private Networking, or updates the label of an existing VPC endpoint assignment. This enables secure, private database connections through AWS PrivateLink without traversing the public internet. Requirements: - Organization must be on a Business or Enterprise plan - VPC endpoint must be created in your AWS account first - VPC endpoint must be in the same AWS region as your Neon project Use this action to: - Connect a new AWS VPC endpoint to your Neon organization - Update the descriptive label of an existing VPC endpoint assignment Returns the VPC endpoint details including its ID, label, region, and status.
- Accept project transfer request
Tool to accept a transfer request for a Neon project. Use when you need to accept an existing transfer request to transfer a project to your account or a specific organization.
- Finalize branch restore
Finalizes the restore operation for a branch created from a snapshot. This updates the branch to function as the original branch it replaced by: reassigning computes from the original branch (which restarts them), renaming the restored branch to the original's name, and renaming the original branch. Only applies to branches created using the restoreSnapshot endpoint.
- Modify branch details in project
Updates the details of a specific branch within a project in the Neon platform. This endpoint allows you to modify the name and protection status of an existing branch. It is particularly useful when you need to rename a branch or change its protection settings without creating a new branch. The endpoint uses partial updates, so you can specify only the fields you want to change. This tool should be used when managing branch configurations in a Neon project, but it cannot be used to create new branches or delete existing ones.
- Patch branch database information
Updates the properties of a specific database within a project branch in the Neon platform. This endpoint allows for partial modifications of database attributes, such as changing its name or owner. It should be used when you need to rename a database or transfer ownership to a different role within the same project and branch. The update is performed using the PATCH method, allowing for selective property changes without affecting unspecified attributes. Note that this operation modifies existing database metadata and does not create new databases or alter the actual data within the database.
- Restore project branch
This endpoint restores a branch to a specific state or point in time. Use it to recover data, revert changes, or create new branch states based on historical data. The restoration uses either a Log Sequence Number (LSN) or timestamp from the source branch. Important: For self-restoration or branches with children, use preserve_under_name to save the current state. Note: Restoration time varies based on data volume and restoration point.
- Restore snapshot to new branch
Tool to restore a Neon snapshot to a new branch. Use when you need to recover data from a snapshot or create a branch from a previous point in time. This endpoint is currently in Beta.
- Set branch as default
Sets a specified branch as the default branch for a given project in Neon. This endpoint allows users to designate a particular branch as the primary or main branch for a project, which can be useful for organizing workflows and setting default behaviors. The operation is performed using a POST request, indicating that it modifies the state of the project. Use this endpoint when you need to change the default branch of a project, such as after creating a new branch or deciding to switch the main development focus. It's important to note that this action may affect how other operations interact with the project, as many systems use the default branch as a reference point for various functionalities.
- Set VPC endpoint restriction
Sets or updates a VPC endpoint restriction for a Neon project. When a VPC endpoint restriction is set, the project only accepts connections from the specified VPC endpoint, providing network-level security isolation. This is useful for Private Networking scenarios where you want to restrict database access to only connections coming through a specific AWS VPC endpoint. The VPC endpoint must first be assigned to the parent organization (using the organization-level VPC endpoint API) before it can be used as a project restriction. The operation is idempotent - repeated calls with the same parameters will not create additional changes. Note: This is a paid feature requiring a Neon Business or Enterprise plan.
- Start branch anonymization
Starts the anonymization process for an anonymized branch that is in the initialized, error, or anonymized state. This will apply all defined masking rules to anonymize sensitive data in the branch databases. The branch must be an anonymized branch to start anonymization. Note: This endpoint is currently in Beta.
Deletes21
Remove something. This often cannot be undone.
- Delete api key by id
Deletes a specific API key from the Neon platform. This endpoint should be used when you need to revoke access for a particular API key, such as when an employee leaves the organization or when you suspect the key has been compromised. The operation is irreversible, so use it with caution. Once deleted, any applications or services using this API key will lose access to Neon's API. This endpoint helps maintain the security of your Neon account by allowing you to manage and control API key access effectively.
- Delete auth domain from project
DEPRECATED: Use `/projects/{project_id}/branches/{branch_id}/auth/domains` instead. Deletes a domain from the redirect_uri whitelist for the specified project. Use when you need to remove an authorized redirect domain for an authentication provider. This operation permanently removes the domain from the whitelist, preventing it from being used as a valid redirect URI.
- Delete auth domains
Deletes domains from the redirect_uri whitelist for a specific branch's authentication configuration. Use when you need to revoke access for specific domains in your Neon authentication setup.
- Delete auth user
Deletes an authentication user from a specified branch within a Neon project. Use this endpoint to permanently remove user access from a particular branch. Important notes: - This operation is permanent and cannot be undone - Successful deletion returns a 204 No Content status - The deleted user will no longer be able to authenticate to the specified branch - This operation only affects the specified branch, not other branches in the project
- Delete branch data API
Deletes the Neon Data API for a specified branch and database. Use this when you need to remove Data API access for a specific database within a branch.
- Delete database from branch
Deletes a specific database from a designated branch within a project in the Neon platform. This endpoint should be used when you need to permanently remove a database and all its associated data from a particular branch of a project. It's crucial to use this endpoint with caution as the deletion operation is irreversible. This tool is particularly useful for cleaning up unnecessary databases, managing storage, or removing test databases that are no longer needed. However, it should not be used for temporary data management; instead, consider using database suspension or archiving features if available. Note that this operation only affects the specified branch and does not impact the database in other branches or the main project.
- Delete OAuth provider
Deletes an OAuth provider configuration from a specific branch in a Neon project. This removes the OAuth authentication integration for the specified provider (Google, GitHub, or Vercel) from the given branch. Use this action when you need to revoke OAuth access or clean up authentication configurations for a particular branch. Note: This operation is permanent and will affect all users authenticating through this provider on this branch. Neon Auth must be enabled on the branch before OAuth providers can be deleted.
- Delete organization api key
Deletes a specific API key associated with an organization in the Neon platform. This endpoint is used to revoke access for a particular API key, enhancing security by removing unused or compromised keys. It should be used when an API key is no longer needed, when rotating keys for security purposes, or when an API key may have been exposed. Once deleted, the API key cannot be recovered, and any systems using this key will lose access to the Neon API. Ensure you have a backup or replacement key in place before deletion to avoid service interruptions.
- Delete organization member
Removes a specific member from a Neon organization. This action permanently revokes the member's access to all organization resources. Use this when an employee leaves the company, changes roles, or their access needs to be revoked. Important notes: - This action cannot be undone; re-adding requires a new invitation - You cannot delete the last admin member of an organization - The member_id must be a valid UUID (not the user's email) - Requires admin permissions on the organization Use fetch_organization_members_by_id first to get valid member IDs.
- Delete project branch by id
Deletes a specific branch within a project in the Neon B2B SaaS integration platform. This endpoint permanently removes the specified branch and all associated data from the project. It should be used when a branch is no longer needed, such as after merging changes or abandoning a development path. Caution should be exercised when using this endpoint, as the deletion is irreversible. It's important to ensure that any valuable data or configurations in the branch have been backed up or merged before deletion. This operation cannot be undone, so double-checking the project_id and branch_id before execution is crucial to avoid accidental deletions.
Related integrations
Ready to put Neon to work?
Sign up free, build an app by chatting, and connect Neon in minutes. No credit card required.