Setup guide

Installing ApexReporter Studio alongside Oracle APEX

ApexReporter Studio runs as its own lightweight service next to your Oracle APEX/ORDS mid-tier — there's no plug-in to install into APEX itself. An APEX page calls it over plain HTTPS, the same way it would call any external REST API. Here's exactly how to stand it up and connect the two.

What you need

Operating systemWindows 10/11, Windows Server 2019+, or any modern 64-bit Linux (Ubuntu 20.04+, RHEL/Rocky/Alma 8+) — the same machine your APEX/ORDS mid-tier runs on, or a separate one on the same network.
RuntimeNode.js 22.5.0 or later.
CPU / RAM2 cores / 4 GB RAM minimum.
Disk~1.5 GB free.
Oracle clientNone required — connections run in Oracle's thin mode.

1. Install the runtime

Unpack the installer to any folder on disk and run the provided launch script — it bootstraps its own configuration, installs its dependencies, and starts on first run.

Windows

  1. Install Node.js 22.5.0+ (winget install OpenJS.NodeJS.LTS, or the installer from nodejs.org).
  2. Extract ApexReporter Studio to an install folder.
  3. Open PowerShell there and run .\start.ps1.

Linux

  1. Install Node.js 22.5.0+ (NodeSource repository recommended over an older distro-bundled version).
  2. Extract ApexReporter Studio to an install directory.
  3. chmod +x start.sh stop.sh, then ./start.sh — add NO_BROWSER=1 on a headless server.

For a persistent production install, package it as a standalone runtime (a single compiled Node process serving both API and UI from one port) and run it under a process manager — a Windows Service via NSSM, or a systemd unit / pm2 on Linux — with a reverse proxy (nginx, IIS, or ORDS/HTTP Server) in front to terminate HTTPS. See the full installation reference for the production packaging steps.

2. Point it at your Oracle database

Connection profiles are managed inside the designer (Connections panel) — nothing to edit in a config file for this part. Add a profile with a display name and an EZConnect string or TNS alias; passwords are encrypted at rest. A built-in DEMO connection with sample data works with zero setup if you want to try the designer before pointing at real APEX schema data.

3. Wire it into an APEX page

Three ways to call a report from APEX, from simplest to most capable — full detail, code samples, and troubleshooting live on the Oracle APEX reporting guide:

ApproachJavaScript needed?Best for
Plain link / Redirect to URLNoA simple "Print" or "Download" button
JavaScript client (ApexReporter.run())One line, via a Dynamic ActionAnything client-facing — keeps the API key out of the address bar
Embedded live preview (ApexReporter.preview())YesShowing a report inline inside a page/region, in an iframe
  1. Register the JavaScript client first. Shared Components → User Interface → JavaScript → File URLs, and add the exact URL your server serves it at (e.g. https://your-host:4000/apexreporter-client.js). It must load as a real external <script src>, not pasted inline.
  2. Design and save the report in ApexReporter Studio; copy its report id from the Open dialog.
  3. Make sure the report's query uses named binds matching a Parameter on the report (e.g. :P_DEPTNO ↔ a Parameter named P_DEPTNO).
  4. Set a service-caller API key ([security] report_api_key= in config.ini) — APEX-driven calls have no interactive session, so every call gets 401 without it.
  5. Set allowed origins: [security] cors_origin=https://your-apex-host.example.com, then restart the server.
Common first-run error: "ApexReporter is not defined"

This means the browser never loaded apexreporter-client.js before your button's code ran. Check DevTools → Network for a 200 on that file, confirm it's registered as a File URL (not inline code), and recheck CORS if the script loads but the call still fails. Full troubleshooting steps are in the documentation.

4. Verify the install

  1. GET /api/health returns a JSON status.
  2. The designer loads in a browser and shows the login screen.
  3. The built-in demo connection returns rows for a sample query.
  4. A report can be designed, saved, previewed, and exported to PDF.
  5. An APEX page's button, wired per step 3, opens that same report.

Try it before installing anything

Launch the hosted live demo, or download the free trial installer and run through these exact steps against your own Oracle instance.

Try Live Demo Download Trial