List local centers for map display
curl --request GET \
--url https://app.orgo.space/api/v1/local-centers-map \
--header 'Api-Token: <api-key>'import requests
url = "https://app.orgo.space/api/v1/local-centers-map"
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/local-centers-map', 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/local-centers-map",
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/local-centers-map"
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/local-centers-map")
.header("Api-Token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.orgo.space/api/v1/local-centers-map")
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[
{
"officeAddress": "123 Beacon Street, Boston, MA 02108",
"legalNumber": "string",
"geoLocation": "Boston Common, Boston, MA",
"placesApiId": "ChIJOwg_06VPwokRYv534QaPC8g",
"location": "Boston Common, Boston, MA",
"website": "https://civic-collective.example.com",
"isInitiative": true,
"town": {
"id": 42,
"name": "Boston Chapter",
"nameWithCounty": "Boston Chapter",
"county": {
"name": "Boston Chapter",
"state": "ACTIVE"
},
"latitude": 42.3601,
"longitude": -71.0589
},
"localUnits": "string",
"feePayments": [
"/api/v1/fee_payments/1"
],
"feeTemporary": "string",
"postalAddress": "02108",
"facebookUrl": "https://facebook.com/jamespatterson",
"instagramUrl": "https://instagram.com/jpatterson",
"twitterUrl": "https://twitter.com/jpatterson",
"bankIbanNative": "US12 3456 7890 1234 5678 90",
"bankIbanEur": "US12 3456 7890 1234 5678 90",
"bankIbanUsd": "US12 3456 7890 1234 5678 90",
"isActive": true,
"contactEmail": "james.patterson@example.com",
"contactPhone": "+1 415 555 0142",
"contactFullName": "Boston Chapter",
"stripeAccount": "acct_1MhsK3LZvKYlo2C0",
"localCenterStripeAccount": "acct_1MhsK3LZvKYlo2C0",
"currency": "USD",
"isStripeEligible": true,
"products": [
{
"uuid": "01938d8e-9c4f-7c2a-b8e1-3f7a9b8c4f12",
"id": 42,
"name": "Boston Chapter",
"nameEn": "Boston Chapter",
"productStripeId": "string",
"isExternal": true,
"productPrices": [
"/api/v1/product_prices/1"
],
"hasCustomPriceValue": true,
"monthPeriod": 1,
"customMinPrice": 5000,
"hasSubscription": true,
"hasOneTimePayment": true,
"cycleDay": 15,
"cycleMonth": 1,
"maxDate": "2026-01-15T10:30:00+00:00",
"description": "Quarterly chapter meeting open to all members.",
"descriptionEn": "Quarterly chapter meeting open to all members.",
"logo": "https://cdn.orgo.space/tenants/acme/logo.png",
"isFee": true,
"isDonation": true,
"settings": [
"string"
],
"descriptionInternal": "Quarterly chapter meeting open to all members.",
"cycleRecurrences": 42,
"hasConfidentialityEnabled": true,
"customMaxPrice": 5000,
"event": "/api/v1/events/1",
"startingDate": "2026-01-15T10:30:00+00:00",
"productOptions": [
"/api/v1/product_options/1"
],
"type": "MEMBER",
"hasLocalCenterOption": true,
"displayOnProfile": true,
"productPriceVariations": [
"/api/v1/product_price_variations/1"
],
"metaGraphImage": "https://cdn.orgo.space/events/12/cover.jpg",
"heroVideoUrl": "https://civic-collective.example.com",
"thankYouMessage": "Looking forward to seeing you at the meeting.",
"descriptionDe": "Quarterly chapter meeting open to all members."
}
],
"feeProduct": {
"uuid": "01938d8e-9c4f-7c2a-b8e1-3f7a9b8c4f12",
"id": 42,
"name": "Boston Chapter",
"nameEn": "Boston Chapter",
"productStripeId": "string",
"isExternal": true,
"productPrices": [
"/api/v1/product_prices/1"
],
"hasCustomPriceValue": true,
"monthPeriod": 1,
"customMinPrice": 5000,
"hasSubscription": true,
"hasOneTimePayment": true,
"cycleDay": 15,
"cycleMonth": 1,
"maxDate": "2026-01-15T10:30:00+00:00",
"description": "Quarterly chapter meeting open to all members.",
"descriptionEn": "Quarterly chapter meeting open to all members.",
"logo": "https://cdn.orgo.space/tenants/acme/logo.png",
"isFee": true,
"isDonation": true,
"settings": [
"string"
],
"descriptionInternal": "Quarterly chapter meeting open to all members.",
"cycleRecurrences": 42,
"hasConfidentialityEnabled": true,
"customMaxPrice": 5000,
"event": "/api/v1/events/1",
"startingDate": "2026-01-15T10:30:00+00:00",
"productOptions": [
"/api/v1/product_options/1"
],
"type": "MEMBER",
"hasLocalCenterOption": true,
"displayOnProfile": true,
"productPriceVariations": [
"/api/v1/product_price_variations/1"
],
"metaGraphImage": "https://cdn.orgo.space/events/12/cover.jpg",
"heroVideoUrl": "https://civic-collective.example.com",
"thankYouMessage": "Looking forward to seeing you at the meeting.",
"descriptionDe": "Quarterly chapter meeting open to all members."
},
"feeDefaultProductPrice": {
"id": 42,
"currency": "USD",
"price": 50,
"name": "Boston Chapter",
"displayNameOnPaymentPage": true,
"isLifetime": true
},
"feeLocalTemporary": "string",
"isOnlinePaymentFeeEligible": true,
"region": {
"id": 42,
"name": "Boston Chapter"
},
"alias": "string",
"isParent": true,
"mapDescription": "Quarterly chapter meeting open to all members.",
"daysOfTheWeek": [
"string"
],
"languages": [
"string"
],
"bankIbanChf": "US12 3456 7890 1234 5678 90",
"localCenterCurrency": "USD",
"id": 42,
"name": "Boston Chapter",
"logo": "https://cdn.orgo.space/tenants/acme/logo.png",
"status": "ACTIVE",
"dateCreated": "2026-01-15T10:30:00+00:00",
"parent": {
"id": 42,
"parent": "/api/v1/units/1"
}
}
]LocalCenter
List local centers for map display
Returns lightweight local center data optimized for map rendering. Includes only coordinates, name, and contact info. Uses cached queries for performance. Authenticated users resolve tenant from token.
GET
/
api
/
v1
/
local-centers-map
List local centers for map display
curl --request GET \
--url https://app.orgo.space/api/v1/local-centers-map \
--header 'Api-Token: <api-key>'import requests
url = "https://app.orgo.space/api/v1/local-centers-map"
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/local-centers-map', 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/local-centers-map",
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/local-centers-map"
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/local-centers-map")
.header("Api-Token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.orgo.space/api/v1/local-centers-map")
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[
{
"officeAddress": "123 Beacon Street, Boston, MA 02108",
"legalNumber": "string",
"geoLocation": "Boston Common, Boston, MA",
"placesApiId": "ChIJOwg_06VPwokRYv534QaPC8g",
"location": "Boston Common, Boston, MA",
"website": "https://civic-collective.example.com",
"isInitiative": true,
"town": {
"id": 42,
"name": "Boston Chapter",
"nameWithCounty": "Boston Chapter",
"county": {
"name": "Boston Chapter",
"state": "ACTIVE"
},
"latitude": 42.3601,
"longitude": -71.0589
},
"localUnits": "string",
"feePayments": [
"/api/v1/fee_payments/1"
],
"feeTemporary": "string",
"postalAddress": "02108",
"facebookUrl": "https://facebook.com/jamespatterson",
"instagramUrl": "https://instagram.com/jpatterson",
"twitterUrl": "https://twitter.com/jpatterson",
"bankIbanNative": "US12 3456 7890 1234 5678 90",
"bankIbanEur": "US12 3456 7890 1234 5678 90",
"bankIbanUsd": "US12 3456 7890 1234 5678 90",
"isActive": true,
"contactEmail": "james.patterson@example.com",
"contactPhone": "+1 415 555 0142",
"contactFullName": "Boston Chapter",
"stripeAccount": "acct_1MhsK3LZvKYlo2C0",
"localCenterStripeAccount": "acct_1MhsK3LZvKYlo2C0",
"currency": "USD",
"isStripeEligible": true,
"products": [
{
"uuid": "01938d8e-9c4f-7c2a-b8e1-3f7a9b8c4f12",
"id": 42,
"name": "Boston Chapter",
"nameEn": "Boston Chapter",
"productStripeId": "string",
"isExternal": true,
"productPrices": [
"/api/v1/product_prices/1"
],
"hasCustomPriceValue": true,
"monthPeriod": 1,
"customMinPrice": 5000,
"hasSubscription": true,
"hasOneTimePayment": true,
"cycleDay": 15,
"cycleMonth": 1,
"maxDate": "2026-01-15T10:30:00+00:00",
"description": "Quarterly chapter meeting open to all members.",
"descriptionEn": "Quarterly chapter meeting open to all members.",
"logo": "https://cdn.orgo.space/tenants/acme/logo.png",
"isFee": true,
"isDonation": true,
"settings": [
"string"
],
"descriptionInternal": "Quarterly chapter meeting open to all members.",
"cycleRecurrences": 42,
"hasConfidentialityEnabled": true,
"customMaxPrice": 5000,
"event": "/api/v1/events/1",
"startingDate": "2026-01-15T10:30:00+00:00",
"productOptions": [
"/api/v1/product_options/1"
],
"type": "MEMBER",
"hasLocalCenterOption": true,
"displayOnProfile": true,
"productPriceVariations": [
"/api/v1/product_price_variations/1"
],
"metaGraphImage": "https://cdn.orgo.space/events/12/cover.jpg",
"heroVideoUrl": "https://civic-collective.example.com",
"thankYouMessage": "Looking forward to seeing you at the meeting.",
"descriptionDe": "Quarterly chapter meeting open to all members."
}
],
"feeProduct": {
"uuid": "01938d8e-9c4f-7c2a-b8e1-3f7a9b8c4f12",
"id": 42,
"name": "Boston Chapter",
"nameEn": "Boston Chapter",
"productStripeId": "string",
"isExternal": true,
"productPrices": [
"/api/v1/product_prices/1"
],
"hasCustomPriceValue": true,
"monthPeriod": 1,
"customMinPrice": 5000,
"hasSubscription": true,
"hasOneTimePayment": true,
"cycleDay": 15,
"cycleMonth": 1,
"maxDate": "2026-01-15T10:30:00+00:00",
"description": "Quarterly chapter meeting open to all members.",
"descriptionEn": "Quarterly chapter meeting open to all members.",
"logo": "https://cdn.orgo.space/tenants/acme/logo.png",
"isFee": true,
"isDonation": true,
"settings": [
"string"
],
"descriptionInternal": "Quarterly chapter meeting open to all members.",
"cycleRecurrences": 42,
"hasConfidentialityEnabled": true,
"customMaxPrice": 5000,
"event": "/api/v1/events/1",
"startingDate": "2026-01-15T10:30:00+00:00",
"productOptions": [
"/api/v1/product_options/1"
],
"type": "MEMBER",
"hasLocalCenterOption": true,
"displayOnProfile": true,
"productPriceVariations": [
"/api/v1/product_price_variations/1"
],
"metaGraphImage": "https://cdn.orgo.space/events/12/cover.jpg",
"heroVideoUrl": "https://civic-collective.example.com",
"thankYouMessage": "Looking forward to seeing you at the meeting.",
"descriptionDe": "Quarterly chapter meeting open to all members."
},
"feeDefaultProductPrice": {
"id": 42,
"currency": "USD",
"price": 50,
"name": "Boston Chapter",
"displayNameOnPaymentPage": true,
"isLifetime": true
},
"feeLocalTemporary": "string",
"isOnlinePaymentFeeEligible": true,
"region": {
"id": 42,
"name": "Boston Chapter"
},
"alias": "string",
"isParent": true,
"mapDescription": "Quarterly chapter meeting open to all members.",
"daysOfTheWeek": [
"string"
],
"languages": [
"string"
],
"bankIbanChf": "US12 3456 7890 1234 5678 90",
"localCenterCurrency": "USD",
"id": 42,
"name": "Boston Chapter",
"logo": "https://cdn.orgo.space/tenants/acme/logo.png",
"status": "ACTIVE",
"dateCreated": "2026-01-15T10:30:00+00:00",
"parent": {
"id": 42,
"parent": "/api/v1/units/1"
}
}
]Authorizations
ApiTokenJWT
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
Required range:
0 <= x <= 1000Enable or disable pagination
Available options:
asc, desc Available options:
asc, desc Available options:
asc, desc Available options:
asc, desc Available options:
asc, desc Available options:
asc, desc Available options:
asc, desc Available options:
asc, desc Available options:
asc, desc Available options:
asc, desc Response
200 - application/json
LocalCenter collection
Show child attributes
Show child attributes
Example:
["/api/v1/fee_payments/1"]
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes

