Get Team Members
curl --request GET \
--url https://api.rolla.xyz/api/v1/external/teams/members \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.rolla.xyz/api/v1/external/teams/members"
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.rolla.xyz/api/v1/external/teams/members', 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.rolla.xyz/api/v1/external/teams/members",
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.rolla.xyz/api/v1/external/teams/members"
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.rolla.xyz/api/v1/external/teams/members")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.rolla.xyz/api/v1/external/teams/members")
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{
"status": 200,
"message": "Team members retrieved successfully",
"success": true,
"data": {
"members": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"email": "jane@example.com",
"fullname": "Jane Doe",
"role": "initiator",
"role_id": "21302ed1-0e63-44e6-bb02-8db6baa2efcd",
"status": "active",
"invite_status": "accepted",
"is_owner": false,
"joined_at": "2024-01-10T08:00:00.000Z"
}
],
"pagination": {
"page": 1,
"pageSize": 10,
"total": 3,
"totalPages": 1
}
}
}{
"status": 400,
"message": "Validation failed",
"errors": [
{
"path": [
"status"
],
"message": "Invalid enum value. Expected 'active' | 'inactive'"
}
]
}{
"status": 400,
"message": "Validation failed",
"code": "ACCOUNT_RESTRICTED",
"errors": [
{
"path": [
"amount"
],
"message": "amount must be a whole number of smallest currency units (e.g. cents)"
}
]
}Teams
Get Team Members
Retrieves a paginated list of the team members of your business, newest first.
GET
/
teams
/
members
Get Team Members
curl --request GET \
--url https://api.rolla.xyz/api/v1/external/teams/members \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.rolla.xyz/api/v1/external/teams/members"
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.rolla.xyz/api/v1/external/teams/members', 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.rolla.xyz/api/v1/external/teams/members",
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.rolla.xyz/api/v1/external/teams/members"
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.rolla.xyz/api/v1/external/teams/members")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.rolla.xyz/api/v1/external/teams/members")
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{
"status": 200,
"message": "Team members retrieved successfully",
"success": true,
"data": {
"members": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"email": "jane@example.com",
"fullname": "Jane Doe",
"role": "initiator",
"role_id": "21302ed1-0e63-44e6-bb02-8db6baa2efcd",
"status": "active",
"invite_status": "accepted",
"is_owner": false,
"joined_at": "2024-01-10T08:00:00.000Z"
}
],
"pagination": {
"page": 1,
"pageSize": 10,
"total": 3,
"totalPages": 1
}
}
}{
"status": 400,
"message": "Validation failed",
"errors": [
{
"path": [
"status"
],
"message": "Invalid enum value. Expected 'active' | 'inactive'"
}
]
}{
"status": 400,
"message": "Validation failed",
"code": "ACCOUNT_RESTRICTED",
"errors": [
{
"path": [
"amount"
],
"message": "amount must be a whole number of smallest currency units (e.g. cents)"
}
]
}Retrieve a paginated list of team members for your business. Filter by status or search by name and email.
Members are returned newest first.
Example Request
curl -X GET "https://api.rolla.xyz/api/v1/external/teams/members?page=1&pageSize=10&status=active" \
-H "X-API-Key: your_api_key_here"
Query Parameters
| Parameter | Type | Description |
|---|---|---|
page | integer | Page number (default: 1) |
pageSize | integer | Results per page (default: 10, max: 100) |
search | string | Search by name or email |
status | string | Filter by status: active, inactive |
invite_status is pending until the member accepts the invitation, then accepted (or declined if they refuse). role and role_id are null for a member who has no role assigned.
Example Response
{
"status": 200,
"message": "Team members retrieved successfully",
"success": true,
"data": {
"members": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"email": "jane@example.com",
"fullname": "Jane Doe",
"role": "initiator",
"role_id": "21302ed1-0e63-44e6-bb02-8db6baa2efcd",
"status": "active",
"invite_status": "accepted",
"is_owner": false,
"joined_at": "2024-01-10T08:00:00.000Z"
}
],
"pagination": {
"page": 1,
"pageSize": 10,
"total": 3,
"totalPages": 1
}
}
}
The
role field returns the role name — one of business_owner, business_admin, initiator, or approver. The former collaborator value is now returned as initiator. If you string-match on role names, map "collaborator" to "initiator" and add an "approver" branch. See Get Available Roles for the full role reference.Authorizations
Your Rolla API key
Query Parameters
Page number
Required range:
x >= 1Example:
1
Results per page
Required range:
1 <= x <= 100Example:
10
Match against member name or email
Example:
"jane"
Filter by member status
Available options:
active, inactive Example:
"active"