curl --request GET \
--url https://api.example.com/api/metadata \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/metadata"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/metadata', 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.example.com/api/metadata",
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.example.com/api/metadata"
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.example.com/api/metadata")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/metadata")
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{
"auth": {
"oAuthProviders": [
"google",
"github"
],
"requireEmailVerification": true,
"disableSignup": false
},
"database": {
"tables": [
{
"tableName": "users",
"recordCount": 150
},
{
"tableName": "posts",
"recordCount": 1200
}
],
"totalSizeInGB": 0.3
},
"storage": {
"buckets": [
{
"name": "avatars",
"public": true,
"objectCount": 42
}
],
"totalSizeInGB": 0.5
},
"functions": [
{
"slug": "hello-world",
"name": "hello-world",
"status": "active",
"description": "Test function"
}
],
"compute": {
"defaultProvider": "docker",
"providers": {
"docker": {
"scaleToZero": false,
"regions": false,
"ingressModes": [
"none",
"port",
"host"
],
"defaultIngress": "none",
"sourceBuild": "context-upload",
"deployTokenIssuance": false
}
}
},
"version": "2.0.0"
}{
"error": "<string>",
"message": "<string>",
"statusCode": 123,
"nextAction": "<string>"
}{
"error": "<string>",
"message": "<string>",
"statusCode": 123,
"nextAction": "<string>"
}{
"error": "<string>",
"message": "<string>",
"statusCode": 123,
"nextAction": "<string>"
}Get app metadata
Returns aggregated application metadata (auth, database, storage, functions, realtime, deployments). Use the format query parameter to choose between JSON and Markdown output.
curl --request GET \
--url https://api.example.com/api/metadata \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/metadata"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/metadata', 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.example.com/api/metadata",
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.example.com/api/metadata"
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.example.com/api/metadata")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/metadata")
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{
"auth": {
"oAuthProviders": [
"google",
"github"
],
"requireEmailVerification": true,
"disableSignup": false
},
"database": {
"tables": [
{
"tableName": "users",
"recordCount": 150
},
{
"tableName": "posts",
"recordCount": 1200
}
],
"totalSizeInGB": 0.3
},
"storage": {
"buckets": [
{
"name": "avatars",
"public": true,
"objectCount": 42
}
],
"totalSizeInGB": 0.5
},
"functions": [
{
"slug": "hello-world",
"name": "hello-world",
"status": "active",
"description": "Test function"
}
],
"compute": {
"defaultProvider": "docker",
"providers": {
"docker": {
"scaleToZero": false,
"regions": false,
"ingressModes": [
"none",
"port",
"host"
],
"defaultIngress": "none",
"sourceBuild": "context-upload",
"deployTokenIssuance": false
}
}
},
"version": "2.0.0"
}{
"error": "<string>",
"message": "<string>",
"statusCode": 123,
"nextAction": "<string>"
}{
"error": "<string>",
"message": "<string>",
"statusCode": 123,
"nextAction": "<string>"
}{
"error": "<string>",
"message": "<string>",
"statusCode": 123,
"nextAction": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Response format. json returns structured JSON (default). markdown returns a human-readable Markdown document suitable for AI coding tools and developer onboarding.
json, markdown Response
Application metadata
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Optional; present when realtime is configured
Show child attributes
Show child attributes
Optional; present on cloud-hosted projects only
Show child attributes
Show child attributes
Optional; absent when no compute driver is configured, which is how a client detects that compute is unavailable. Capabilities are per provider so a client can stop offering what the configured driver cannot honour.
Show child attributes
Show child attributes
Was this page helpful?