Class BinderRoleRequest
java.lang.Object
com.veeva.vault.vapil.api.request.VaultRequest<BinderRoleRequest>
com.veeva.vault.vapil.api.request.BinderRoleRequest
Binder Role Requests
- Vault API Coverage:
- https://developer.veevavault.com/api/25.1/#binder-roles
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
Enum for User or Group request on single binder remove endpoint -
Field Summary
Fields inherited from class com.veeva.vault.vapil.api.request.VaultRequest
HTTP_HEADER_AUTHORIZATION, HTTP_HEADER_REFERENCE_ID, HTTP_HEADER_VAULT_CLIENT_ID, referenceId, requestClientId, vaultClient
-
Method Summary
Modifier and TypeMethodDescriptionAssign Users and Groups to Roles on a Single BinderAssign Users & Groups to Roles on Multiple BindersremoveUsersAndGroupsFromRolesOnASingleBinder
(int binderId, String roleName, BinderRoleRequest.MemberType memberType, long id) Remove Users and Groups from Roles on a Single BinderRemove Users and Groups from Roles on Multiple BindersretrieveAllBinderRoles
(int id) Retrieve All Binder RolesretrieveBinderRole
(int id, String roleName) Retrieve Binder RolesetBinaryFile
(String filename, byte[] binaryContent) Specify source data in an input filesetBodyParams
(Map<String, Object> bodyParams) Single form add/remove request with name/value body parameters
Can be used on single Document endpoint, or for performing single Document operations, using the bulk endpoint.Set the Header Content Type to CSVSet the Header Content Type to x-www-form-urlencodedsetInputPath
(String inputPath) Specify source data in an input filesetRequestString
(String requestString) Specify source data in an input string, such as a JSON requestMethods inherited from class com.veeva.vault.vapil.api.request.VaultRequest
getBaseObjectMapper, send, send, sendReturnBinary, sendReturnBinary, sendToFile, sendToFile, setHeaderClientId, setHeaderReferenceId, setVaultClient
-
Method Details
-
retrieveAllBinderRoles
Retrieve All Binder RolesRetrieve all available roles on a binder and the users and groups assigned to them.
- Parameters:
id
- The Document id- Returns:
- BinderRoleRetrieveResponse
- Vault API Endpoint:
GET /api/{version}/objects/binders/{binder_id}/roles
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#retrieve-all-binder-roles
- Example Request:
BinderRoleRetrieveResponse response = vaultClient.newRequest(BinderRoleRequest.class) .retrieveAllBinderRoles(binderId);
- Example Response:
for (RoleRetrieveResponse.Role role : response.getRoles()) { System.out.println("---------Binder Role---------"); System.out.println("Name: " + role.getName()); System.out.println("Label: " + role.getLabel()); System.out.println("Available Users: " + role.getAvailableUsers()); System.out.println("Available Groups: " + role.getAvailableGroups()); }
-
retrieveBinderRole
Retrieve Binder RoleRetrieve a specific role on a binder and the users and groups assigned to it.
- Parameters:
id
- The Binder idroleName
- Name of the Role to retrieve- Returns:
- BinderRoleRetrieveResponse
- Vault API Endpoint:
GET /api/{version}/objects/binders/{binder_id}/roles/{role_name}
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#retrieve-binder-role
- Example Request:
BinderRoleRetrieveResponse response = vaultClient.newRequest(BinderRoleRequest.class) .retrieveBinderRole(binderId, "owner__v");
- Example Response:
System.out.println("Name: " + response.getRoles().get(0).getName()); System.out.println("Label: " + response.getRoles().get(0).getLabel()); System.out.println("Available Users: " + response.getRoles().get(0).getAvailableUsers()); System.out.println("Available Groups: " + response.getRoles().get(0).getAvailableGroups());
-
assignUsersAndGroupsToRolesOnASingleBinder
Assign Users and Groups to Roles on a Single Binder- Parameters:
id
- The Binder id- Returns:
- BinderRoleChangeResponse
- Vault API Endpoint:
POST /api/{version}/objects/binders/{binder_id}/roles
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#assign-users-amp-groups-to-roles-on-a-single-binder
- Example Request:
BinderRoleChangeResponse response = vaultClient.newRequest(BinderRoleRequest.class) .setBodyParams(Collections.singletonMap("editor__v.users", userId)) .assignUsersAndGroupsToRolesOnASingleBinder(binderId);
- Example Response:
System.out.println("-----Users added to Editor role-----"); for (Long userId : response.getUpdatedRoles().get("editor__v").get("users")) { System.out.println("User ID: " + userId); }
-
assignUsersAndGroupsToRolesOnMultipleBinders
Assign Users & Groups to Roles on Multiple BindersThe maximum CSV input file size is 1GB. The values in the input must be UTF-8 encoded. CSVs must follow the standard format. The maximum batch size is 1000.
- Returns:
- BinderRoleChangeBulkResponse
- See Also:
- Vault API Endpoint:
POST /api/{version}/objects/documents/roles/batch
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#assign-users-amp-groups-to-roles-on-multiple-documents-amp-binders
- Example Request:
BinderRoleChangeBulkResponse response = vaultClient.newRequest(BinderRoleRequest.class) .setContentTypeCsv() .setInputPath(inputPath) .assignUsersAndGroupsToRolesOnMultipleBinders();
- Example Response:
for (RoleChangeBulkResponse.RoleChange binderResponse : response.getData()) { System.out.println("Binder ID: " + binderResponse.getId()); System.out.println("Response Status: " + binderResponse.getResponseStatus()); System.out.println("-----Users added to Editor role-----"); for (int userId : binderResponse.getListInteger("editor__v.users")) { System.out.println("User ID: " + userId); } System.out.println(); }
-
removeUsersAndGroupsFromRolesOnMultipleBinders
Remove Users and Groups from Roles on Multiple BindersThe maximum CSV input file size is 1GB. The values in the input must be UTF-8 encoded. CSVs must follow the standard format. The maximum batch size is 1000.
- Returns:
- BinderRoleChangeBulkResponse
- See Also:
- Vault API Endpoint:
DELETE /api/{version}/objects/documents/roles/batch
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#remove-users-amp-groups-from-roles-on-multiple-documents-amp-binders
- Example Request:
BinderRoleChangeBulkResponse response = vaultClient.newRequest(BinderRoleRequest.class) .setContentTypeCsv() .setInputPath(inputPath) .removeUsersAndGroupsFromRolesOnMultipleBinders();
- Example Response:
for (RoleChangeBulkResponse.RoleChange binderResponse : response.getData()) { System.out.println("Binder ID: " + binderResponse.getId()); System.out.println("Response Status: " + binderResponse.getResponseStatus()); System.out.println("-----Users removed from Editor role-----"); for (int userId : binderResponse.getListInteger("editor__v.users")) { System.out.println("User ID: " + userId); } System.out.println(); }
-
removeUsersAndGroupsFromRolesOnASingleBinder
public BinderRoleChangeResponse removeUsersAndGroupsFromRolesOnASingleBinder(int binderId, String roleName, BinderRoleRequest.MemberType memberType, long id) Remove Users and Groups from Roles on a Single BinderUse bulk API for multiple binders
- Parameters:
binderId
- The Binder idroleName
- Name of the Role to modifymemberType
- User or Groupid
- User or Group id to remove- Returns:
- BinderRoleChangeResponse
- Vault API Endpoint:
DELETE /api/{version}/objects/binders/{binder_id}/roles/{role_name_and_user_or_group}/{id}
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#remove-users-amp-groups-from-roles-on-a-single-binder
- Example Request:
BinderRoleChangeResponse response = vaultClient.newRequest(BinderRoleRequest.class) .removeUsersAndGroupsFromRolesOnASingleBinder(binderId, "editor__v", BinderRoleRequest.MemberType.USER, userIdToRemove);
- Example Response:
System.out.println("-----Users added to Editor role-----"); for (Long userId : response.getUpdatedRoles().get("editor__v").get("users")) { System.out.println("User ID: " + userId); }
-
setContentTypeCsv
Set the Header Content Type to CSV- Returns:
- The Request
-
setContentTypeXForm
Set the Header Content Type to x-www-form-urlencoded- Returns:
- The Request
-
setBinaryFile
Specify source data in an input file- Parameters:
filename
- file name (no path)binaryContent
- byte array of the file content- Returns:
- The Request
-
setBodyParams
Single form add/remove request with name/value body parameters
Can be used on single Document endpoint, or for performing single Document operations, using the bulk endpoint.- Parameters:
bodyParams
- map of body params- Returns:
- The Request
-
setInputPath
Specify source data in an input file- Parameters:
inputPath
- Absolute path to the file for the request- Returns:
- The Request
-
setRequestString
Specify source data in an input string, such as a JSON request- Parameters:
requestString
- The source request as a string- Returns:
- The Request
-