Organization Groups
An Organization group is a high-level classification used to group multiple Customers (Organizations) together. It provides an additional layer of administrative structure above the Customer level, allowing for a tree-like, hierarchical organization of customers into groups and sub-groups.
In practice, Organization Groups are a powerful tool for managing access control, applying policies, and generating aggregated reports across specific cohorts of customers.
Key Functions
- Control Offering and Plan Visibility:
- Offerings can be associated with one or more Organization Groups, making them exclusively available for ordering by Customers within those groups.
-
Similarly, pricing Plans can be restricted to specific Organization Groups. This allows service providers to create custom pricing tiers for different customer segments (e.g., educational institutions, commercial partners).
-
Apply Policies at Scale:
-
Policies, such as usage limits, can be targeted at an entire Organization Group. This allows for setting and enforcing aggregate consumption limits across all customers belonging to a group, rather than managing them individually.
-
Enable Aggregated Reporting and Analytics:
- The API uses Organization Groups as a key dimension for statistical reporting. You can retrieve aggregated data, such as:
- Active resource counts
- Component usage metrics
- User and project counts for service providers
-
This provides a high-level overview of usage and activity segmented by customer groups.
-
Manage Service Provider Data Visibility:
- Permissions for service providers can be influenced by Organization Groups. For instance, a provider might gain visibility into user data or other resources related to offerings that are available to the organization groups their customers belong to.
Operations Summary
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/organization-groups/ |
List Organization Groups |
| GET | /api/organization-groups/{uuid}/ |
Retrieve |
| POST | /api/organization-groups/ |
Create |
| PUT | /api/organization-groups/{uuid}/ |
Update |
| PATCH | /api/organization-groups/{uuid}/ |
Partial Update |
| DELETE | /api/organization-groups/{uuid}/ |
Delete |
List Organization Groups
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 | |
- API Source:
organization_groups_list
1 2 3 4 5 6 7 8 9 10 | |
| Name | Type | Description |
|---|---|---|
name |
string | |
name_exact |
string | |
o |
string | Which field to use when ordering the results. |
page |
integer | A page number within the paginated result set. |
page_size |
integer | Number of results to return per page. |
parent |
string (uuid) |
200 -
The response body is an array of objects, where each object has the following structure:
| Field | Type |
|---|---|
uuid |
string (uuid) |
url |
string (uri) |
name |
string |
parent_uuid |
string (uuid) |
parent_name |
string |
parent |
string (uri) |
customers_count |
integer |
Retrieve
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 | |
- API Source:
organization_groups_retrieve
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
200 -
| Field | Type |
|---|---|
uuid |
string (uuid) |
url |
string (uri) |
name |
string |
parent_uuid |
string (uuid) |
parent_name |
string |
parent |
string (uri) |
customers_count |
integer |
Create
1 2 3 4 5 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | |
- Model Source:
OrganizationGroupRequest - API Source:
organization_groups_create
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Field | Type | Required |
|---|---|---|
name |
string | ✓ |
parent |
string (uri) |
201 -
| Field | Type |
|---|---|
uuid |
string (uuid) |
url |
string (uri) |
name |
string |
parent_uuid |
string (uuid) |
parent_name |
string |
parent |
string (uri) |
customers_count |
integer |
Update
1 2 3 4 5 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |
- Model Source:
OrganizationGroupRequest - API Source:
organization_groups_update
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Field | Type | Required |
|---|---|---|
name |
string | ✓ |
parent |
string (uri) |
200 -
| Field | Type |
|---|---|
uuid |
string (uuid) |
url |
string (uri) |
name |
string |
parent_uuid |
string (uuid) |
parent_name |
string |
parent |
string (uri) |
customers_count |
integer |
Partial Update
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
- Model Source:
PatchedOrganizationGroupRequest - API Source:
organization_groups_partial_update
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Field | Type | Required |
|---|---|---|
name |
string | |
parent |
string (uri) |
200 -
| Field | Type |
|---|---|
uuid |
string (uuid) |
url |
string (uri) |
name |
string |
parent_uuid |
string (uuid) |
parent_name |
string |
parent |
string (uri) |
customers_count |
integer |
Delete
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 | |
- API Source:
organization_groups_destroy
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
204 - No response body