Apply Data Grants
Applies data grants for a given Profitability and Cost Management application.
This API submits a job to remove all existing data grants in Oracle Essbase and recreate them with the latest information from the application. It can also be used to repair data grants if there are any issues.
Required Roles
Service Administrator, Power User
REST Resource
POST /epm/rest/{api_version}/applications/{application}/jobs/applyDataGrants
Note:
Before using the REST resources, you must understand how to access the REST resources and other important concepts. See Implementation Best Practices for EPM Cloud REST APIs. Using this REST API requires prerequisites. See Prerequisites.
Request
Supported Media Types: application/json
The following table summarizes the client request.
Table 24-5 Parameters
Name | Description | Type | Required | Default |
---|---|---|---|---|
api_version |
Version of the API you are developing with, such as v1 |
Path | Yes | None |
application |
Name of the application to create | Path | Yes | None |
Example URL
https://<BASE-URL>/epm/rest/v1/applications/BksML30/jobs/applyDataGrants
Response
Supported Media Types: application/json
Table 24-6 Parameters
Name | Description |
---|---|
details |
Task ID, such as BksML12_BksML12_LoadData_D20160118T051020_ba8_1 |
status |
See Migration Status Codes |
statusMessage |
Message about the status, such as Success |
type |
Profitability |
data |
Parameters as key value pairs |
links |
Detailed information about the link |
href |
Links to API call |
action |
The HTTP call type |
rel |
Relationship type |
data |
Parameters as key value pairs passed in the request |
Example of Response Body
The following shows an example of the response body in JSON format.
{
"type":"Profitability",
"status":-1,
"statusMessage":"In Progress",
"details":"BksML30_ApplyDataGrants_D20220511T114653_b85",
"links":[
{
"href":"http://<BASE-URL>/epm/rest/v1/applications/jobs/ChecktaskStatusJob/BksML30_ApplyDataGrants_D20220511T114653_b85",
"action":"GET",
"rel":"Job Status"
}
]
}
Java Sample – applyDataGrants.java for Profitability and Cost Management
Prerequisites: json.jar
Common Functions: See Profitability and Cost Management Common Helper Functions for Java
public void applyDataGrants() throws Exception {
String urlString = "%s/epm/rest/%s/applications/%s/jobs/applyDataGrants";
executeJob(urlString, "POST", null);
}
cURL Sample – ApplyDataGrants.sh for Profitability and Cost Management
Common Functions: See Profitability and Cost Management Common Helper Functions for cURL.
funcApplyDataGrants() {
url=$SERVER_URL/epm/rest/$API_VERSION/applications/$APP_NAME/jobs/applyDataGrants
funcExecuteRequest "POST" $url "application/json"
output=`cat response.txt`
status=`echo $output | jq '.status'`
if [ $status == -1 ]; then
echo "Started Data Grants successfully"
funcGetStatus "GET"
else
error=`echo $output | jq '.details'`
echo "Error occurred. " $error
fi
funcRemoveTempFiles "respHeader.txt" "response.txt"
}
Groovy Sample – ApplyDataGrants.groovy for Profitability and Cost Management
Prerequisites: json.jar
Common Functions: See Appendix C: Common Helper Functions for Groovy.
def applyDataGrants() {
String urlString = serverUrl + "/epm/rest/"+ apiVersion + "/applications/" + appName +"/jobs/applyDataGrants";
def url;
try {
url = new URL(urlString)
} catch (MalformedURLException e) {
println "Malformed URL. Please pass valid URL"
System.exit(0);
}
executeJob(url, "POST", null);
}