curl --request GET \
--url https://api.voucher-staging.allride.io/partner/v1/groups/{groupId}/members \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.voucher-staging.allride.io/partner/v1/groups/{groupId}/members', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.voucher-staging.allride.io/partner/v1/groups/{groupId}/members"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)HttpResponse<String> response = Unirest.get("https://api.voucher-staging.allride.io/partner/v1/groups/{groupId}/members")
.header("Authorization", "Bearer <token>")
.asString();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.voucher-staging.allride.io/partner/v1/groups/{groupId}/members"
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))
}<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.voucher-staging.allride.io/partner/v1/groups/{groupId}/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 => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}{
"data": {
"data": [
{
"id": 17043,
"resource": "partner-membership",
"partnerId": 1069,
"userId": 4069,
"email": "ops@example.com",
"displayName": "Example Transit Ops",
"status": "active",
"directPermissions": [],
"groupIds": [
14069
],
"effectivePermissions": [
"view-profile",
"view-consumer-catalog",
"view-consumer-redemptions",
"create-consumer-redemptions",
"void-consumer-redemptions",
"view-consumer-redemption-entities",
"manage-consumer-redemption-entities",
"view-consumer-redemption-links",
"manage-consumer-redemption-links"
],
"inertPermissions": [],
"mfaEnrolled": true,
"invitedBy": {
"type": "admin-user",
"id": null,
"label": "AllRide"
},
"inviteExpiresAt": null,
"acceptedAt": "2026-10-19T15:00:00Z",
"suspendedAt": null,
"removedAt": null,
"provisionedVia": "invite",
"createdAt": "2026-10-19T14:05:00Z",
"updatedAt": "2026-10-21T11:30:00Z",
"_links": {
"self": {
"href": "https://api.voucher.allride.io/partner/v1/members/17043",
"type": "application/json"
}
}
}
],
"page": 1,
"perPage": 25,
"totalPages": 1,
"total": 1
}
}List the members of a group
Lists the memberships in one group.
Required permissions: view-groups, view-members · API keys: allowed
curl --request GET \
--url https://api.voucher-staging.allride.io/partner/v1/groups/{groupId}/members \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.voucher-staging.allride.io/partner/v1/groups/{groupId}/members', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.voucher-staging.allride.io/partner/v1/groups/{groupId}/members"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)HttpResponse<String> response = Unirest.get("https://api.voucher-staging.allride.io/partner/v1/groups/{groupId}/members")
.header("Authorization", "Bearer <token>")
.asString();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.voucher-staging.allride.io/partner/v1/groups/{groupId}/members"
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))
}<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.voucher-staging.allride.io/partner/v1/groups/{groupId}/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 => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}{
"data": {
"data": [
{
"id": 17043,
"resource": "partner-membership",
"partnerId": 1069,
"userId": 4069,
"email": "ops@example.com",
"displayName": "Example Transit Ops",
"status": "active",
"directPermissions": [],
"groupIds": [
14069
],
"effectivePermissions": [
"view-profile",
"view-consumer-catalog",
"view-consumer-redemptions",
"create-consumer-redemptions",
"void-consumer-redemptions",
"view-consumer-redemption-entities",
"manage-consumer-redemption-entities",
"view-consumer-redemption-links",
"manage-consumer-redemption-links"
],
"inertPermissions": [],
"mfaEnrolled": true,
"invitedBy": {
"type": "admin-user",
"id": null,
"label": "AllRide"
},
"inviteExpiresAt": null,
"acceptedAt": "2026-10-19T15:00:00Z",
"suspendedAt": null,
"removedAt": null,
"provisionedVia": "invite",
"createdAt": "2026-10-19T14:05:00Z",
"updatedAt": "2026-10-21T11:30:00Z",
"_links": {
"self": {
"href": "https://api.voucher.allride.io/partner/v1/members/17043",
"type": "application/json"
}
}
}
],
"page": 1,
"perPage": 25,
"totalPages": 1,
"total": 1
}
}Authorizations
Your API key in Authorization: Bearer <key>. Use vk_test_… keys against the sandbox and vk_live_… keys against production.
Path Parameters
Group id. Unsigned 64-bit integer (ids and large counters). May exceed 2^53; parse with a BigInt-safe JSON parser in JavaScript.
0 <= x <= 18446744073709552000Query Parameters
Page number, 1-100,000 (default 1). Outside the range: 400 data-failed-validation with the constraint invalid-page.
1 <= x <= 100000Items per page, 1-100 (default 25). Outside the range: 400 data-failed-validation with the constraint invalid-page.
1 <= x <= 100One sort field; prefix - for descending (sort=field or sort=-field). Allowed: createdAt, email, acceptedAt. Default -createdAt. The server appends id as a tie-breaker.
"-createdAt"
Case-insensitive search (at most 255 characters) over email, displayName.
255Membership status (equals).
invited, active, suspended, removed Membership status (one of (comma-separated)). Comma-separated values.
How the membership was created (equals).
invite, sso-jit, admin Has a second factor (equals).
Creation time (download key) (greater than).
Creation time (download key) (greater than or equal).
Creation time (download key) (less than).
Creation time (download key) (less than or equal).
Response
OK
Page envelope of PartnerMembership items.
The page.
Show child attributes
Show child attributes