v1.0 Dashboard Public Profile GitHub
Complete Reference

.env Reference

Every environment variable used by KaiVox AI, grouped by category. Keys marked Required must be set for the feature to work. Optional keys have sensible defaults.

Never commit .env to git. It is in .gitignore. Use .env.example as a template and copy it to .env on each server.

App

KeyExample ValueRequired?Description
APP_NAMEKaiVox AI✅ YesApplication name shown in emails and UI
APP_ENVlocal / staging / production✅ YesControls error reporting, caching behaviour
APP_KEYbase64:...✅ YesGenerated by php artisan key:generate — never share
APP_DEBUGtrue (local) / false (prod)✅ YesShow detailed errors. Must be false in production
APP_URLhttp://kaivox-ai.test✅ YesFull base URL — used for webhook URLs shown to tenants
APP_TIMEZONEUTC❌ OptionalDefault timezone for the app (tenants set their own timezone)
APP_LOCALEen❌ OptionalDefault locale

Database

KeyExample ValueRequired?Description
DB_CONNECTIONmysql✅ YesDatabase driver
DB_HOST127.0.0.1✅ YesDatabase host
DB_PORT3306✅ YesDatabase port
DB_DATABASEkaivox_ai✅ YesDatabase name
DB_USERNAMEroot✅ YesDatabase username
DB_PASSWORDroot✅ YesDatabase password

Mail / Email

KeyExample ValueRequired?Description
MAIL_MAILERlog (local) / smtp (prod)✅ YesUse log locally (emails in storage/logs), smtp on server
MAIL_HOSTmail.hostinger.comIf smtpSMTP server hostname
MAIL_PORT465If smtp587 (TLS) or 465 (SSL). Note: both blocked on local ISP — use server
MAIL_USERNAMEkaivox@omajestic.comIf smtpSMTP login email
MAIL_PASSWORDyour-email-passwordIf smtpSMTP login password
MAIL_ENCRYPTIONsslIf smtpUse ssl for port 465, tls for port 587
MAIL_FROM_ADDRESSkaivox@omajestic.com✅ YesDefault from address for system emails
MAIL_FROM_NAMEKaiVox AI✅ YesDefault from name
Local email workaround: Set MAIL_MAILER=log to write emails to storage/logs/laravel.log instead of sending. Install Mailpit (free, single .exe) to catch emails in a local inbox at localhost:8025.

Queue

KeyExample ValueRequired?Description
QUEUE_CONNECTIONdatabase✅ YesQueue driver — database stores jobs in MySQL. Run php artisan queue:work to process.

OpenAI

KeyExample ValueRequired?Description
OPENAI_API_KEYsk-proj-xxxx...✅ YesPlatform-level OpenAI key. All tenants share this. Get from platform.openai.com → API Keys
OPENAI_MODELgpt-4o❌ OptionalAI model to use. Default: gpt-4o. Change to gpt-4o-mini to reduce costs

Twilio

KeyExample ValueRequired?Description
TWILIO_ACCOUNT_SIDACxxxxxxxxxx✅ Yes (for Twilio)From Twilio Console → Account Info
TWILIO_AUTH_TOKENxxxxxxxxxxxxxxxx✅ Yes (for Twilio)From Twilio Console → Account Info
TWILIO_FROM_NUMBER+12025551234✅ Yes (for SMS/WhatsApp)Twilio number in E.164 format — used as the sender for outbound SMS and WhatsApp

Vobiz

⚠️ Vobiz credentials are no longer stored in .env — they are managed in Super Admin → Platform Settings (stored in the platform_settings DB table). This supports multi-tenant SaaS properly — no per-tenant credentials in server config files.

WhereFieldUsed For
Super Admin → Platform SettingsVobiz App IDDID marketplace (browse/purchase/release numbers)
Super Admin → Platform SettingsVobiz API KeyDID marketplace (browse/purchase/release numbers)
phone_numbers.provider_api_key (DB)Per-tenant Auth TokenRecording download during live calls (X-Auth-Token header)

Stripe

KeyExample ValueRequired?Description
STRIPE_KEYpk_test_...✅ Yes (for Stripe)Publishable key — used in frontend JS. Use pk_test_ for dev, pk_live_ for production
STRIPE_SECRETsk_test_...✅ Yes (for Stripe)Secret key — server-side only. Never expose to frontend
STRIPE_WEBHOOK_SECRETwhsec_...❌ OptionalFor verifying Stripe webhook signatures (future use)

Razorpay

KeyExample ValueRequired?Description
RAZORPAY_KEYrzp_test_...✅ Yes (for Razorpay)Key ID from Razorpay Dashboard → Settings → API Keys
RAZORPAY_SECRETxxxxxxxxxxxxxxxxxx✅ Yes (for Razorpay)Key Secret — used to verify payment signatures server-side

Google

KeyExample ValueRequired?Description
GOOGLE_CLIENT_ID12345.apps.googleusercontent.com❌ OptionalFor Google Calendar OAuth. Leave blank until staging deploy
GOOGLE_CLIENT_SECRETGOCSPX-...❌ OptionalGoogle OAuth client secret
GOOGLE_REDIRECT_URIhttps://kaivox-test.omajestic.com/settings/google-calendar/callback❌ OptionalMust match exactly what is registered in Google Cloud Console

Session & Cache

KeyExample ValueRequired?Description
SESSION_DRIVERdatabase✅ YesSession storage driver. database is recommended for multi-server setups
SESSION_LIFETIME120❌ OptionalSession lifetime in minutes
CACHE_DRIVERfile❌ OptionalCache driver. file is fine for single-server. Use redis for high traffic

Complete .env Template

.env (copy this as a starting point)
APP_NAME="KaiVox AI"
APP_ENV=local
APP_KEY=
APP_DEBUG=true
APP_URL=http://kaivox-ai.test
APP_TIMEZONE=UTC

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=kaivox_ai
DB_USERNAME=root
DB_PASSWORD=root

QUEUE_CONNECTION=database
SESSION_DRIVER=database
SESSION_LIFETIME=120
CACHE_DRIVER=file

MAIL_MAILER=log
MAIL_HOST=mail.hostinger.com
MAIL_PORT=465
MAIL_USERNAME=kaivox@omajestic.com
MAIL_PASSWORD=
MAIL_ENCRYPTION=ssl
MAIL_FROM_ADDRESS=kaivox@omajestic.com
MAIL_FROM_NAME="KaiVox AI"

OPENAI_API_KEY=
OPENAI_MODEL=gpt-4o

TWILIO_ACCOUNT_SID=
TWILIO_AUTH_TOKEN=
TWILIO_FROM_NUMBER=

# Vobiz credentials are in Super Admin → Platform Settings (DB), NOT in .env

STRIPE_KEY=
STRIPE_SECRET=

RAZORPAY_KEY=
RAZORPAY_SECRET=

GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
GOOGLE_REDIRECT_URI=