> ## Documentation Index
> Fetch the complete documentation index at: https://www.qovery.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Get the input fields to display for a blueprint catalog service

> Returns the list of form fields the console must display to deploy the selected blueprint, derived from the blueprint's qbm.yml manifest. Includes editable variables (overridable=true) and auto-sourced context variables (overridable=false, with a source).



## OpenAPI

````yaml /api-reference/openapi.yaml get /organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest
openapi: 3.0.0
info:
  version: 1.0.4
  title: Qovery API
  description: >
    - Qovery is the fastest way to deploy your full-stack apps on any Cloud
    provider.

    - ℹ️ The API is stable and still in development.
  contact:
    name: Qovery Product Team
    url: https://www.qovery.com
    email: support+api+documentation@qovery.com
  x-logo:
    url: https://console.qovery.com/assets/logos/logo-white.svg
    altText: Qovery
servers:
  - url: https://api.qovery.com
security:
  - bearerAuth: []
  - ApiKeyAuth: []
tags:
  - name: Account
  - name: Account Info
  - name: Alert Receivers
  - name: Alert Rules
  - name: Admin
  - name: ArgoCD
  - name: Application
  - name: Application Actions
  - name: Application Configuration
  - name: Application Database
  - name: Application Deployment Restriction
  - name: Application Deployment History
  - name: Application Environment Variable
  - name: Application Logs
  - name: Application Main Calls
  - name: Application Secret
  - name: Application Annotations Group
  - name: Applications
  - name: AutoscalingPolicy
  - name: Container
  - name: Container Actions
  - name: Container Configuration
  - name: Container Database
  - name: Container Deployment History
  - name: Container Environment Variable
  - name: Container Logs
  - name: Container Main Calls
  - name: Container Registry
  - name: Container Secret
  - name: Container Annotations Group
  - name: Containers
  - name: Deployment Stage Main Calls
  - name: Job
  - name: Job Actions
  - name: Job Configuration
  - name: Job Database
  - name: Job Deployment Restriction
  - name: Job Deployment History
  - name: Job Environment Variable
  - name: Job Logs
  - name: Job Main Calls
  - name: Job Registry
  - name: Job Secret
  - name: Job Annotations Group
  - name: Jobs
  - name: KedaTriggerAuthentication
  - name: Helm
  - name: Helm Actions
  - name: Helm Configuration
  - name: Helm Database
  - name: Helm Deployment Restriction
  - name: Helm Deployment History
  - name: Helm Logs
  - name: Helm Main Calls
  - name: Helm Repository
  - name: Helms
  - name: Backups
  - name: Billing
  - name: Blueprint Catalog
  - name: Cloud Provider
  - name: Cloud Provider Credentials
  - name: Clusters
  - name: Custom Domain
  - name: Container Custom Domain
  - name: Database
  - name: Database Actions
  - name: Database Application
  - name: Database Container
  - name: Database Deployment History
  - name: Database Main Calls
  - name: Database Annotations Group
  - name: Databases
  - name: Environment
  - name: Environment Actions
  - name: Environment Deployment History
  - name: Environment Deployment Rule
  - name: Environment Logs
  - name: Environment Main Calls
  - name: Environment Secret
  - name: Environment Variable
  - name: Environments
  - name: Git
  - name: Github App
  - name: Git repositories
  - name: Members
  - name: Organization
  - name: Organization Account Git Repositories
  - name: Organization Cluster Lock
  - name: Organization Main Calls
  - name: Organization Custom Role
  - name: Organization Event
  - name: Organization Api Token
  - name: Organization Webhook
  - name: Organization Annotations Group
  - name: Organization Labels Group
  - name: Organization Enterprise Connection
  - name: Project
  - name: Project Deployment Rule
  - name: Project Environment Variable
  - name: Project Main Calls
  - name: Project Secret
  - name: Projects
  - name: Referral & Rewards
  - name: Secret Manager Access
  - name: Terraforms
  - name: Terraform Main Calls
  - name: Terraform Resources
  - name: Terraform Deployment History
  - name: Terraform Deployment Restriction
  - name: Container Registries
  - name: Helm Repositories
  - name: User Sign Up
  - name: Variable Main Calls
  - name: Helm Custom Domain
  - name: Lifecycle Template Main Calls
  - name: Blueprint Main Calls
