Import Application Role Provisioning
/essbase/rest/v1/applications/{app}/permissions
Imports provisioning for multiple users or groups on the specified application.
If you are using EPM Shared Services security mode, this operation is not available. Instead, manage users, groups, and permissions in the Shared Services Console.
Takes as input a comma-separated (CSV) import file indicated in --data-binary option. Output can be written to a file specified by --output option, or to standard output if the output option is not provided. Requirements for the import file:
- No headers (first line is the first record)
- Col1: user/group ID
- Col2: Application permission. Values: db_access, db_update, db_manager, or app_manager
- Col3 (optional, Boolean) Is the ID a group? true|false (default false)
Sample import.csv file:
User1,app_manager,false |
User2,db_manager,false |
Group1,db_access,true |
Request
- application/octet-stream
-
app(required): string
Application name.
Response
- application/octet-stream
200 Response
OK
Provisioning imported successfully.
400 Response
Bad Request
The logged in user may not have the appropriate application role.
500 Response
Internal Server Error.
Examples
The following example shows how to import provisioning information for an application.
This example uses cURL to access the REST API from a Windows shell script. The calling user's ID and password are variables whose values are set in properties.bat
.
Script with cURL Command
The cURL example assumes a) that the named users and groups already exist, and b) that import.csv
is in the current directory, and contains the following contents:
User1,app_manager,false
User2,db_manager,false
Group1,db_access,true
call properties.bat
curl -X POST "https://myserver.example.com:9001/essbase/rest/v1/applications/Sample/permissions" -H "Content-Type: application/octet-stream" --data-binary "@./import.csv" -o output_post.json -u %User%:%Password%
Example of Response Body
The following response body is written to output_post.json
.
User1,Info,User provisioned successfully
User2,Info,User provisioned successfully
Group1,Info,Group provisioned successfully
If any of the users or groups did not exist, an error would be returned. For example, if there was no Group1:
Group1,Error,Group name 'Group1' is invalid
User1,Info,User provisioned successfully
User2,Info,User provisioned successfully