curl --request GET \
--url https://app.orgo.space/api/v1/users-role-group-csv \
--header 'Api-Token: <api-key>'import requests
url = "https://app.orgo.space/api/v1/users-role-group-csv"
headers = {"Api-Token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'Api-Token': '<api-key>'}};
fetch('https://app.orgo.space/api/v1/users-role-group-csv', 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://app.orgo.space/api/v1/users-role-group-csv",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Api-Token: <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://app.orgo.space/api/v1/users-role-group-csv"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Api-Token", "<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://app.orgo.space/api/v1/users-role-group-csv")
.header("Api-Token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.orgo.space/api/v1/users-role-group-csv")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Api-Token"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"user": {
"id": 42,
"firstName": "James",
"lastName": "Patterson",
"email": "james.patterson@example.com",
"status": "ACTIVE",
"gender": "M",
"localCenter": {
"name": "Boston Chapter"
},
"type": {
"name": "Boston Chapter"
},
"age": 34,
"isFeeActive": true,
"isExpiredValidFeeDate": false,
"dateJoinedFullMemberFormatted": "string",
"dateBirthFormatted": "string",
"customFieldValues": [
"/api/v1/custom_field_values/1"
],
"townCurrent": {
"name": "Boston Chapter"
},
"phoneNumber": "+1 415 555 0142",
"cardId": "string",
"professionHeadline": "Lead organizer at Boston Chapter",
"feeTenantProductPrice": {
"name": "Boston Chapter",
"isLifetime": true
},
"postalCode": "02108",
"address": "123 Beacon Street",
"professionOrganisation": "Civic Collective",
"professionOrganisationWebsite": "https://civic-collective.example.com",
"professionOrganisationRole": "Civic Collective",
"companyIdentifier": "US-123456789",
"companyName": "Civic Collective LLC",
"companyAddress": "123 Beacon Street, Boston, MA 02108",
"companyRegNo": "DE-HRB-12345",
"localCenterParentName": "Boston Chapter",
"isExpiredValidLocalFeeDate": false,
"isLocalFeeActive": true
}
}
]Export user role groups as CSV
Exports user-unit-role-group data as a CSV file. Requires the unit query parameter specifying a role group. For non-HR_TENANT users, the role group must belong to a local center where the user has HR_LOCAL permission. Logs the export action for audit purposes. Maximum 500 records per page.
curl --request GET \
--url https://app.orgo.space/api/v1/users-role-group-csv \
--header 'Api-Token: <api-key>'import requests
url = "https://app.orgo.space/api/v1/users-role-group-csv"
headers = {"Api-Token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'Api-Token': '<api-key>'}};
fetch('https://app.orgo.space/api/v1/users-role-group-csv', 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://app.orgo.space/api/v1/users-role-group-csv",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Api-Token: <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://app.orgo.space/api/v1/users-role-group-csv"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Api-Token", "<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://app.orgo.space/api/v1/users-role-group-csv")
.header("Api-Token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.orgo.space/api/v1/users-role-group-csv")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Api-Token"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"user": {
"id": 42,
"firstName": "James",
"lastName": "Patterson",
"email": "james.patterson@example.com",
"status": "ACTIVE",
"gender": "M",
"localCenter": {
"name": "Boston Chapter"
},
"type": {
"name": "Boston Chapter"
},
"age": 34,
"isFeeActive": true,
"isExpiredValidFeeDate": false,
"dateJoinedFullMemberFormatted": "string",
"dateBirthFormatted": "string",
"customFieldValues": [
"/api/v1/custom_field_values/1"
],
"townCurrent": {
"name": "Boston Chapter"
},
"phoneNumber": "+1 415 555 0142",
"cardId": "string",
"professionHeadline": "Lead organizer at Boston Chapter",
"feeTenantProductPrice": {
"name": "Boston Chapter",
"isLifetime": true
},
"postalCode": "02108",
"address": "123 Beacon Street",
"professionOrganisation": "Civic Collective",
"professionOrganisationWebsite": "https://civic-collective.example.com",
"professionOrganisationRole": "Civic Collective",
"companyIdentifier": "US-123456789",
"companyName": "Civic Collective LLC",
"companyAddress": "123 Beacon Street, Boston, MA 02108",
"companyRegNo": "DE-HRB-12345",
"localCenterParentName": "Boston Chapter",
"isExpiredValidLocalFeeDate": false,
"isLocalFeeActive": true
}
}
]Authorizations
Server-to-server authentication. Generate a token in the admin UI at
Settings → Developers → API Access. Send the raw token in the
Api-Token header — there is no Bearer prefix.
Tokens can be marked read-only at creation time, in which case the API
rejects any non-GET request with 403 Forbidden.
Query Parameters
The collection page number
The number of items per page
0 <= x <= 500Enable or disable pagination
asc, desc asc, desc asc, desc asc, desc asc, desc asc, desc asc, desc Northern latitude boundary (requires south, east, west)
Southern latitude boundary (requires north, east, west)
Eastern longitude boundary (requires north, south, west)
Western longitude boundary (requires north, south, east)
Filter by cluster latitude (requires clusterLng and clusterPrecision)
Filter by cluster longitude (requires clusterLat and clusterPrecision)
Cluster precision (decimal places for rounding)
Filter by user fee payment status: "paid" or "not_paid"
Response
UserUnitRoleGroup collection
Show child attributes
Show child attributes

