Environment Variables
To run the Rendez-vous.ai microservices locally, you must configure environment variables for both the Dashboard and the Core API.
Create a .env file in the root of both the rdv.ai-dashboard and rdv.ai-API repositories (currently no such file is required for rdv.ai-widget).
Dashboard & CMS (rdv.ai-dashboard)
This service manages the database, S3 storage, and core authentication.
| Variable | Description | Local Dev Example |
|---|---|---|
PAYLOAD_SECRET | Secret key used by Payload CMS for cryptographic operations. | your-secure-random-string |
PAYLOAD_API_KEY | API key used for internal REST API requests requiring elevated privileges (e.g., retrieving files). | your-internal-api-key |
POSTGRES_USER | PostgreSQL database user. | postgres |
POSTGRES_PASSWORD | PostgreSQL database password. | postgres |
POSTGRES_DB | PostgreSQL database name. | rdv_ai |
POSTGRES_HOST | Hostname of the database. | localhost or 127.0.0.1 |
DATABASE_URL | Full connection string for the Postgres DB. | postgres://postgres:postgres@localhost:5432/rdv_ai |
S3_BUCKET | Name of the S3/MinIO bucket for media storage. | rdv-media |
S3_ENDPOINT | Endpoint URL for the S3 service. | http://localhost:9000 (Local MinIO) |
S3_ACCESS_KEY | S3 access key. | minioadmin |
S3_SECRET_KEY | S3 secret key. | minioadmin |
JWT_SECRET | Secret used to sign and verify JSON Web Tokens across the stack. | your-shared-jwt-secret |
RESEND_API_KEY | API key for Resend to send transactional emails. | re_... |
Core API (rdv.ai-API)
This service acts as the orchestration brain. Important: The JWT_SECRET and PAYLOAD_API_KEY must perfectly match the values set in the Dashboard’s .env file to ensure secure cross-service communication.
Internal Routing & Auth
| Variable | Description | Local Dev Example |
|---|---|---|
PORT | The port the Express.js server runs on. | 3001 |
PAYLOAD_URL | Base URL of the Dashboard (used by GenQL for GraphQL requests). | http://localhost:3000 (Note: In production, this uses K8s DNS like http://service.dashboard...) |
APOLLO_DASHBOARD_HOST | Host address of the PayloadCMS dashboard. | localhost:3000 |
PAYLOAD_API_KEY | API key to CRUD the PayloadCMS dashboard. | (Must match Dashboard) |
JWT_SECRET | Secret used to decrypt sensitive information passed from the Dashboard. | (Must match Dashboard) |
FS_HOST | Hostname of the FreeSWITCH instance. | your-ngrok-url or localhost (Prod: svc-int.freeswitch...) |
FS_PASSWORD | Password for Event Socket / API access to FreeSWITCH. | ClueCon |
External AI & Telephony Providers
| Variable | Description | Example |
|---|---|---|
GEMINI_API_KEY | API key for Google’s Gemini LLMs. | AIzaSy... |
OPENAI_API_KEY | API key for OpenAI models. | sk-... |
TWILIO_ACCOUNT_SID | Twilio Account SID for legacy routing or SMS tools. | AC... |
TWILIO_AUTH_TOKEN | Twilio Auth Token. | ... |
External Tools & Integrations
| Variable | Description | Example |
|---|---|---|
NYLAS_API_KEY | API key for Nylas (Calendar sync integration). | ... |
NYLAS_API_URI | Base URI for the Nylas API. | https://api.us.nylas.com |
GOOGLE_PLACES_API_KEY | API key for Google Places (used in location-based tools). | AIzaSy... |
RESEND_API_KEY | API key for sending emails via Resend. | re_... |
PROXY_HOST | IP of a setup proxy used for tools requiring static egress IPs. | 192.168.x.x |
PROXY_PORT | Port for the static egress proxy. | 8080 |
Local Development Helpers
(Place these in .env.local if you wish to keep them out of standard deployments)
| Variable | Description | Example |
|---|---|---|
NGROK_URL | Used by the npm run ngrok script to start the tunnel seamlessly. | your-domain.ngrok-free.app |
APOLLO_DEMO_HOST | (Deprecated) Legacy host definition. | rendez-vous-ai.vercel.app |
Last updated on