List Columns
curl --request GET \
--url https://partner.peaka.studio/api/v1/data/projects/{projectId}/table/{tableName}/columns \
--header 'Authorization: Bearer <token>'import requests
url = "https://partner.peaka.studio/api/v1/data/projects/{projectId}/table/{tableName}/columns"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://partner.peaka.studio/api/v1/data/projects/{projectId}/table/{tableName}/columns', 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}/table/{tableName}/columns",
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://partner.peaka.studio/api/v1/data/projects/{projectId}/table/{tableName}/columns"
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://partner.peaka.studio/api/v1/data/projects/{projectId}/table/{tableName}/columns")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://partner.peaka.studio/api/v1/data/projects/{projectId}/table/{tableName}/columns")
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[
{
"id": "<string>",
"name": "<string>",
"dataType": "<string>",
"displayName": "<string>",
"defaultValue": "<string>",
"isNotNull": true,
"isUnique": true,
"desc": "<string>"
}
]Data -- Internal Tables
List Columns
Lists all columns defined in the specified Peaka Table. Returns column metadata including name, data type, display name, default value, and constraints such as nullability and uniqueness.
GET
/
data
/
projects
/
{projectId}
/
table
/
{tableName}
/
columns
List Columns
curl --request GET \
--url https://partner.peaka.studio/api/v1/data/projects/{projectId}/table/{tableName}/columns \
--header 'Authorization: Bearer <token>'import requests
url = "https://partner.peaka.studio/api/v1/data/projects/{projectId}/table/{tableName}/columns"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://partner.peaka.studio/api/v1/data/projects/{projectId}/table/{tableName}/columns', 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}/table/{tableName}/columns",
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://partner.peaka.studio/api/v1/data/projects/{projectId}/table/{tableName}/columns"
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://partner.peaka.studio/api/v1/data/projects/{projectId}/table/{tableName}/columns")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://partner.peaka.studio/api/v1/data/projects/{projectId}/table/{tableName}/columns")
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[
{
"id": "<string>",
"name": "<string>",
"dataType": "<string>",
"displayName": "<string>",
"defaultValue": "<string>",
"isNotNull": true,
"isUnique": true,
"desc": "<string>"
}
]

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
Response
200 - */*
OK
The id of the column.
The name of the column.
The data type of the column.
The display name of the column.
The default value of the column.
The not null flag for the column.
The unique flag for the column.
The description of the column.