Create a workspace
curl --request POST \
--url https://api.lighton.ai/api/v3/workspaces \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Engineering Team Workspace",
"description": "Workspace for the engineering team"
}
'import requests
url = "https://api.lighton.ai/api/v3/workspaces"
payload = {
"name": "Engineering Team Workspace",
"description": "Workspace for the engineering team"
}
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({
name: 'Engineering Team Workspace',
description: 'Workspace for the engineering team'
})
};
fetch('https://api.lighton.ai/api/v3/workspaces', 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.lighton.ai/api/v3/workspaces",
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([
'name' => 'Engineering Team Workspace',
'description' => 'Workspace for the engineering team'
]),
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://api.lighton.ai/api/v3/workspaces"
payload := strings.NewReader("{\n \"name\": \"Engineering Team Workspace\",\n \"description\": \"Workspace for the engineering team\"\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://api.lighton.ai/api/v3/workspaces")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Engineering Team Workspace\",\n \"description\": \"Workspace for the engineering team\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.lighton.ai/api/v3/workspaces")
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 \"name\": \"Engineering Team Workspace\",\n \"description\": \"Workspace for the engineering team\"\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"name": "<string>",
"workspace_type": "<string>",
"document_upload_method": "<string>",
"description": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"files_count": 123,
"user_role": "owner",
"used_storage": 123,
"summaries": [
{
"language": "<string>",
"summary": "<string>"
}
],
"sync": {
"datasource_type": "<string>",
"source_name": "<string>",
"last_status": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"failed_files_count": 123,
"next_import_date": "2023-11-07T05:31:56Z",
"editable": true,
"name": "<string>",
"instance_url": "<string>",
"tenant_id": "<string>",
"site_name": "<string>",
"client_id": "<string>",
"filter_criteria": "<unknown>"
},
"scoped_api_keys": [
{
"id": "<string>",
"name": "<string>",
"prefix": "<string>",
"role": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"scope_type": "workspace"
}
]
}{
"id": null,
"code": 422,
"error": "validation_error",
"detail": "One or more fields failed validation.",
"doc_url": "https://developers.lighton.ai/errors#validation_error",
"fields": {
"<field_name>": [
{
"error": "required",
"detail": "This field is required."
}
]
}
}{
"detail": "System is under maintenance.",
"error": "service_maintenance",
"mode": "full_shutdown",
"reason": "<string>",
"started_at": "2023-11-07T05:31:56Z",
"endpoint_category_names": [
"<string>"
]
}Workspaces
Create a workspace
⚠️ ALPHA ENDPOINT - This endpoint is in alpha and subject to breaking changes. Use with caution in production environments.
Create a new custom workspace in the authenticated user’s company. Requires the company to have allow_user_workspace_creation enabled, unless the caller is a company or instance administrator (who may always create workspaces). Returns 403 if workspace creation is disabled for the company and the caller is not an administrator.
The creator is automatically added as OWNER.
POST
/
api
/
v3
/
workspaces
Create a workspace
curl --request POST \
--url https://api.lighton.ai/api/v3/workspaces \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Engineering Team Workspace",
"description": "Workspace for the engineering team"
}
'import requests
url = "https://api.lighton.ai/api/v3/workspaces"
payload = {
"name": "Engineering Team Workspace",
"description": "Workspace for the engineering team"
}
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({
name: 'Engineering Team Workspace',
description: 'Workspace for the engineering team'
})
};
fetch('https://api.lighton.ai/api/v3/workspaces', 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.lighton.ai/api/v3/workspaces",
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([
'name' => 'Engineering Team Workspace',
'description' => 'Workspace for the engineering team'
]),
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://api.lighton.ai/api/v3/workspaces"
payload := strings.NewReader("{\n \"name\": \"Engineering Team Workspace\",\n \"description\": \"Workspace for the engineering team\"\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://api.lighton.ai/api/v3/workspaces")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Engineering Team Workspace\",\n \"description\": \"Workspace for the engineering team\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.lighton.ai/api/v3/workspaces")
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 \"name\": \"Engineering Team Workspace\",\n \"description\": \"Workspace for the engineering team\"\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"name": "<string>",
"workspace_type": "<string>",
"document_upload_method": "<string>",
"description": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"files_count": 123,
"user_role": "owner",
"used_storage": 123,
"summaries": [
{
"language": "<string>",
"summary": "<string>"
}
],
"sync": {
"datasource_type": "<string>",
"source_name": "<string>",
"last_status": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"failed_files_count": 123,
"next_import_date": "2023-11-07T05:31:56Z",
"editable": true,
"name": "<string>",
"instance_url": "<string>",
"tenant_id": "<string>",
"site_name": "<string>",
"client_id": "<string>",
"filter_criteria": "<unknown>"
},
"scoped_api_keys": [
{
"id": "<string>",
"name": "<string>",
"prefix": "<string>",
"role": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"created_by": "<string>",
"scope_type": "workspace"
}
]
}{
"id": null,
"code": 422,
"error": "validation_error",
"detail": "One or more fields failed validation.",
"doc_url": "https://developers.lighton.ai/errors#validation_error",
"fields": {
"<field_name>": [
{
"error": "required",
"detail": "This field is required."
}
]
}
}{
"detail": "System is under maintenance.",
"error": "service_maintenance",
"mode": "full_shutdown",
"reason": "<string>",
"started_at": "2023-11-07T05:31:56Z",
"endpoint_category_names": [
"<string>"
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/jsonapplication/x-www-form-urlencodedmultipart/form-data
Response
Workspace created successfully
V3 Response serializer for company workspace creation and retrieval.
owner- ownereditor- editorviewer- viewer- `` -
Available options:
owner, editor, viewer Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes