curl --request GET \
--url https://api.tela.com/prompt \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.tela.com/prompt"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.tela.com/prompt', 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.tela.com/prompt",
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.tela.com/prompt"
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.tela.com/prompt")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tela.com/prompt")
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": "5f0c1a2e-8b7d-4c3a-9e1f-2d4b6a8c0e12",
"title": "Invoice extractor",
"projectId": "0a1b2c3d-4e5f-4a6b-8c7d-9e0f1a2b3c4d",
"inferencesPercentage": "0.10",
"layoutVersion": "v2",
"workspaceId": "7c8d9e0f-1a2b-4c3d-8e4f-5a6b7c8d9e0f",
"customTags": [
"finance"
],
"allowedCredentials": [],
"createdBy": "ana@example.com",
"updatedBy": "ana@example.com",
"deletedBy": null,
"createdAt": "2026-03-02T14:05:11.000Z",
"updatedAt": "2026-08-19T09:41:00.000Z",
"deletedAt": null,
"favorited": true
}
]List canvases
Returns every canvas (prompt) the caller can access in the authenticated workspace: canvases that belong to an accessible project plus the caller’s own personal drafts.
curl --request GET \
--url https://api.tela.com/prompt \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.tela.com/prompt"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.tela.com/prompt', 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.tela.com/prompt",
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.tela.com/prompt"
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.tela.com/prompt")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tela.com/prompt")
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": "5f0c1a2e-8b7d-4c3a-9e1f-2d4b6a8c0e12",
"title": "Invoice extractor",
"projectId": "0a1b2c3d-4e5f-4a6b-8c7d-9e0f1a2b3c4d",
"inferencesPercentage": "0.10",
"layoutVersion": "v2",
"workspaceId": "7c8d9e0f-1a2b-4c3d-8e4f-5a6b7c8d9e0f",
"customTags": [
"finance"
],
"allowedCredentials": [],
"createdBy": "ana@example.com",
"updatedBy": "ana@example.com",
"deletedBy": null,
"createdAt": "2026-03-02T14:05:11.000Z",
"updatedAt": "2026-08-19T09:41:00.000Z",
"deletedAt": null,
"favorited": true
}
]Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Restrict results to canvases in this project.
Restrict results to this workspace id. Results are always scoped to the authenticated workspace, so this is only useful when it matches.
When true, each canvas includes promotedVersion and latestVersion.
When true, only the caller's personal drafts (projectId is null) are returned. Returns an empty list for tokens without a user identity.
Response
List of canvases.
256Project the canvas belongs to. null for the caller's personal drafts.
Share of live inferences sampled for review, as a decimal string (for example "0.10").
Editor layout version (v1 or v2).
Credential ids the canvas may use. null means unrestricted.
Whether the calling user favorited the canvas. Only present when the token carries a user identity.
Production version. Only present when includePromotedVersion=true; null when the canvas has no production or promoted version.
Show child attributes
Show child attributes
Most recently created version. Only present when includePromotedVersion=true; null when the canvas has no versions.
Show child attributes
Show child attributes