List my teams
curl --request GET \
--url https://versuno.ai/api/public/teams \
--header 'Authorization: <api-key>'import requests
url = "https://versuno.ai/api/public/teams"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://versuno.ai/api/public/teams', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://versuno.ai/api/public/teams"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://versuno.ai/api/public/teams",
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: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://versuno.ai/api/public/teams")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_bodyHttpResponse<String> response = Unirest.get("https://versuno.ai/api/public/teams")
.header("Authorization", "<api-key>")
.asString();using RestSharp;
var options = new RestClientOptions("https://versuno.ai/api/public/teams");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "<api-key>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
[
{
"id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"name": "Acme Corp",
"slug": "acme-corp",
"status": "active",
"myRole": "owner",
"memberCount": 4,
"createdAt": "2026-01-10T09:00:00.000Z"
}
]{
"error": "Invalid API key"
}Teams
List my teams
Returns all teams the authenticated user owns or is an active member of, ordered by ownership then join date.
GET
/
teams
List my teams
curl --request GET \
--url https://versuno.ai/api/public/teams \
--header 'Authorization: <api-key>'import requests
url = "https://versuno.ai/api/public/teams"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://versuno.ai/api/public/teams', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://versuno.ai/api/public/teams"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://versuno.ai/api/public/teams",
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: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://versuno.ai/api/public/teams")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_bodyHttpResponse<String> response = Unirest.get("https://versuno.ai/api/public/teams")
.header("Authorization", "<api-key>")
.asString();using RestSharp;
var options = new RestClientOptions("https://versuno.ai/api/public/teams");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "<api-key>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
[
{
"id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"name": "Acme Corp",
"slug": "acme-corp",
"status": "active",
"myRole": "owner",
"memberCount": 4,
"createdAt": "2026-01-10T09:00:00.000Z"
}
]{
"error": "Invalid API key"
}Returns active teams first (owned teams at the top), followed by any archived teams where the user is the owner.
Stripe billing fields are intentionally excluded from this response.
Authorizations
Versuno API key. Must be prefixed with Bearer. Format: Bearer uk_live_...
Response
Array of team objects with the caller's role and member count.
Unique identifier of the team.
Example:
"c3d4e5f6-a7b8-9012-cdef-123456789012"
Display name of the team.
Example:
"Acme Corp"
URL-safe identifier for the team.
Example:
"acme-corp"
Whether the team is active or archived.
Available options:
active, archived Example:
"active"
The authenticated user's role in this team.
Available options:
owner, admin, member Example:
"owner"
Number of active members in the team.
Example:
4
When the team was created.
Example:
"2026-01-10T09:00:00.000Z"
Was this page helpful?

