# Unoapi Cloud — .env (English) # Copy to .env and adjust for your environment # Core PORT=9876 BASE_URL=http://localhost:9876 LOG_LEVEL=debug # Session/Connection CONNECTION_TYPE=qrcode QR_TIMEOUT_MS=60000 VALIDATE_SESSION_NUMBER=false # Webhook (optional) # WEBHOOK_URL=http://localhost:3000/webhooks/whatsapp # WEBHOOK_TOKEN=secret # WEBHOOK_HEADER=api_access_token # Storage (S3/MinIO) STORAGE_ENDPOINT=http://minio:9000 STORAGE_REGION=us-east-1 STORAGE_BUCKET_NAME=unoapi STORAGE_ACCESS_KEY_ID=minioadmin STORAGE_SECRET_ACCESS_KEY=minioadmin STORAGE_FORCE_PATH_STYLE=true # Redis / RabbitMQ (optional) REDIS_URL=redis://redis:6379 AMQP_URL=amqp://guest:guest@rabbitmq:5672?frameMax=8192 # Status/Broadcast STATUS_ALLOW_LID=true # Groups GROUP_SEND_MEMBERSHIP_CHECK=true GROUP_SEND_PREASSERT_SESSIONS=true GROUP_SEND_ADDRESSING_MODE= # Audio/PTT SEND_AUDIO_MESSAGE_AS_PTT=true CONVERT_AUDIO_TO_OGG=true CONVERT_AUDIO_FFMPEG_PARAMS=["-vn","-ar","48000","-ac","1","-c:a","libopus","-b:a","64k","-application","voip","-avoid_negative_ts","make_zero","-map_metadata","-1","-f","ogg"] SEND_AUDIO_WAVEFORM=true AUDIO_WAVEFORM_SAMPLES=85 # Timeouts WEBHOOK_TIMEOUT_MS=360000 FETCH_TIMEOUT_MS=360000 HISTORY_MAX_AGE_DAYS=30 # Proxy (optional) # PROXY_URL=socks5://user:pass@proxy.local:1080 # Profile pictures # Include profile pictures in webhook payloads and serve from S3 or filesystem SEND_PROFILE_PICTURE=true # Media retention (seconds). Used to schedule deletion in S3 via AMQP # Default ~30 days DATA_TTL=2592000 # Signed URL TTL (seconds) for links returned to webhooks (S3) # Default ~3 days DATA_URL_TTL=259200