curl --request GET \
--url https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"results": [
{
"kind": "variable",
"name": "db_password",
"type": {
"type": "string",
"pattern": "<string>",
"min_length": 123,
"max_length": 123,
"min": 123,
"max": 123
},
"required": true,
"is_secret": true,
"description": "<string>",
"allowed_values": [
"<string>"
],
"default_value": "<string>"
}
],
"engine": {
"type": "terraform",
"provider": "AWS",
"terraform": {
"version": "1.9.7",
"allowed_values": [
"<string>"
]
},
"credentials": {
"default": "cluster",
"allowed_values": [
"<string>"
],
"overridable": true
},
"backend": {
"default": "qovery",
"allowed_values": [
"<string>"
],
"overridable": true,
"user_provided": {
"type": "<string>",
"config": {}
}
},
"timeout": 123,
"resources": {
"cpu": "500m",
"ram": "512Mi",
"storage": "<string>"
}
}
}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).
curl --request GET \
--url https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.qovery.com/organization/{organizationId}/blueprint/catalog/{provider}/{serviceFamily}/{serviceVersion}/manifest")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"results": [
{
"kind": "variable",
"name": "db_password",
"type": {
"type": "string",
"pattern": "<string>",
"min_length": 123,
"max_length": 123,
"min": 123,
"max": 123
},
"required": true,
"is_secret": true,
"description": "<string>",
"allowed_values": [
"<string>"
],
"default_value": "<string>"
}
],
"engine": {
"type": "terraform",
"provider": "AWS",
"terraform": {
"version": "1.9.7",
"allowed_values": [
"<string>"
]
},
"credentials": {
"default": "cluster",
"allowed_values": [
"<string>"
],
"overridable": true
},
"backend": {
"default": "qovery",
"allowed_values": [
"<string>"
],
"overridable": true,
"user_provided": {
"type": "<string>",
"config": {}
}
},
"timeout": 123,
"resources": {
"cpu": "500m",
"ram": "512Mi",
"storage": "<string>"
}
}
}Authorizations
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" '
Path Parameters
Organization ID
Cloud provider (e.g. aws, gcp, azure)
Service family (e.g. mysql, postgresql)
Service version (e.g. 8, 14)
Query Parameters
Environment ID used to resolve context variables
Response
The form fields and engine spec for the selected blueprint
Form fields the console renders for the user (variables + auto-sourced context variables).
An editable form input the user fills in (from spec.variables).
- Option 1
- Option 2
Show child attributes
Show child attributes
Engine spec discriminated by type. Catalog-declared execution config + per-knob default/allowedValues/overridable metadata for the console to render.
- Option 1
- Option 2
- Option 3
Show child attributes
Show child attributes
Was this page helpful?