Skip to content

Report rendering api override setting

The report rendering api override setting is used in situations where report rendering code is unable to contact the local AyaNova api server via it's localhost address.

The symptom of this issue is reports failing to render with an error displayed containing text similar to "JobFailed: PuppeteerSharp -> Evaluation failed: TypeError: Failed to fetch at ayPostToAPI"

Reports are rendered by a "headless" web browser running at the AyaNova server which executes the javascript required to render the report. Most report scripts will need to contact the AyaNova API to fetch data like translations or logos. In some scenarios such as some specific configurations when using IIS as the front end for AyaNova the local headless browser is prevented from contacting the AyaNova server due to accessing it via the localhost address. In these situations it's necessary to tell the script to use an alternative external address (the same address used by the AyaNova web program used at the browser).

What to do if you need to set this value

This value should be set to the URL that external users on the internet use to connect to the AyaNova web application. So, for example, if your AyaNova server is normally connected to in a web browser at the url https://ayanova.example.com to use the AyaNova web application then you would set this value to exactly that https://ayanova.example.com.

Default

If no override is specified AyaNova will use the following internal default value:

http://127.0.0.1:{Port}

Overriding

AyaNova expects this value to be provided by a config.json property, environment variable or command line parameter named

AYANOVA_REPORT_RENDER_API_URL_OVERRIDE

The value specified should be a string specifying the external URL used to connect to AyaNova, for example: https://ayanova.example.com

Example config.json entry

{
  ...other properties...
  "AYANOVA_REPORT_RENDER_API_URL_OVERRIDE": "https://ayanova.example.com"
}

Example command line parameter

ayanova.exe --AYANOVA_REPORT_RENDER_API_URL_OVERRIDE="https://ayanova.example.com"

Example environment variable

Windows

set "AYANOVA_REPORT_RENDER_API_URL_OVERRIDE=https://ayanova.example.com"

Linux

export AYANOVA_REPORT_RENDER_API_URL_OVERRIDE="https://ayanova.example.com"