paths:
  /organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest:
    get:
      tags:
        - Blueprint Catalog
      summary: Get the input fields to display for a blueprint catalog service
      description: >-
        Returns the list of form fields the console must display to deploy the
        selected blueprint, derived from the blueprint's qbm.yml manifest.
        Includes editable variables (overridable=true) and auto-sourced context
        variables (overridable=false, with a source).
      operationId: getBlueprintCatalogServiceManifest
      parameters:
        - $ref: '#/components/parameters/organizationId'
        - name: provider
          in: path
          description: Cloud provider (e.g. aws, gcp, azure)
          required: true
          schema:
            type: string
        - name: serviceFamily
          in: path
          description: Service family (e.g. mysql, postgresql)
          required: true
          schema:
            type: string
        - name: serviceVersion
          in: path
          description: Service version (e.g. 8, 14)
          required: true
          schema:
            type: string
        - name: environmentId
          in: query
          description: Environment ID used to resolve context variables
          required: true
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: The form fields and engine spec for the selected blueprint
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlueprintManifestResponse'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '502':
          description: Failed to fetch or parse the blueprint manifest from GitHub
components:
  parameters:
    organizationId:
      name: organizationId
      in: path
      description: Organization ID
      required: true
      schema:
        type: string
        format: uuid
  schemas:
    BlueprintManifestResponse:
      type: object
      required:
        - results
      properties:
        results:
          type: array
          description: >-
            Form fields the console renders for the user (variables +
            auto-sourced context variables).
          items:
            oneOf:
              - $ref: '#/components/schemas/BlueprintManifestVariableField'
              - $ref: '#/components/schemas/BlueprintManifestContextVariableField'
            discriminator:
              propertyName: kind
              mapping:
                variable:
                  $ref: '#/components/schemas/BlueprintManifestVariableField'
                contextVariable:
                  $ref: '#/components/schemas/BlueprintManifestContextVariableField'
        engine:
          $ref: '#/components/schemas/BlueprintManifestEngineSpec'
    BlueprintManifestVariableField:
      type: object
      description: An editable form input the user fills in (from spec.variables).
      required:
        - kind
        - name
        - type
        - required
        - is_secret
      properties:
        kind:
          type: string
          enum:
            - variable
        name:
          type: string
          example: db_password
        type:
          $ref: '#/components/schemas/BlueprintManifestFieldType'
        required:
          type: boolean
        is_secret:
          type: boolean
        description:
          type: string
          nullable: true
        allowed_values:
          type: array
          nullable: true
          items:
            type: string
        default_value:
          type: string
          nullable: true
    BlueprintManifestContextVariableField:
      type: object
      description: >-
        An auto-sourced, read-only value (from spec.contextVariables); not
        user-editable.
      required:
        - kind
        - name
      properties:
        kind:
          type: string
          enum:
            - contextVariable
        name:
          type: string
          example: region
        source:
          type: string
          nullable: true
          description: Origin of the auto-sourced value (e.g. cluster.region)
        value:
          type: string
          nullable: true
          description: Resolved value of the context variable at the time of the request
    BlueprintManifestEngineSpec:
      description: >-
        Engine spec discriminated by `type`. Catalog-declared execution config +
        per-knob default/allowedValues/overridable metadata for the console to
        render.
      oneOf:
        - $ref: '#/components/schemas/BlueprintManifestEngineTerraform'
        - $ref: '#/components/schemas/BlueprintManifestEngineOpenTofu'
        - $ref: '#/components/schemas/BlueprintManifestEngineHelm'
      discriminator:
        propertyName: type
        mapping:
          terraform:
            $ref: '#/components/schemas/BlueprintManifestEngineTerraform'
          opentofu:
            $ref: '#/components/schemas/BlueprintManifestEngineOpenTofu'
          helm:
            $ref: '#/components/schemas/BlueprintManifestEngineHelm'
    BlueprintManifestFieldType:
      type: object
      description: >-
        Field type with its type-specific validation conditions, discriminated
        by "type".
      required:
        - type
      properties:
        type:
          type: string
          enum:
            - string
            - bool
            - number
        pattern:
          type: string
          nullable: true
          description: Regex pattern, only present for string fields
        min_length:
          type: integer
          format: int64
          nullable: true
          description: Minimum length, only present for string fields
        max_length:
          type: integer
          format: int64
          nullable: true
          description: Maximum length, only present for string fields
        min:
          type: integer
          format: int64
          nullable: true
          description: Lower bound, only present for number fields
        max:
          type: integer
          format: int64
          nullable: true
          description: Upper bound, only present for number fields
    BlueprintManifestEngineTerraform:
      type: object
      required:
        - type
        - provider
        - terraform
      properties:
        type:
          type: string
          enum:
            - terraform
        provider:
          $ref: '#/components/schemas/CloudVendorEnum'
        terraform:
          $ref: '#/components/schemas/BlueprintManifestVersionBlock'
        credentials:
          $ref: '#/components/schemas/BlueprintManifestCredentialsConfig'
        backend:
          $ref: '#/components/schemas/BlueprintManifestBackendConfig'
        timeout:
          type: integer
          format: int64
          nullable: true
          description: Default execution timeout in seconds.
        resources:
          $ref: '#/components/schemas/BlueprintManifestResourcesConfig'
    BlueprintManifestEngineOpenTofu:
      type: object
      required:
        - type
        - provider
        - opentofu
      properties:
        type:
          type: string
          enum:
            - opentofu
        provider:
          $ref: '#/components/schemas/CloudVendorEnum'
        opentofu:
          $ref: '#/components/schemas/BlueprintManifestVersionBlock'
        credentials:
          $ref: '#/components/schemas/BlueprintManifestCredentialsConfig'
        backend:
          $ref: '#/components/schemas/BlueprintManifestBackendConfig'
        timeout:
          type: integer
          format: int64
          nullable: true
        resources:
          $ref: '#/components/schemas/BlueprintManifestResourcesConfig'
    BlueprintManifestEngineHelm:
      type: object
      required:
        - type
        - chart
      properties:
        type:
          type: string
          enum:
            - helm
        chart:
          $ref: '#/components/schemas/BlueprintManifestChartConfig'
        timeout:
          type: integer
          format: int64
          nullable: true
        resources:
          $ref: '#/components/schemas/BlueprintManifestResourcesConfig'
    CloudVendorEnum:
      type: string
      enum:
        - AWS
        - SCW
        - GCP
        - DO
        - AZURE
        - OVH
        - CIVO
        - HETZNER
        - ORACLE
        - IBM
        - ON_PREMISE
    BlueprintManifestVersionBlock:
      type: object
      required:
        - version
      properties:
        version:
          type: string
          description: Catalog-declared default version for this engine.
          example: 1.9.7
        allowed_values:
          type: array
          nullable: true
          description: Versions the user may choose from. Null = unrestricted.
          items:
            type: string
    BlueprintManifestCredentialsConfig:
      type: object
      description: >-
        Credentials override metadata. Catalog default + which values are
        allowed and whether the user can override at all.
      properties:
        default:
          type: string
          nullable: true
          example: cluster
        allowed_values:
          type: array
          nullable: true
          items:
            type: string
        overridable:
          type: boolean
          default: true
    BlueprintManifestBackendConfig:
      type: object
      description: >-
        Backend override metadata. Catalog default + which values are allowed,
        plus the user-provided backend block when the catalog ships one.
      properties:
        default:
          type: string
          nullable: true
          example: qovery
        allowed_values:
          type: array
          nullable: true
          items:
            type: string
        overridable:
          type: boolean
          default: true
        user_provided:
          $ref: '#/components/schemas/BlueprintManifestUserProvidedBackend'
    BlueprintManifestResourcesConfig:
      type: object
      description: Catalog-declared default compute resources for the execution job.
      properties:
        cpu:
          type: string
          nullable: true
          example: 500m
        ram:
          type: string
          nullable: true
          example: 512Mi
        storage:
          type: string
          nullable: true
    BlueprintManifestChartConfig:
      type: object
      required:
        - repository
        - name
        - version
      properties:
        repository:
          type: string
          format: uri
        name:
          type: string
        version:
          type: string
    BlueprintManifestUserProvidedBackend:
      type: object
      required:
        - type
      properties:
        type:
          type: string
          description: Terraform backend type (e.g. "s3", "gcs", "azurerm").
        config:
          type: object
          description: Static backend config (bucket, region, etc.).
          additionalProperties:
            type: string
          default: {}
  responses:
    '400':
      description: Bad request
    '401':
      description: Access token is missing or invalid
    '403':
      description: Access forbidden
    '404':
      description: Resource not found
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        JWT tokens should be used with OIDC account (human to machine). JWT
        tokens used by the Qovery console to communicate with the API have a
        TTL. Curl Example ' curl https://console.qovery.com/organization -H
        "Authorization: Bearer $qovery_token" '
    ApiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Token API are generated by Qovery to manage machine to machine
        interaction and do not have a TTL. Curl Example ' curl
        https://console.qovery.com/organization -H "Authorization: Token
        $qovery_token" '

````