Organisations are the top-level entities in HOT Tasking Manager. Each organisation owns teams and projects, and is administered by one or more designated managers. An organisation has a type (Documentation Index
Fetch the complete documentation index at: https://mintlify.com/hotosm/tasking-manager/llms.txt
Use this file to discover all available pages before exploring further.
FREE, DISCOUNTED, or FULL_FEE) that reflects its subscription tier. The endpoints below cover full CRUD operations on organisations as well as managing the campaigns linked to them.
Organisation CRUD
List Organisations
GET /api/v2/organisations/
Returns all organisations. Optionally filter by a manager’s user ID or suppress the manager list and statistics from the response to reduce payload size.
Authentication: Optional. Filtering by manager_user_id requires authentication.
Query Parameters
Return only organisations managed by this user ID. Requires an authenticated session.
When
true, each organisation object omits the managers array.When
false, year-to-date statistics are appended to each organisation. Defaults to true to keep responses lightweight.200 OK
Create an Organisation
POST /api/v2/organisations/
Creates a new organisation. Only users with the ADMIN role can create organisations. The creating admin is automatically added to the managers list.
Authentication: Required (ADMIN only)
Request Body
Unique display name for the organisation (max 512 characters).
URL-safe identifier. Auto-generated from
name if omitted.URL of the organisation’s logo image.
Organisation website URL.
Short description of the organisation.
Array of usernames to assign as organisation managers. The creating admin is appended automatically.
Subscription type:
FREE, DISCOUNTED, or FULL_FEE. Defaults to FREE.Numeric subscription tier (admin-only field).
201 Created
| Status | Meaning |
|---|---|
400 | Invalid request payload |
403 | User is not an admin |
Get Organisation by ID
GET /api/v2/organisations/{organisation_id}/
Retrieves full details of a single organisation by its numeric ID.
Authentication: Optional
Path Parameters
The unique numeric organisation ID.
Set to
true to exclude the managers list from the response.200 OK
Get Organisation by Slug
GET /api/v2/organisations/{slug}/
Retrieves a single organisation using its URL slug instead of its numeric ID. Useful for constructing human-readable links.
Authentication: Optional
Path Parameters
The URL-safe slug for the organisation (e.g.
hot).Set to
true to exclude the managers list.200 OK — same shape as Get Organisation by ID.
Get Organisation Statistics
GET /api/v2/organisations/{organisation_id}/statistics/
Returns project and active-task statistics for the organisation.
Authentication: Optional
Path Parameters
The unique numeric organisation ID.
200 OK
ID of the organisation.
Aggregate project counts (published, draft, archived).
Aggregate counts of tasks by status across all published projects.
Update an Organisation
PATCH /api/v2/organisations/{organisation_id}/
Updates fields on an existing organisation. The requesting user must be an organisation admin or a platform admin.
Authentication: Required (org admin or ADMIN)
Path Parameters
The unique numeric organisation ID.
New display name.
New URL slug.
New logo URL.
Updated website URL.
Updated description.
Replacement list of manager usernames. Existing managers not included in this list will be removed.
FREE, DISCOUNTED, or FULL_FEE. Admin-only — ignored for non-admin requests.Numeric tier. Admin-only — ignored for non-admin requests.
200 OK
Delete an Organisation
DELETE /api/v2/organisations/{organisation_id}/
Permanently deletes an organisation. The organisation must have no associated projects or teams before it can be removed.
Authentication: Required (org admin or ADMIN)
Path Parameters
The unique numeric organisation ID.
200 OK
| Status | Meaning |
|---|---|
401 | Missing or invalid token |
403 | User is not an org admin or the organisation still has projects |
404 | Organisation not found |
An organisation cannot be deleted while it still owns projects. Remove or archive all projects before attempting deletion.
Organisation Campaigns
Campaigns can be linked to organisations to group thematically related mapping efforts. The association is many-to-many: a campaign can belong to multiple organisations and vice versa.List Campaigns for an Organisation
GET /api/v2/organisations/{organisation_id}/campaigns/
Returns all campaigns associated with the given organisation.
Authentication: Not required
Path Parameters
ID of the organisation.
200 OK
Link a Campaign to an Organisation
POST /api/v2/organisations/{organisation_id}/campaigns/{campaign_id}/
Associates an existing campaign with the specified organisation. The requesting user must be an organisation manager.
Authentication: Required (org manager)
Path Parameters
ID of the organisation.
ID of the campaign to link.
200 OK
| Status | Meaning |
|---|---|
400 | Campaign is already linked to this organisation |
403 | User is not an org manager |
Unlink a Campaign from an Organisation
DELETE /api/v2/organisations/{organisation_id}/campaigns/{campaign_id}/
Removes the association between a campaign and an organisation. Does not delete the campaign itself.
Authentication: Required (org manager)
Path Parameters
ID of the organisation.
ID of the campaign to unlink.
200 OK
Data Models
OrganisationType — FREE | DISCOUNTED | FULL_FEE
Unique numeric identifier.
Display name (unique, max 512 characters).
URL-safe identifier derived from the name.
URL pointing to the organisation logo.
Organisation website.
Subscription type:
FREE, DISCOUNTED, or FULL_FEE.List of manager objects, each containing
username and pictureUrl.