Share Catalog
curl --request POST \
--url https://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"targetProjectId": "MQtMNNBY"
}
'import requests
url = "https://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share"
payload = { "targetProjectId": "MQtMNNBY" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({targetProjectId: 'MQtMNNBY'})
};
fetch('https://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share', 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://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'targetProjectId' => 'MQtMNNBY'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share"
payload := strings.NewReader("{\n \"targetProjectId\": \"MQtMNNBY\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"targetProjectId\": \"MQtMNNBY\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"targetProjectId\": \"MQtMNNBY\"\n}"
response = http.request(request)
puts response.read_body{
"sharedCatalogId": "555611268656923356"
}Data -- Catalogs
Share Catalog
Shares a catalog from the current project with another Peaka project. The target project gains read access to the catalog’s schemas and tables. Provide the targetProjectId of the project you want to share the catalog with.
POST
/
data
/
projects
/
{projectId}
/
catalogs
/
{catalogId}
/
share
Share Catalog
curl --request POST \
--url https://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"targetProjectId": "MQtMNNBY"
}
'import requests
url = "https://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share"
payload = { "targetProjectId": "MQtMNNBY" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({targetProjectId: 'MQtMNNBY'})
};
fetch('https://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share', 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://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'targetProjectId' => 'MQtMNNBY'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share"
payload := strings.NewReader("{\n \"targetProjectId\": \"MQtMNNBY\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"targetProjectId\": \"MQtMNNBY\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://partner.peaka.studio/api/v1/data/projects/{projectId}/catalogs/{catalogId}/share")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"targetProjectId\": \"MQtMNNBY\"\n}"
response = http.request(request)
puts response.read_body{
"sharedCatalogId": "555611268656923356"
}

Authorizations
Use the Authorization header with the value 'Bearer ' to authenticate. Partner API Keys have full access; Project API Keys are limited to their project scope. Learn more: https://docs.peaka.com/api-reference/authentication
Body
application/json
Share Request
Target Project ID
Response
200 - */*
Catalog shared successfully
The ID of the shared catalog.
⌘I