List groups
Lists the workspace's groups and distribution lists.
GET
/v1/groups
Permission
The key must be granted directory.read
A key without it gets 403 insufficient_scope, with the missing permission named in details.
The groups a member can see, ordered by name. This is the directory behind a people picker, not the administrative view.
Query parameters
| Field | Type | Description |
|---|---|---|
limit |
integer |
1 to 200.
Defaults to 50
|
cursor |
string | From the previous page's next_cursor. Opaque. |
Request
curl https://api.veruapis.com/v1/groups?limit=25 \
-H "Authorization: Bearer vak_live_..."
Response
| Field | Type | Description |
|---|---|---|
id |
string | |
name |
string | |
description |
string | |
member_count |
integer | null when withheld, which happens for a group the caller cannot see into. null is not zero: it means unknown, not empty. |
updated_at |
RFC 3339 |
{
"data": [
{ "id": "01918e4b-3001-7f11-b4a9-0242ac130003", "name": "Design team", "description": "Product design", "member_count": 12, "updated_at": "2026-07-29T12:00:00Z" },
{ "id": "01918e4b-3002-7f11-b4a9-0242ac130003", "name": "Everyone", "description": "", "member_count": 240, "updated_at": "2026-07-30T09:00:00Z" },
{ "id": "01918e4b-3003-7f11-b4a9-0242ac130003", "name": "Execs", "description": "", "member_count": null, "updated_at": "2026-07-29T09:00:00Z" }
],
"meta": { "request_id": "req_01j8z9...", "timestamp": "2026-09-02T10:00:00Z" },
"pagination": { "next_cursor": "eyJ1aWQiOjQyMTF9", "has_more": true, "limit": 25 }
}
Worth knowing
member_count is null when the group is one the key's owner cannot see into. null means unknown, not empty, which matters if you are about to report that a team has nobody in it.
Errors
Every failure uses the same shape, with a stable string code you can branch on. See the error reference.
Related
- GET Get the current user
- GET Get a user
- GET List workspace users