Skip to content

Additional Options

The below options are NOT configurable through URL params. In the config.yaml file they sit under kiosk (demo below and in example config.yaml)

immich_url: "****"
immich_api_key: "****"
// all your other config options
// 👇 Additional options
kiosk:
password: ""
cache: true
prefetch: true

The config validation level determines how strict Kiosk is when validating the configuration. The default is error, which will cause Kiosk to exit if the configuration is invalid. The other options are warning and off, which will log a warning or bypass the validation.

Settings

Key Value
CONFIG config_validation_level
ENV KIOSK_CONFIG_VALIDATION_LEVEL
URL N/A
VALUE error | warning | off
DEFAULT error
Using with config.yaml file
kiosk:
config_validation_level: error
Using with ENV in your docker-compose file
environment:
KIOSK_CONFIG_VALIDATION_LEVEL: error

Which port Kiosk should use. NOTE: This is only typically needed when running Kiosk outside of a container. If you are running inside a container the port will need to be reflected in your compose file, e.g. HOST_PORT:KIOSK_PORT

Settings

Key Value
CONFIG port
ENV KIOSK_PORT
URL N/A
VALUE int
DEFAULT 3000
Using with config.yaml file
kiosk:
port: 3000
Using with ENV in your docker-compose file
environment:
KIOSK_PORT: 3000

If you are running Kiosk behind a proxy, set this to true. This will enable Kiosk to look up the X-Forwarded-For header to determine the client’s IP address, which is used to create a unique device ID for each client.

Settings

Key Value
CONFIG behind_proxy
ENV KIOSK_BEHIND_PROXY
URL N/A
VALUE bool
DEFAULT false
Using with config.yaml file
kiosk:
behind_proxy: false
Using with ENV in your docker-compose file
environment:
KIOSK_BEHIND_PROXY: false

Disable overriding config options via the URL.

Settings

Key Value
CONFIG disable_url_queries
ENV KIOSK_DISABLE_URL_QUERIES
URL N/A
VALUE bool
DEFAULT false
Using with config.yaml file
kiosk:
disable_url_queries: false
Using with ENV in your docker-compose file
environment:
KIOSK_DISABLE_URL_QUERIES: false

Disable the config endpoint which outputs a redacted version of the config.yaml file at /config.

Settings

Key Value
CONFIG disable_config_endpoint
ENV KIOSK_DISABLE_CONFIG_ENDPOINT
URL N/A
VALUE bool
DEFAULT false
Using with config.yaml file
kiosk:
disable_config_endpoint: false
Using with ENV in your docker-compose file
environment:
KIOSK_DISABLE_CONFIG_ENDPOINT: false

Should Kiosk watch config.yaml file for changes. Reloads all connect clients if a change is detected.

Settings

Key Value
CONFIG watch_config
ENV KIOSK_WATCH_CONFIG
URL N/A
VALUE bool
DEFAULT false
Using with config.yaml file
kiosk:
watch_config: false
Using with ENV in your docker-compose file
environment:
KIOSK_WATCH_CONFIG: false

The number of assets (data) requested from Immich per api call. min=1 max=1000.

Settings

Key Value
CONFIG fetched_assets_size
ENV KIOSK_FETCHED_ASSETS_SIZE
URL N/A
VALUE int
DEFAULT 1000
Using with config.yaml file
kiosk:
fetched_assets_size: 1000
Using with ENV in your docker-compose file
environment:
KIOSK_FETCHED_ASSETS_SIZE: 1000

The number of seconds before an http request will time out.

Settings

Key Value
CONFIG http_timeout
ENV KIOSK_HTTP_TIMEOUT
URL N/A
VALUE int
DEFAULT 20
Using with config.yaml file
kiosk:
http_timeout: 20
Using with ENV in your docker-compose file
environment:
KIOSK_HTTP_TIMEOUT: 20

If a password is set, at least one of the auth headers or the ?password= URL parameter must be included in your request for access.

Settings

Key Value
CONFIG password
ENV KIOSK_PASSWORD
URL N/A
VALUE string
DEFAULT ""
Using with config.yaml file
kiosk:
password: ""
Using with ENV in your docker-compose file
environment:
KIOSK_PASSWORD: ""

via config.yaml file

kiosk:
password: 12345

via ENV in your docker-compose file

environment:
KIOSK_PASSWORD: "12345"

Then to access Kiosk you MUST add the password param in your URL e.g. http://{URL}?password=12345

You can authenticate requests by including either the X-Api-Key or Authorization header with your password value. This is an alternative to passing the password as a URL parameter.

Examples:

Terminal window
GET / HTTP/1.1
Host: 192.168.0.123:3000
X-Api-Key: 12345
Terminal window
GET / HTTP/1.1
Host: 192.168.0.123:3000
Authorization: Bearer 12345

Cache selective Immich api calls to reduce unnecessary calls.

Settings

Key Value
CONFIG cache
ENV KIOSK_CACHE
URL N/A
VALUE bool
DEFAULT true
Using with config.yaml file
kiosk:
cache: true
Using with ENV in your docker-compose file
environment:
KIOSK_CACHE: true

Pre-fetch assets in the background, so images load much quicker when duration timer ends.

Settings

Key Value
CONFIG prefetch
ENV KIOSK_PREFETCH
URL N/A
VALUE bool
DEFAULT true
Using with config.yaml file
kiosk:
prefetch: true
Using with ENV in your docker-compose file
environment:
KIOSK_PREFETCH: true

Balances asset selection when multiple sources are used, e.g. multiple people and albums. When enabled, sources with fewer assets will show less often.

Settings

Key Value
CONFIG asset_weighting
ENV KIOSK_ASSET_WEIGHTING
URL N/A
VALUE bool
DEFAULT true
Using with config.yaml file
kiosk:
asset_weighting: true
Using with ENV in your docker-compose file
environment:
KIOSK_ASSET_WEIGHTING: true