Analytics Catalog/Oracle EPM/REST API patterns
Explore the catalogEPM modulesThe extraction patternEPM Automate commandsEPM to the warehouse
Oracle EPM Cloud · Spine

The REST API, one loop

Every REST integration with EPM Cloud is the same three calls: submit the job, poll the status, collect the file. Learn the loop once and every endpoint is a variation.

RuleSubmit, poll, collect. The job runs in EPM, your code waits on the status, and the run identifier ties the output to the run.
Neverfire and forget. A submit without a poll is a pipeline that fails silently, and nobody finds out until the dashboard is wrong.
The loop— three calls, in order, every time.
CallWhat it does
1 · SubmitPOST to the jobs endpoint with the job type and the job name. The response carries the run identifier. This is the identifier the old runDataRule command never gave you.
2 · PollGET the job by its identifier every few seconds until the status says done or failed. Failed is an answer too, log it and stop, do not collect.
3 · CollectDownload the output file through the files endpoint, named and tied to the run. Push it to the landing zone and the loop is closed.
# the loop, in shape, service account and your environment URL
POST {url}/rest/v3/applications/{app}/jobs
     {"jobType":"EXPORT_DATA","jobName":"NightlyPlanExport"}
GET  {url}/rest/v3/applications/{app}/jobs/{jobId}
     repeat until status is completed
GET  the export file, then push it to the landing zone
REST or EPM Automate— the honest split, one line each.
PickWhen
EPM AutomateYou have a small server and cron. Simplest possible operations, and the recommended path for most teams.
RESTYou need the run identifier per output. Or there is nowhere to install anything, cloud functions and serverless runners speak REST natively. Or another system orchestrates, Airflow and its cousins call REST, not command lines.
The new JSON APIsThe April 2026 update added REST calls that return data as JSON grids directly, Export Data and Export Form Data, built for AI agents and light programmatic pulls. Young, and the natural fit when the consumer wants an answer, not a file.

Two housekeeping facts from the same 2026 updates: key-based authentication arrived for file transfer, and failed calls no longer retry on permission and not-found errors, your loop handles those, not a retry. Either way the deeper rule holds, build on jobs and APIs, they survive the monthly updates that interface behavior does not. The loop's output feeds the extraction pattern and lands in the star. Verified against Oracle's documentation and update notes, July 2026.

Want the loop written into your pipeline?
Submit, poll, collect, wired into your scheduler with the run identifiers logged, and you own every line.
Talk to us
Terms on this page
the loop
Submit, poll, collect. Every REST integration is this.
run identifier
The number tying an output to a run. REST gives it, the old command line did not.
jobs endpoint
Where named jobs are submitted and watched.
JSON grid APIs
April 2026 additions that return data directly, no file. Built for AI agents.
service account
The credential the pipeline runs as. Never a person's login.