The FinkiOpenDesk backend reads its runtime configuration entirely from environment variables. None of these values are hard-coded; every sensitive setting is injected at startup via the OS environment, a DockerDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/Daniel-Stojanovski/finkiopendesk/llms.txt
Use this file to discover all available pages before exploring further.
--env-file, or a Render service configuration. The sections below document each variable and how it is used by Spring Boot.
Loading variables from a .env file
application.properties includes the following line:
application.properties
.env file is present in the working directory at startup, Spring Boot loads it automatically. The optional: prefix means the application starts normally even if the file is absent (as is the case in production containers where variables are injected by the runtime).
Database
Full JDBC connection string for the PostgreSQL database. Flyway uses this same connection to apply migrations on startup.
PostgreSQL username. Mapped to
spring.datasource.username in application.properties.Password for the PostgreSQL user. Mapped to
spring.datasource.password.Email (SendGrid)
A SendGrid API key used as the SMTP password when sending account activation emails. The SMTP username is always the literal string
apikey (set in application.properties); only the password — this variable — changes between environments.Generate a key in the SendGrid dashboard under Settings → API Keys. The key must have at least Mail Send permissions.The backend connects to SendGrid via SMTP on port 587 with STARTTLS. Make sure your hosting environment allows outbound connections on port 587.
Authentication (JWT)
Secret used to sign and verify account activation tokens. Choose a long, randomly generated string (at least 256 bits of entropy). This value must remain constant across restarts; rotating it invalidates all pending activation links.
Secret used to sign and verify login (session) tokens. Use a different value from
JWT_ACTIVATION_SECRET. Rotating this secret invalidates all active user sessions.Server
The port the embedded Tomcat server listens on. Defaults to On Render, the platform injects
8080 if not set, as expressed in application.properties:PORT automatically. You do not need to set it manually for Render deployments.Complete example
The following.env file shows all variables together. Use it as a starting point for local development — fill in your own values and make sure this file is in .gitignore.
.env