Skip to main content

Inter-Service Communication

Every HTTP call, RabbitMQ message, and shared database connection between services is documented here.

HTTP REST Calls

auth-service calls

TargetEndpointPurpose
user-serviceGET /user/by-email?email=Look up user during login
user-servicePOST /userCreate user during registration
user-serviceGET /user/zitadel/:idFind user by ZITADEL ID
user-servicePOST /user/zitadelCreate user from ZITADEL data
ZITADEL (external)Token introspection, JWKSValidate ZITADEL tokens
Firebase (external)Admin SDKAuthenticate/register users

user-service calls

TargetEndpointPurpose
user-base-msUser CRUD, tags, pins, favorites, activity logs, features, shares, locks, integration tools, Langflow accounts, connectors, languagesAll user data persistence
admin-base-msRoles, permissions, org settings, org languages/models/agents/connectors/templates/workflows/parsingOrganization config and RBAC
llm-coreConversations, agents, available models, agent files/treeAI feature data
document-serviceDocument tree, document downloadDocument access
identity-serviceGroup management, membershipUser group resolution
LangflowFlow CRUD, run flows, token refreshWorkflow execution

llm-core calls

TargetEndpointPurpose
completion-servicePOST /api/v1/completionsLLM completions (streaming and non-streaming)
agent-servicePOST /api/v1/agent/runAgent execution (streaming and non-streaming)
document-serviceDocument metadata, base64 content, folders, exportsDocument access for conversations
user-servicePins, tags, favorites, user info, sharing/accessUser preferences and access control
LangflowRun workflows, upload files, inspect flowsWorkflow integration

completion-service calls

TargetEndpointPurpose
llm-coreGET /api/v1/services-config/models-providersFetch model/provider configuration at startup
OpenAI, Azure OpenAI, Anthropic, Google, Mistral, Jamba, Ollama, vLLM (external)Provider-specific APIsExecute LLM completions

agent-service calls

TargetEndpointPurpose
completion-servicePOST /api/v1/completionsLLM reasoning in the agentic loop
mcp-client-serviceGET /mcp/v1/tools/list-toolsDiscover available MCP tools
mcp-client-servicePOST /mcp/v1/tools/call-toolExecute a tool call

document-service calls

TargetEndpointPurpose
parser-servicePOST /api/v1/parser/parseHTTP fallback when RabbitMQ unavailable
completion-servicePOST /completionsDocument summarization (Map-Reduce via GPT-4o)
user-serviceSharing, bulk users, access checksAccess control for documents
admin-base-msOrg parsing technique settingsPer-org parser configuration

rag-service calls

TargetEndpointPurpose
embedding-servicePOST /api/v1/embed/singleEmbed the user query for similarity search
completion-servicePOST /api/v1/completionsLLM-based reranking
reranker-service (optional)POST /v1/rerankBGE model reranking

integration-service calls

TargetEndpointPurpose
user-serviceGET /langflow-users/meGet Langflow account record
user-servicePOST /langflow-usersCreate Langflow account record
user-servicePATCH /langflow-users/:userIdUpdate account
Langflow (external)Login, refresh, user management, flow CRUD, run flowsFull Langflow integration

mcp-client-service calls

TargetEndpointPurpose
All MCP tool serversTool-specific endpointsRoutes tool calls to the correct MCP server

RabbitMQ Messages

QueueProducerConsumerPurpose
parsing_jobsdocument-serviceparser-service workerTrigger document parsing
parsing_resultsparser-service workerdocument-serviceReturn parsed content
parsing_progressparser-service workerdocument-serviceParsing progress updates
embedding_jobsdocument-serviceembedding-service workerTrigger embedding generation
embedding_resultsembedding-service workerdocument-serviceReturn embedding status
embedding_progressembedding-service workerdocument-serviceEmbedding progress updates
transactioncompletion-servicellm-coreToken usage events

Shared Databases

Document Database (PostgreSQL + pgvector)

Shared by: document-service, parser-service, embedding-service, rag-service. Default name: document_service (configurable via PG_NAME per service).

TableOwner (writes)Readers
documentsdocument-serviceparser-service (read-only), embedding-service (read-only), rag-service (read-only)
chunksembedding-servicerag-service, document-service
embeddingsembedding-servicerag-service
parsing_jobsparser-serviceparser-service
foldersdocument-service--
parsing_techniquesdocument-service--

llm-core DB (PostgreSQL)

Owned by: llm-core only

Tables: conversations, messages, message_contents, message_reactions, document_attachments, agents, agent_settings, agent_documents, agent_conversions, models, providers, models_providers, canvases, canvas_versions, templates, services_config, model_transactions, conversions

admin-base DB (PostgreSQL)

Owned by: admin-base-ms only

Tables: organizations, roles, permissions, role_permissions, app_modules, features, actions, resource_units, resource_unit_members, unit_types, organization_settings, organization_languages, organization_models, organization_agents, organization_connectors, organization_templates, organization_workflows, organization_parsing

user-base DB (PostgreSQL)

Owned by: user-base-ms only

Tables: users, user_roles, tags, tag_entities, favorites, pins, searches, activity_logs, features, feature_shares, feature_link_settings, feature_locks, integration_tools, langflow_users, connectors, languages

Redis

ServiceUsage
auth-serviceSession storage (ZITADEL sessions)
llm-coreCache (conversation search, Langflow flow details)