Troubleshooting
A starter set of the issues you are most likely to hit. For OAuth setup errors specifically, the Connect with OAuth guide has a full symptom-to-fix table.
Connection failures
Section titled “Connection failures”Every EPM call returns 401 even though your credentials look right.
If you are on OAuth, this is almost always the resource-server side of the
setup: the Pod URL is not in the token’s audience. See the OAuth guide’s
Step 2 (Add secondary audience). To isolate
OAuth from everything else, try the same operation with a Service Account
(Basic auth): if Basic works and OAuth fails, the problem is the OAuth
configuration, not your Pod or your user roles.
Pull / Push / Deploy / Execute are greyed out. Two common reasons:
- The Pod is in Offline Mode. Those live verbs are unavailable by design until the Pod has a real URL and credential. See Offline Mode.
- Your install is on the Free or Offline tier. The live verbs require the Full tier; activate a Full Seat Key to enable them.
The Pod URL is unreachable or times out.
Confirm the URL in pod.json is the exact Pod host
(https://<pod>.epm.<region>.ocs.oraclecloud.com) and that any corporate VPN or
network policy allows a direct connection to it. The extension talks to Oracle
directly, with no proxy of ours in the path.
Credential resets
Section titled “Credential resets”You rotated a Service Account password. Run EPM Workbench: Manage Service Accounts from the Command Palette, select the account, then choose Update password. The new password is stored in VS Code SecretStorage. The username and the Pods that use the account stay the same, and nothing in your repository needs to change.
An OAuth session went stale. Run EPM Workbench: Manage EPM Accounts, select the identity domain to disconnect, then select the Pod and run Connect EPM Account under EPM Workbench to sign in again. The refreshed token stays in VS Code SecretStorage.
A Seat Key stopped working. If a key lapsed or was reassigned by your admin, the install degrades to the Free tier. Your files stay openable. Ask your admin to confirm the seat, then re-run EPM Workbench: Enter Seat Key with the current key.
Language-server behavior
Section titled “Language-server behavior”Groovy intelligence stopped working, or is slower than usual.
Groovy language features come from a language service that runs on your machine
when Java 21 or newer is available, and from our hosted service otherwise. If
both are unreachable, Groovy-specific features degrade, but calc-script
intelligence is pure local TypeScript and keeps working offline. To keep
everything on your machine and never use the hosted service, set
epmWorkbench.lsp.provider: "local".
Cross-artifact resolution (Full Application Intelligence) isn’t resolving
%Template / %Script.
Cross-artifact context requires a validated Seat Key (Offline or Full tier);
Free sessions are single-file only. Confirm your key is active, and that the
artifacts being referenced are present in the workspace.