This resource represents groups and users that are in your organization.
The Home> Admin>Users page enables you to invite and create users, and view their details. In this page, you can also remove users, assign pending tasks and send activation email messages.
This document showcases the API requests and responses for:
getting all groups and users in an organization
creating groups and users
inviting users to your organization
adding and removing users to/from groups
removing users from an organization
getting organization-level and product-level role assignments
assigning an organization-level or product-level role to specific users or to a group of users according to specific roles
creating a service user
regenerating a user token for a service user
getting all organization and product service users
inviting an external user to download and use WhiteSource Advise for Chrome
NOTE: To get all groups in an organization, you must have ORG Admin role permissions.
Parameter | Description | Type | Required |
---|---|---|---|
requestType | API request type that returns all the groups in an organization. | string | Yes |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes |
orgToken | API key which is a unique identifier of the organization. | string | Yes |
|
Response Example
The response is a JSON collection of all the groups with their details in the organization. For example:
{ "groups":[ { "id": 2373, "name": "admins", "description": "Alex playground administrators", "users":[ {"id": 2458, "email": "john1@gmail.com", "name": "John2"}, {"id": 1841, "email": "john2@gmail.com", "name": "John1"} ]}], "message":"Organization groups" } |
NOTE: To get all users in an organization, you must have ORG Admin role permissions.
Parameter | Description | Type | Required |
---|---|---|---|
requestType | API request type that returns all the users in an organization. | string | Yes |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes |
orgToken | API key which is a unique identifier of the organization. | string | Yes |
|
Response Example
The response is a JSON collection of all the users with their details in the organization. For example:
{ "users":[ { "id": 1841, "email": "john@gmail.com", "name": "John Doe" }], "message":"Organization users" } |
NOTE: To create groups in an organization, you must have ORG Admin role permissions.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that creates a group in an organization. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
orgToken | API key which is a unique identifier of the organization. | string | Yes | |
group | Group data object containing: | |||
name | Name of the group that you want to create. | string | Yes | |
description | Description of the group you want to create. | string | No |
|
Response Example
The response shows the details of the newly created group for which a unique ID was created. For example:
|
NOTE: To create a user in an organization, you must have ORG Admin role permissions.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that creates a user in an organization. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
orgToken | API key which is a unique identifier of the organization. | string | Yes | |
inviter | Data object containing: | |||
Email address of the user that is sending the invitation to the new user. | string | Yes | ||
addedUser | New user data object containing: | |||
name | Name of the user to be added. | string | Yes | |
Email address of the user to be added. | string | Yes |
|
Response Example
"message":"Successfully created user new_user_name" |
NOTE: To invite users to join an organization, you must have ORG Admin role permissions.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that sends an invitation to new users to join an organization. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
orgToken | API key which is a unique identifier of the organization. | string | Yes | |
inviter | Data object containing: | |||
Email address that is “inviting” the new users. | string | Yes | ||
emails | List of activation email addresses for the new users. | array | Yes |
|
Response Example
|
NOTE: To add users to groups in an organization, you must have ORG Admin role permissions.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that adds users to groups in an organization. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
orgToken | API key which is a unique identifier of the organization. | string | Yes | |
assignedUsers | Data object listing the users that you want to assign to groups: | array | Yes | |
name | Name of the group to which you are adding the users. | string | Yes | |
List of email activation addresses of users you want to assign to the group. | array | Yes |
|
Response Example
"message":"Successfully assigned users to groups" |
NOTE: To remove a user from a group in an organization, you must have ORG Admin role permissions.
Parameter | Description | Type | Required |
---|---|---|---|
requestType | API request type that removes a user from a group in an organization. | string | Yes |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes |
orgToken | API key which is a unique identifier of the organization. | string | Yes |
group | Name of the group from which the user will be removed. | string | Yes |
user | Name of the user that will be removed from the group. | string | Yes |
|
Response Example
"message":"Successfully removed user from group" |
NOTE: To remove a user from an organization, you must have ORG Admin role permissions.
Parameter | Description | Type | Required |
---|---|---|---|
requestType | API request type that removes a user from an organization. | string | Yes |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes |
orgToken | API key which is a unique identifier of the organization. | string | Yes |
user | Email address of the user that will be removed from the organization. | string | Yes |
|
Response Example
"message":"Successfully removed user from organization" |
NOTE: To get organization-level role assignments, you must have ORG Admin role permissions.
Parameter | Description | Type | Required |
---|---|---|---|
requestType | API request type that gets all role assignments in an organization. | string | Yes |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes |
orgToken | API key which is a unique identifier of the organization. | string | Yes |
{ "requestType":"getOrganizationAssignments", "userKey": "user_key", "orgToken":"organization_api_key" } |
Response Example
The JSON response shows the details of the assignments for different roles in the organization. For example:
{ "groupRoles":{ "USER":[ { "id":group_id, "name":"users", "description":"All users in organization", "users":[ { "id":user_id, "email":"user_email", "name":"user_name" }, { "id":user_id, "email":"user_email", "name":"user_name" } ] } ], "ADMIN":[ { "id":group_id, "name":"admins", "description":"Administrators", "users":[ { "id":user_id, "email":"user_email", "name":"user_name" } ] } ] }, "userRoles":{ "USER":[ { "id":user_id, "email":"user_email", "name":"user_name" }, { "id":user_id, "email":"user_email", "name":"user_name" } ], "DEFAULT_APPROVER":[ { "id":user_id, "email":"user_email", "name":"user_name" } ] } } |
NOTE: To get product-level role assignments, you must have Product Admin role permissions.
Parameter | Description | Type | Required |
---|---|---|---|
requestType | API request type that gets all role assignment in a product. | string | Yes |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes |
productToken | Unique identifier of the product. | string | Yes |
{ "requestType":"getProductAssignments", "userKey": "user_key", "productToken":"product_token" } |
Response Example
The JSON response shows the details of the assignments for different roles in the product. For example:
{ "groupRoles":{ "ALERT_EMAIL_RECEIVER":[ { "id":group_id, "name":"group_name", "description":"Email receivers", "users":[ { "id":user_id, "email":"user_email", "name":"user_name" } ] } ], "ADMIN":[ { "id":group_id, "name":"group_name", "description":"Administrators", "users":[ { "id":user_id, "email":"user_email", "name":"user_name" } ] } ], "PRODUCT_INTEGRATOR":[ { "id":group_id, "name":"group_name", "description":"Product Integrators", "users":[ { "id":user_id, "email":"user_email", "name":"user_name" } ] } ] }, "userRoles":{ } } |
You can assign an Organization-level role to specific users or to a group of users using API calls. The following roles are supported:
Administrators
Alert Email Receiver
Default Approver
Auditor
Administrators have control over the entire organization. They can create, invite, and remove users, add products and projects, and much more.
This API enables you to assign the Administrator role to specific users and/or groups.
NOTE: Assigning the role of Administrator to individual users is not recommended; using groups is simpler and easier for user and role management.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that assigns roles at the organization-level. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
orgToken | API key which is a unique identifier of the organization. | string | Yes | |
administrators | Administrator role data object containing: | |||
groupAssignments | List of groups to which you want to assign the Administrator role. | array | No | |
userAssignments | List of users to which you want to assign the Administrator role. | array | No |
{ "requestType": "setOrganizationAssignments", "userKey": "user_key", "orgToken": "organization_api_key", "administrators" : { "groupAssignments":[{"name":"group_name"},{"name":"group_name"}], "userAssignments":[{"email":"user_email"},{"email":"user_email"}] } } |
Response Example
"message":"Successfully set organization assignments" |
This API enables you to assign the organization-level role Alert Email Receivers to specific users and/or groups.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that assigns roles at the organization-level. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
orgToken | API key which is a unique identifier of the organization. | string | Yes | |
alertsEmailReceivers | Alert Email Receiver role data object containing: | |||
groupAssignments | List of groups to which you want to assign the Alert Email Receiver role. | array | No | |
userAssignments | List of users to which you want to assign the Alert Email Receiver role. | array | No |
{ "requestType": "setOrganizationAssignments", "userKey": "user_key", "orgToken": "organization_api_key", "alertsEmailReceivers" : { "groupAssignments":[{"name":"group_name"},{"name":"group_name"}], "userAssignments":[{"email":"user_email"},{"email":"user_email"}] } } |
Response Example
"message":"Successfully set organization assignments" |
All pending tasks in the organization are sent to the Default Approver. Changing the Default Approver only impacts future tasks. Existing tasks are assigned to their original Approver.
The organization must have a Default Approver at all times. The role of Default Approver is assigned to the organization creator by default, and any member of the organization can be assigned to this role. You can also assign the Default Approver to a specific group.
NOTE: The Product level Default Approver overrides the Organization level Default Approver for their relevant Product(s).
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that assigns roles at the organization-level. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
orgToken | API key which is a unique identifier of the organization. | string | Yes | |
defaultApprover | Default Approver role data object containing: | |||
groupAssignments | List of groups to which you want to assign the Default Approver role. | array | No | |
userAssignments | List of users to which you want to assign the Default Approver role. | array | No |
{ "requestType": "setOrganizationAssignments", "userKey": "user_key", "orgToken": "organization_api_key", "defaultApprover" : { "groupAssignments":[{"name":"group_name"},{"name":"group_name"}], "userAssignments":[{"email":"user_email"},{"email":"user_email"}] } } |
Response Example
"message":"Successfully set organization assignments" |
The Auditor role can be assigned to service users to grant them Read-only permissions in the scope of a specific organization. It is recommended to use this role when you want service users to obtain organizational information, but you don't want to grant them full Admin permissions.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that assigns roles at the organization-level. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
orgToken | API key which is a unique identifier of the organization. | string | Yes | |
readOnlyUsers | Auditor role data object to grant read-only permissions: | |||
groupAssignments | List of groups to which you want to assign the Auditor role. | array | No | |
userAssignments | List of users to which you want to assign the Auditor role. | array | No |
{ "requestType" : "setOrganizationAssignments", "userKey":"admin_user_key" "orgToken" : "organization_api_key", "readOnlyUsers" : { "groupAssignments":[{"name":"group_name"},{"name":"group_name"}], "userAssignments":[{"email":"user_email"},{"email":"user_email"}] } } |
Response Example
"message": "The following organization assignments have been set: Read Only" |
You can assign a Product-level role to specific users or to a group of users using API calls. The following roles are supported:
Product Administrator
Alert Email Receiver
Product Membership
Product Default Approver
Product Integrator
Product Administrators have control over the entire product, they can rename and delete the product, and all the projects under it.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that assigns roles at the product-level. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
productToken | Unique identifier of the product. | string | Yes | |
productAdmins | Product Administrator role data object containing: | |||
userAssignments | List of users to which you want to assign the Product Administrator role. | array | No | |
groupAssignments | List of groups to which you want to assign the Product Administrator role. | array | No |
{ "requestType": "setProductAssignments", "userKey": "user_key", "productToken": "product_token", "productAdmins" : { "userAssignments":[{"email":"user_email"}], "groupAssignments":[{"name":"group_name"}] } } |
Response Example
"message":"Successfully set product assignments" |
This API enables you to assign the Alert Email Receiver product-level role to specific users and/or groups.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that assigns roles at the product-level. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
productToken | Unique identifier of the product. | string | Yes | |
alertsEmailReceivers | Alert Email Receiver role data object containing: | |||
userAssignments | List of users to which you want to assign the Alert Email Receiver role. | array | No | |
groupAssignments | List of groups to which you want to assign the Alert Email Receiver role. | array | No |
{ "requestType": "setProductAssignments", "userKey": "user_key", "productToken": "product_token", "alertsEmailReceivers" : { "userAssignments":[{"email":"user_email"}], "groupAssignments":[{"name":"group_name"}] } } |
Response Example
"message":"Successfully set product assignments" |
Product members can view the product data and all its projects, and open tickets for libraries. By default, all users in the organization are members of the product - by assigning a user as a member of the product all other users will be excluded.
This API enables you to assign the Product Membership product-level role to specific users and/or groups.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that assigns roles at the product-level. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
productToken | Unique identifier of the product. | string | Yes | |
productMembership | Product Membership role data object containing: | |||
userAssignments | List of users to which you want to assign the Product Membership role. | array | No | |
groupAssignments | List of groups to which you want to assign the Product Membership role. | array | No |
{ "requestType": "setProductAssignments", "userKey": "user_key", "productToken": "product_token", "productMembership" : { "userAssignments":[{"email":"user_email"}], "groupAssignments":[{"name":"group_name"}] } } |
Response Example
"message":"Successfully set product assignments" |
If the role of Product Approver is not assigned, all product tickets are sent to the organization’s Default Approver. Any member of the organization can be assigned to this role. You can also assign the Default Approver to a specific group. Changing the Product Approver will only affect future pending tasks, existing tasks will still be assigned to their original approver.
The Product level Default Approver overrides the Organization level Default Approver for their relevant product(s).
This API enables you to assign the Product Default Approver product-level role to specific users and/or groups.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that assigns roles at the product-level. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
productToken | Unique identifier of the product. | string | Yes | |
productApprovers | Product Approver role data object containing: | |||
userAssignments | List of users to which you want to assign the Product Approver role. | array | No | |
groupAssignments | List of groups to which you want to assign the Product Approver role. | array | No |
{ "requestType": "setProductAssignments", "userKey": "user_key", "productToken": "product_token", "productApprovers" : { "userAssignments":[{"email":"user_email"}], "groupAssignments":[{"name":"group_name"}] } } |
Response Example
"message":"Successfully set product assignments" |
Product Integrators can run a scan on a new or existing project within the product. They can also view data on the product and all its projects, and open tickets for libraries.
This API enables you to assign the Product Integrator product-level role to specific users and/or groups.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that assigns roles at the product-level. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
productToken | Unique identifier of the product. | string | Yes | |
productIntegrators | Product Integrator role data object containing: | |||
userAssignments | List of users to which you want to assign the Product Integrator role. | array | No | |
groupAssignments | List of groups to which you want to assign the Product Integrator role. | array | No |
{ "requestType": "setProductAssignments", "userKey": "user_key", "productToken": "product_token", "productIntegrators" : { "userAssignments":[{"email":"user_email"}], "groupAssignments":[{"name":"group_name"}] } } |
Response Example
"message":"Successfully set product assignments" |
Service Users communicate with WhiteSource via the APIs for automation purposes; they cannot log in to the Web Console. Organization administrators manage Service Users via the GUI. You can assign a service user to one or more groups.
This API enables an organization admin to create a service user and generate its user token.
Parameter | Description | Type | Required | |
---|---|---|---|---|
requestType | API request type that creates a service user. | string | Yes | |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes | |
orgToken | API key which is a unique identifier of the organization. | string | Yes | |
addedUser | New service user data object containing: | |||
name | Name of service user you want to create. | string | Yes |
{ "requestType": "createServiceUser", "orgToken": "organization_api_key", "userKey": "user_key", "addedUser":{ "name":"ServiceUser2" } } |
Response Example
{ "userToken": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" } |
This API allows an organization admin to regenerate the user token of a service user.
Parameter | Description | Type | Required |
---|---|---|---|
requestType | API request type that regenerates a service user’s token key. | string | Yes |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes |
orgToken | API key which is a unique identifier of the organization. | string | Yes |
serviceUserKey | Current token key for the service user. | string | Yes |
{ "requestType": "regenerateUserKey", "orgToken": "organization_api_key", "userKey": "user_key", "serviceUserKey": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" } |
Response Example
{ "userToken": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" } |
This API allows an organization admin to get a list of all the service users in an organization.
Parameter | Description | Type | Required |
---|---|---|---|
requestType | API request type that returns all the service users in an organization. | string | Yes |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes |
orgToken | API key which is a unique identifier of the organization. | string | Yes |
{ "requestType":"getOrganizationServiceUsers", "userKey":"user_key", "orgToken":"organization_api_key" } |
Response Example
{ "serviceUsers": [ { "serviceUserName": "New_Service_User", "serviceUserToken": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }, { "serviceUserName": "ServiceUser2", "serviceUserToken": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }, { "serviceUserName": "WS_4_GHC_service_user", "serviceUserToken": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }, { "serviceUserName": "service1", "serviceUserToken": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" } ] } |
This API allows an organization admin to get a list of all the service users in a product.
Parameter | Description | Type | Required |
---|---|---|---|
requestType | API request type that returns all the service users in a product. | string | Yes |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes |
productToken | Unique identifier of the product. | string | Yes |
{ "requestType":"getProductServiceUsers", "userKey":"user_key", "productToken":"product_token" } |
Response Example
{ "serviceUsers": [ { "serviceUserName": "WS_4_GHC_service_user", "serviceUserToken": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" } ] } |
WhiteSource Advise allows your developers to view a snapshot of a component’s details before they download it to their repository, and incorporate it in the codebase.
This API enables a WhiteSource account administrator to invite an external user to download and use WhiteSource Advise.
Parameter | Description | Type | Required |
---|---|---|---|
requestType | API request type that enables a WhiteSource account administrator to invite an external user to download and use WhiteSource Advise. | string | Yes |
userKey | The ID of the user’s profile, which uniquely identifies the user in WhiteSource. | string | Yes |
orgToken | API key which is a unique identifier of the organization. | string | Yes |
userEmail | Email address of the external user who will receive the invitation via email. | string | Yes |
{ "requestType" : "inviteUserToWebAdvisor", "userKey": "user_key", "orgToken" : "organization_api_key", "userEmail": "User email address" } |
Response Example
{ "message": "Successfully invited external user" } |