Organization
Read your organizations and member profiles. The organization is the scope that owns API keys, credits, invoices, and Data Studio.
Organization
The organization is the central scope in your Topolab account. API keys, credits, invoices, and Data Studio all belong to an organization, not to an individual user.
These endpoints are called on behalf of a signed-in user with a Bearer JWT. See Authentication for how to obtain the token.
Why scoping matters
A user can belong to more than one organization. Almost every resource you read or create, keys, usage, billing, is addressed by an organizationId. Resolve the organizations you belong to first, then use the right organizationId in subsequent calls.
| Resource | Scope |
|---|---|
| API keys | Organization (personal keys are owned by you within an org) |
| Credits & usage | Organization |
| Invoices | Organization |
| Data Studio | Organization |
List your organizations
GET /v1/organization/me
Returns the organizations the signed-in user belongs to, with the user's role in each.
curl -H "Authorization: Bearer eyJhbGci..." \
"https://api.topolab.nl/v1/organization/me"
{
"data": [
{
"id": "org_8f3a2c7e",
"name": "Acme Geospatial BV",
"role": "owner"
},
{
"id": "org_1d4056a1",
"name": "Acme Research",
"role": "member"
}
]
}
| Field | Description |
|---|---|
data[].id |
The organizationId used in keys, credits, and invoice endpoints. |
data[].name |
Display name of the organization. |
data[].role |
Your role in the organization, for example owner, admin, or member. |
Get an organization profile
GET /v1/organization/:id
Returns the organization profile and its members. The signed-in user must be a member of the organization. The path parameter is the organization id you resolved from /v1/organization/me.
curl -H "Authorization: Bearer eyJhbGci..." \
"https://api.topolab.nl/v1/organization/org_8f3a2c7e"
{
"id": "org_8f3a2c7e",
"name": "Acme Geospatial BV",
"members": [
{
"userId": "usr_a5b6c7d8",
"email": "lead@acme.example",
"role": "owner"
},
{
"userId": "usr_e3f4a5b6",
"email": "analyst@acme.example",
"role": "member"
}
]
}
| Field | Description |
|---|---|
id |
Organization identifier. |
name |
Display name. |
members[] |
Users in the organization, with their role. |
Update an organization
PATCH /v1/organization/:id
Updates the organization profile. Send only the fields you want to change. The signed-in user must be an owner or admin of the organization.
curl -X PATCH \
-H "Authorization: Bearer eyJhbGci..." \
-H "Content-Type: application/json" \
-d '{ "name": "Acme Geospatial Holdings BV" }' \
"https://api.topolab.nl/v1/organization/org_8f3a2c7e"
Members are managed under /v1/organization/:organizationId/members/* (invite, list, change role and permissions, remove); the profile response above already lists the current members.
Errors
| Status | Meaning |
|---|---|
401 |
Missing or invalid Bearer token. |
403 |
You are not a member of the requested organization. |
404 |
The organization does not exist. |
429 |
Rate limited, see Rate limits & credits. |
Next
- API keys, manage keys within an organization.
- Usage stats, credit and API usage by organization.
- Invoices, billing documents for an organization.
- Need an organization or more seats? Contact us.