REST API

Refreshing Cubes Through the REST API

CloudADDIECloudADDIEMarch 11, 20263 min read
Refreshing Cubes Through the REST API

Part 11 of 12 in the Oracle EPM Cloud REST API series.

Change metadata in Planning, a new member, a renamed entity, an added dimension, and it is not immediately usable in calculations and reports until the underlying cube catches up. That catch-up step is a cube refresh, and it is the third job type this series covers in detail, alongside business rules and data imports.

The request

{
  "jobType": "CUBE_REFRESH",
  "jobName": "MyRefreshCube",
  "parameters": {
    "allowedUsersDuringCubeRefresh": "All Users",
    "terminateActiveRequestsBeforeCubeRefresh": "false",
    "logOffAllUsersBeforeCubeRefresh": "true",
    "allowedUsersAfterCubeRefresh": "Administrators"
  }
}

Same endpoint as the previous two job types, .../applications/Vision/jobs, same POST method, same headers.

The parameters explained

These four parameters exist because a cube refresh is disruptive. It typically requires exclusive or near exclusive access to the application while it runs, so Oracle gives you control over who stays logged in during the process.

allowedUsersDuringCubeRefresh sets who can remain connected while the refresh is running, commonly restricted to administrators only.

terminateActiveRequestsBeforeCubeRefresh decides whether any in-flight requests get forcibly ended so the refresh can start immediately, rather than waiting for them to finish naturally.

logOffAllUsersBeforeCubeRefresh controls whether every connected user gets logged out before the refresh begins, which is the safer setting for a change significant enough to need a refresh in the first place.

allowedUsersAfterCubeRefresh sets who is allowed back in once the refresh completes, useful for keeping an application locked to administrators only until validation is finished.

Why this one belongs in a script

Cube refreshes tend to follow metadata changes closely, and metadata changes are themselves often scripted or triggered by an upstream system, an EDMCS push, a bulk member load, or an EPM Automate import. Tucking the refresh into the same automation as the metadata change itself means there is no gap where the application sits in an inconsistent state, with metadata updated but the cube not yet reflecting it. A human remembering to click Refresh Database manually, sometime after the metadata load finished, is exactly the kind of manual step this series set out to remove back in part one.

As with the previous two job types, the response and the polling approach are unchanged from what part nine already covered: a jobID, a status field on the same negative one through four scale, and a GET call against the job's own ID to confirm it actually finished before anything downstream depends on the refreshed cube being ready.

Three job types down. The final post in this series steps back from specific jobs to cover the habits that separate a script that works once from one you can trust every month end, along with where to look when something does not go as planned.

Free Consultation

Want help from senior EPM and ERP consultants?

Schedule a free consultation with CloudADDIE to talk through your planning, consolidation, reporting, or data challenges.

Keep Reading

Related posts

REST API

Best Practices, Troubleshooting, and Your Next Steps

4 min readRead post
REST API

Loading Data into Planning with the Import Data Job

3 min readRead post
REST API

Checking Job Status: How to Poll the Right Way

2 min readRead post