RenderService
このコンテンツはまだ日本語訳がありません。
Internal service that handles batch template rendering. Used by the campaign workflow engine to render Markdown templates into rich message content for each recipient.
Methods
Section titled “Methods”| Method | Description |
|---|---|
RenderBatch |
Render a template for multiple users (server-streaming) |
RenderBatch
Section titled “RenderBatch”Render a template for a batch of users with per-user variable interpolation. Returns results as a server stream — each response contains one rendered message.
Authorization: Internal service only
Request: RenderBatchRequest
Section titled “Request: RenderBatchRequest”| Field | Type | Description |
|---|---|---|
template_body |
string |
Markdown template content. |
users |
UserRenderContext[] |
Per-user rendering contexts. |
UserRenderContext
Section titled “UserRenderContext”| Field | Type | Description |
|---|---|---|
user_id |
string |
Recipient user ID. |
variables |
map<string, string> |
Template variable values for this user. |
Response: RenderBatchResponse (stream)
Section titled “Response: RenderBatchResponse (stream)”Each streamed response contains one rendered result:
| Field | Type | Description |
|---|---|---|
user_id |
string |
The user this result is for. |
message |
Message |
The rendered message content. |
error |
string |
Error message if rendering failed for this user. |
Architecture Note
Section titled “Architecture Note”The render pipeline is designed for future migration to a Rust-based renderer (pidgr-renderer). The current Go implementation handles Markdown processing in-process, but the gRPC interface is structured for cross-service streaming when the Rust renderer is deployed.