curl --request GET \
--url https://api.luminpdf.com/v1/workspaces/spaces \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.luminpdf.com/v1/workspaces/spaces"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.luminpdf.com/v1/workspaces/spaces', 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.luminpdf.com/v1/workspaces/spaces",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>"
],
]);
$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.luminpdf.com/v1/workspaces/spaces"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
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.luminpdf.com/v1/workspaces/spaces")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.luminpdf.com/v1/workspaces/spaces")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"page": 1,
"limit": 25,
"total_count": 3,
"data": [
{
"space_id": "69d74983d0cbaa0977be7997",
"name": "Sales Team",
"role_of_user": "admin",
"total_members": 12,
"created_at": "2026-04-09T06:38:59.381Z"
},
{
"space_id": "68595b53e8013297be427871",
"name": "Engineering",
"role_of_user": "member",
"total_members": 8,
"created_at": "2025-12-01T10:15:30.000Z"
},
{
"space_id": "668b6900aa86960c33b24147",
"name": "Partner Program",
"role_of_user": "member",
"total_members": 5,
"created_at": "2025-07-08T03:54:17.521Z"
}
]
}{
"error_code": "<string>",
"error_message": "<string>"
}List Spaces
Return a paginated list of Spaces within the authorized Workspace.
curl --request GET \
--url https://api.luminpdf.com/v1/workspaces/spaces \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.luminpdf.com/v1/workspaces/spaces"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.luminpdf.com/v1/workspaces/spaces', 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.luminpdf.com/v1/workspaces/spaces",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>"
],
]);
$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.luminpdf.com/v1/workspaces/spaces"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
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.luminpdf.com/v1/workspaces/spaces")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.luminpdf.com/v1/workspaces/spaces")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"page": 1,
"limit": 25,
"total_count": 3,
"data": [
{
"space_id": "69d74983d0cbaa0977be7997",
"name": "Sales Team",
"role_of_user": "admin",
"total_members": 12,
"created_at": "2026-04-09T06:38:59.381Z"
},
{
"space_id": "68595b53e8013297be427871",
"name": "Engineering",
"role_of_user": "member",
"total_members": 8,
"created_at": "2025-12-01T10:15:30.000Z"
},
{
"space_id": "668b6900aa86960c33b24147",
"name": "Partner Program",
"role_of_user": "member",
"total_members": 5,
"created_at": "2025-07-08T03:54:17.521Z"
}
]
}{
"error_code": "<string>",
"error_message": "<string>"
}Required scopes (OAuth 2.0)
Required scopes (OAuth 2.0)
workspaces.read or workspacesAuthorizations
Provide your API key in the X-API-Key header, e.g., X-API-Key: YOUR_API_KEY.
Query Parameters
Specify which page of the dataset to return (min = 1).
x >= 1Specify how many records to return per page: one of 10, 25, 50.
10, 25, 50 Response
Returns the list of Spaces in the Workspace.
The current page of results being returned.
The maximum number of records shown per page (e.g., 10, 25, or 50).
The total number of Spaces in the Workspace.
List of Spaces returned for the requested page.
Hide child attributes
Hide child attributes
The unique identifier of the Space.
The name of the Space.
The role of the authenticated user in this Space.
admin, member The total number of members in the Space.
The timestamp when the Space was created (ISO 8601).