Get All Link Tables of Current Table
curl --request GET \
--url https://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables \
--header 'Authorization: Bearer <token>'import requests
url = "https://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables', 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://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables",
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://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables"
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://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables")
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": "6d85b345-b626-4b87-b664-66237d7333e8",
"workspaceId": "16231f3f-8208-4c51-a460-87d17244344f",
"tableName": "table_c8be6d9c",
"title": "employee",
"description": "",
"tableType": "DYNAMIC",
"columns": [
{
"id": "75272cd2-63c4-4d4c-b2eb-20a864834a2a",
"name": "noco_87fee1b5",
"uiDataType": "ID",
"backendDataType": "BIGSERIAL"
},
{
"id": "f0f38619-4396-420f-aa20-5bf13bfac51c",
"name": "course_name",
"uiDataType": "SINGLE_LINE_TEXT",
"backendDataType": "TEXT",
"required": false,
"description": "",
"uiMetadata": {
"title": "course name"
}
},
{
"id": "b83a3605-2996-4898-8f31-076d34e49424",
"name": "course_1234",
"uiDataType": "LINK",
"backendDataType": "BIG SERIAL",
"colOptions": {
"id": "f668c79a-11ca-4640-bcf9-ae214712f0a7",
"relationType": "MANY_TO_MANY",
"columnId": "b83a3605-2996-4898-8f31-076d34e49424",
"associatedColumnId": "a19221ad-ef55-4de7-b9b3-2e6a05e3bd93",
"tableId": "6d85b345-b626-4b87-b664-66237d7333e8",
"associateTableId": "9c8a448d-7884-4158-bfca-202bc95b0515",
"childColumnId": "75272cd2-63c4-4d4c-b2eb-20a864834a2a",
"parentColumnId": "f830fd3f-8624-4ae5-959f-36f1756d828a",
"isItSource": false
},
"uiMetadata": {
"title": "course"
}
}
],
"views": [
{
"id": "e5a120e8-fa3b-47cb-9773-7541aa4ec270",
"name": "Grid View (Master)",
"type": "GRID",
"isMaster": true,
"position": 0
}
]
}
]Links & Joins
Get All Link Tables of Current Table
1️⃣ Overview
Purpose: Retrieves all tables that are linked to a specified table within a workspace. Useful for discovering all relationships (link columns) associated with a table.
2️⃣ Endpoint
GET /noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables
3️⃣ Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| workspaceId | UUID | ✅ Yes | Workspace identifier |
| tableId | UUID | ✅ Yes | Table identifier to query linked tables for |
4️⃣ Authentication
Requires Bearer JWT Token
Authorization: Bearer <token>
5️⃣ Request Headers
| Header | Required |
|---|---|
| Authorization | ✅ Yes |
| Content-Type: application/json | ✅ Yes |
6️⃣ Example Request
curl -X GET https://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables \
-H "Authorization: Bearer <token>"
7️⃣ Behavior Summary
Returns all tables linked to the specified table.
Includes metadata about link columns and relation types.
GET
/
noCo
/
api
/
v2
/
workspaces
/
{workspaceId}
/
tables
/
{tableId}
/
linkTables
Get All Link Tables of Current Table
curl --request GET \
--url https://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables \
--header 'Authorization: Bearer <token>'import requests
url = "https://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables', 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://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables",
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://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables"
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://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://be.datagol.ai/noCo/api/v2/workspaces/{workspaceId}/tables/{tableId}/linkTables")
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": "6d85b345-b626-4b87-b664-66237d7333e8",
"workspaceId": "16231f3f-8208-4c51-a460-87d17244344f",
"tableName": "table_c8be6d9c",
"title": "employee",
"description": "",
"tableType": "DYNAMIC",
"columns": [
{
"id": "75272cd2-63c4-4d4c-b2eb-20a864834a2a",
"name": "noco_87fee1b5",
"uiDataType": "ID",
"backendDataType": "BIGSERIAL"
},
{
"id": "f0f38619-4396-420f-aa20-5bf13bfac51c",
"name": "course_name",
"uiDataType": "SINGLE_LINE_TEXT",
"backendDataType": "TEXT",
"required": false,
"description": "",
"uiMetadata": {
"title": "course name"
}
},
{
"id": "b83a3605-2996-4898-8f31-076d34e49424",
"name": "course_1234",
"uiDataType": "LINK",
"backendDataType": "BIG SERIAL",
"colOptions": {
"id": "f668c79a-11ca-4640-bcf9-ae214712f0a7",
"relationType": "MANY_TO_MANY",
"columnId": "b83a3605-2996-4898-8f31-076d34e49424",
"associatedColumnId": "a19221ad-ef55-4de7-b9b3-2e6a05e3bd93",
"tableId": "6d85b345-b626-4b87-b664-66237d7333e8",
"associateTableId": "9c8a448d-7884-4158-bfca-202bc95b0515",
"childColumnId": "75272cd2-63c4-4d4c-b2eb-20a864834a2a",
"parentColumnId": "f830fd3f-8624-4ae5-959f-36f1756d828a",
"isItSource": false
},
"uiMetadata": {
"title": "course"
}
}
],
"views": [
{
"id": "e5a120e8-fa3b-47cb-9773-7541aa4ec270",
"name": "Grid View (Master)",
"type": "GRID",
"isMaster": true,
"position": 0
}
]
}
]Authorizations
This API uses OAuth 2.0 with the authorization code grant flow.
Path Parameters
Workspace identifier
Table identifier to query linked tables for
Response
200 - application/json
Linked tables retrieved successfully
Unique identifier of the linked table
Workspace this table belongs to
Internal system name of the table
Display name of the table shown in the UI
Optional description of the table
List of all columns in the table including system-generated and user-defined columns
Show child attributes
Show child attributes
List of views defined on this table
Show child attributes
Show child attributes