Overview
A Blueprint is a versioned, ready-to-use template for a single piece of infrastructure — a managed database, an object storage bucket, a cache, a message broker, a CDN distribution, or a third-party SaaS resource such as a Snowflake database or a MongoDB Atlas cluster. Instead of writing Terraform or Helm from scratch, you browse Qovery’s catalog, pick a blueprint and version, fill in a short form, and Qovery provisions the resource as a fully managed service inside one of your environments. Blueprints turn infrastructure provisioning into governed self-service. The platform team curates which templates are available, and role-based access control governs who can deploy them. Developers — and AI agents working through the API — provision what they need without a review queue, and without direct access to the underlying cloud account. Behind the scenes, a blueprint materializes as a standard Qovery Terraform (or OpenTofu) service or Helm service. The service stays linked to the blueprint, so Qovery can later tell you when a newer version of the template is available, show you the diff, and apply the upgrade. The catalog is maintained by Qovery in the publicQovery/service-catalog repository and grows over time.
- The Blueprint Environment used by Preview Environments — an environment cloned per pull request.
- The Blueprint in the AI Builder Portal — a workspace template.
Where a blueprint provisions
Blueprints come from three kinds of source — cloud provider, Helm, and External — and the source decides what the resource runs on and how it authenticates.What’s in the catalog
The catalog is expanding —catalog.json in the repository is the source of truth, and the Console groups blueprints by the categories below.
Databases & Caches
Messaging & Streaming
Storage
Networking & Edge
Compute & Runtime
AI & Analytics
Observability
How Blueprints Work
When you create a blueprint service, you fill in a short form built from the blueprint’s template: the variables it exposes (with defaults, dropdowns, and validation), while read-only context variables such as the cluster region and name are resolved automatically. Qovery then provisions the resource on your cluster as a managed Terraform (or OpenTofu) service or Helm service and links it to the blueprint. Once deployed, the service publishes its outputs — endpoints, ports, credentials — so other services in the same environment can consume them through variable interpolation, just like any other Qovery service. Outputs marked sensitive (passwords, tokens) are stored encrypted and hidden in the Console. Blueprints are versioned: you pick a version when you create the service, and Qovery flags when a newer one is available (see Updating a Blueprint).Browsing the Catalog
Open the service creation flow
Pick a blueprint
Choose a version

Creating a Blueprint Service
Fill in the variables
Review advanced settings (optional)
Create, and optionally deploy

Variables & Engine Reference
Variables
Variables are the editable inputs a blueprint exposes. Each is described in the manifest and rendered in the form.Context variables
Context variables are read-only and resolved automatically from the target environment’s cluster. You cannot edit them.Outputs
Outputs are the values the deployed service publishes back to Qovery — endpoints, ports, bucket names, generated credentials. Other services in the same environment consume them by variable interpolation, so an application can point at a blueprint-provisioned database without anyone copying a hostname by hand. Sensitive outputs are encrypted and masked in the Console.Engine & advanced settings
The engine block defines how the resource is provisioned. Which settings you can override is controlled by the blueprint author (viaoverridable and allowed_values in the manifest).
Updating a Blueprint
When Qovery maintains a newer version of a blueprint’s template, the linked service surfaces an available update. Qovery compares your current tag to the latest catalog tag and reports exactly what changed:- New variables — added as optional or required.
- Now-required variables — previously optional variables that are now required.
- Updated variables — changed defaults, allowed values, or constraints.
- Removed variables — no longer used by the template.
- Engine changes — version or resource changes.
- New major versions — a newer major version of the underlying service (for example PostgreSQL 16 → 17).
Preview
terraform plan-style diff of the actual infrastructure and streams it into the Console. Preview makes no changes.
Apply
Migrating a Managed Database to a Blueprint
An existing Qovery managed database can be migrated to blueprint-backed provisioning. Terraform adopts the running instance — no re-provisioning, no data movement, no change of endpoint or password — and the Qovery database is converted rather than deleted, so applications keep the connection environment variables they already use. Afterwards the resource is an ordinary blueprint service: versioned template, preview-then-apply update path, and access to every variable the template exposes.What can be migrated
How a migration runs
You get in touch
Preview
terraform plan against the live instance with the connection details, sizing, and storage settings read from your existing database. A safety gate rejects any plan that would replace or destroy the instance, and nothing is persisted unless the plan is clean. We review the diff with you.Apply
Permissions
Creating, updating, and deploying a blueprint requires the Manager role on the target environment. Access follows Qovery’s standard role-based access control — see Members & RBAC. Migrating an existing managed database is a Qovery-side operation and is not exposed to organization members; every attempt is recorded in the organization audit logs.Best Practices
Pick the latest version for new services
Pick the latest version for new services
Always preview before applying updates
Always preview before applying updates
Prefer Qovery-managed state
Prefer Qovery-managed state
Keep sensitive inputs as secrets
Keep sensitive inputs as secrets
Scope the credentials you give an External blueprint
Scope the credentials you give an External blueprint
Consume outputs instead of hardcoding endpoints
Consume outputs instead of hardcoding endpoints
Use blueprints over hand-written Terraform for supported services
Use blueprints over hand-written Terraform for supported services
API Reference
Blueprints are fully scriptable through the Qovery API. The endpoints live under the Blueprint Catalog and Blueprint Main Calls tags and cover:- Listing the catalog, and reading a blueprint’s README and manifest (the form fields the Console renders).
- Creating a blueprint in an environment, with or without an immediate deploy.
- Creating a blueprint and getting back the deployment identifiers of the dispatch it started, so a script can follow the provisioning run.
- Reading a blueprint together with the underlying Terraform or Helm service and the status of its latest dispatch.
- Checking for an available update, previewing it, saving new values, and deploying.