Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Service Catalog

This catalog provides detailed information about every external service that General Bots integrates with.

LLM Providers

OpenAI

PropertyValue
Service URLhttps://api.openai.com/v1
Config Keyllm-provider=openai
API Key Configllm-api-key (stored in Vault)
Documentationplatform.openai.com/docs
BASIC KeywordsLLM
Supported Modelsgpt-5, gpt-oss-120b, gpt-oss-20b

Groq

PropertyValue
Service URLhttps://api.groq.com/openai/v1
Config Keyllm-provider=groq
API Key Configllm-api-key (stored in Vault)
Documentationconsole.groq.com/docs
BASIC KeywordsLLM
Supported Modelsllama-4-scout, llama-4-maverick, qwen3, mixtral-8x22b

Anthropic

PropertyValue
Service URLhttps://api.anthropic.com/v1
Config Keyllm-provider=anthropic
API Key Configllm-api-key (stored in Vault)
Documentationdocs.anthropic.com
BASIC KeywordsLLM
Supported Modelsclaude-opus-4.5, claude-sonnet-4.5

Azure OpenAI

PropertyValue
Service URLhttps://{resource}.openai.azure.com/
Config Keyllm-provider=azure
API Key Configllm-api-key (stored in Vault)
Documentationlearn.microsoft.com/azure/ai-services/openai
BASIC KeywordsLLM

Google (Gemini)

PropertyValue
Service URLhttps://generativelanguage.googleapis.com/v1
Config Keyllm-provider=google
API Key Configllm-api-key (stored in Vault)
Documentationai.google.dev/docs
BASIC KeywordsLLM
Supported Modelsgemini-3-pro, gemini-2.5-pro, gemini-2.5-flash

xAI (Grok)

PropertyValue
Service URLhttps://api.x.ai/v1
Config Keyllm-provider=xai
API Key Configllm-api-key (stored in Vault)
Documentationdocs.x.ai
BASIC KeywordsLLM
Supported Modelsgrok-4

DeepSeek

PropertyValue
Service URLhttps://api.deepseek.com/v1
Config Keyllm-provider=deepseek
API Key Configllm-api-key (stored in Vault)
Documentationplatform.deepseek.com/docs
BASIC KeywordsLLM
Supported Modelsdeepseek-v3.1, deepseek-r3

Mistral AI

PropertyValue
Service URLhttps://api.mistral.ai/v1
Config Keyllm-provider=mistral
API Key Configllm-api-key (stored in Vault)
Documentationdocs.mistral.ai
BASIC KeywordsLLM
Supported Modelsmixtral-8x22b

Weather Services

OpenWeatherMap

PropertyValue
Service URLhttps://api.openweathermap.org/data/2.5
Config Keyweather-api-key
Documentationopenweathermap.org/api
BASIC KeywordsWEATHER
Free Tier1,000 calls/day
Required PlanFree or higher

Example Usage:

weather = WEATHER "Seattle"
TALK weather

Messaging Channels

WhatsApp Business API

PropertyValue
Service URLhttps://graph.facebook.com/v17.0
Config Keyswhatsapp-api-key, whatsapp-phone-number-id, whatsapp-business-account-id
Documentationdevelopers.facebook.com/docs/whatsapp
BASIC KeywordsSEND WHATSAPP, SEND FILE (WhatsApp)
Webhook URL/api/channels/whatsapp/webhook

Microsoft Teams

PropertyValue
Service URLhttps://smba.trafficmanager.net/apis
Config Keysteams-app-id, teams-app-password, teams-tenant-id
Documentationlearn.microsoft.com/microsoftteams/platform
BASIC KeywordsSEND TEAMS, SEND FILE (Teams)
Webhook URL/api/channels/teams/messages

Instagram Messaging

PropertyValue
Service URLhttps://graph.facebook.com/v17.0
Config Keysinstagram-access-token, instagram-page-id, instagram-account-id
Documentationdevelopers.facebook.com/docs/instagram-api
BASIC KeywordsSEND INSTAGRAM
Webhook URL/api/channels/instagram/webhook

