Get a Table Pair's read access
curl --request GET \
--url https://api.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access', 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.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access",
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.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access"
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.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access")
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{
"identity_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"workspaces": [
{
"lakehouses": [
{
"data_access_role": "<string>",
"lakehouse_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"paths": [
"<string>"
]
}
],
"workspace_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"workspace_role": "Viewer"
}
]
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}Fabric
Get a Table Pair's read access
The read access the Environment’s workspace identity needs for an active Table Pair: Viewer on each workspace it reads outside the Environment, and Read on each Lakehouse path through a OneLake data access role. Saving a pair in the app gives this access; another client gives it in Fabric with its own access. This API never checks or changes Fabric.
Requires the GV.APIReader application role, or a higher role (Owner > Contributor > Reader).
GET
/
api
/
v1
/
fabric
/
pairs
/
{resource_id}
/
read-access
Get a Table Pair's read access
curl --request GET \
--url https://api.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access', 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.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access",
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.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access"
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.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.generalvalidation.com/api/v1/fabric/pairs/{resource_id}/read-access")
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{
"identity_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"workspaces": [
{
"lakehouses": [
{
"data_access_role": "<string>",
"lakehouse_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"paths": [
"<string>"
]
}
],
"workspace_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"workspace_role": "Viewer"
}
]
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}{
"code": "<string>",
"detail": "<string>",
"instance": "<string>",
"requestId": "<string>",
"status": 123,
"title": "<string>",
"type": "<string>",
"diagnostics": {}
}Authorizations
Microsoft Entra application token issued by the caller's Organization tenant for this multitenant API. Request the .default scope and assign the application the required GV.APIReader, GV.APIContributor, or GV.APIOwner role.
Path Parameters
The Table Pair's ID.