Telegram

PropertyValue
Service URLhttps://api.telegram.org/bot{token}
Config Keystelegram-bot-token
Documentationcore.telegram.org/bots/api
BASIC KeywordsSEND TELEGRAM
Webhook URL/api/channels/telegram/webhook

Storage Services

S3-Compatible Storage

General Bots uses S3-compatible object storage. Configuration is automatically managed by the Directory service (Zitadel).

PropertyValue
Local DefaultMinIO on port 9000
ManagementDirectory service (automatic)
Console Port9001 (when using MinIO)
BASIC KeywordsGET (file retrieval)

Compatible Services:

  • MinIO (default local installation)
  • Backblaze B2
  • Wasabi
  • DigitalOcean Spaces
  • Cloudflare R2
  • Any S3-compatible provider

Storage credentials are provisioned and rotated automatically by the Directory service. No manual configuration required.


Directory Services

Zitadel (Identity Provider)

PropertyValue
Local DefaultPort 8080
Environment VariablesDIRECTORY_URL, DIRECTORY_CLIENT_ID, DIRECTORY_CLIENT_SECRET
Documentationzitadel.com/docs
PurposeUser authentication, SSO, OAuth2/OIDC, service credential management

The Directory service manages:

  • User authentication
  • Service credentials (database, storage, cache)
  • OAuth applications
  • Role-based access control

Email Services

Stalwart Mail Server

PropertyValue
Ports25 (SMTP), 993 (IMAPS), 587 (Submission)
ManagementDirectory service (automatic)
Documentationstalw.art/docs
BASIC KeywordsSEND MAIL

Email accounts are created and managed through the Directory service.

External IMAP/SMTP

PropertyValue
Config Keyssmtp-server, smtp-port, imap-server, imap-port, email-username, email-password
BASIC KeywordsSEND MAIL
Supported ProvidersGmail, Outlook, custom SMTP/IMAP

Gmail Configuration Example (in config.csv):

smtp-server,smtp.gmail.com
smtp-port,587
imap-server,imap.gmail.com
imap-port,993

Local Services (BotModels)

Image Generation

PropertyValue
Service URLhttp://localhost:5000 (default)
Config Keysbotmodels-enabled, botmodels-url
BASIC KeywordsIMAGE
RequiresBotModels service running

Video Generation

PropertyValue
Service URLhttp://localhost:5000 (default)
Config Keysbotmodels-enabled, botmodels-url
BASIC KeywordsVIDEO
RequiresBotModels service running, GPU recommended

Audio Generation (TTS)

PropertyValue
Service URLhttp://localhost:5000 (default)
Config Keysbotmodels-enabled, botmodels-url
BASIC KeywordsAUDIO
RequiresBotModels service running

Vision/Captioning

PropertyValue
Service URLhttp://localhost:5000 (default)
Config Keysbotmodels-enabled, botmodels-url
BASIC KeywordsSEE
RequiresBotModels service running

Internal Services

These services are deployed locally as part of the General Bots stack. All are managed by the Directory service:

ServiceDefault PortPurposeManagement
PostgreSQL5432Primary databaseVault
Qdrant6333Vector storage for KBVault
Cache6379CachingVault
Stalwart25, 993Email server (optional)Vault
BotModels5000AI model inferenceconfig.csv

Service Health Checks

All services can be checked via the monitoring API:

GET /api/monitoring/services

Response includes status for all configured external services.


Troubleshooting

Common Issues

  1. API Key Invalid - Verify key in config.csv, ensure no trailing whitespace
  2. Rate Limited - Check service quotas, implement caching with SET BOT MEMORY
  3. Connection Timeout - Verify network access to external URLs
  4. Service Unavailable - Check service status pages

Debug Logging

Enable trace logging to see external API calls:

RUST_LOG=trace ./botserver