---
title: "Render up to 20 diagrams in one call"
method: POST
path: "/api/render/batch"
tags: ["render"]
---

# Render up to 20 diagrams in one call

`POST /api/render/batch`

## Request

- Base URL: `https://uml.singsk.com`
- URL: `https://uml.singsk.com/api/render/batch`
- Auth: none declared

Each item is validated then rendered; item-level failures do not fail the request (partial success). svg items return the SVG text, png items return png_base64. Every item echoes its id and carries the share url and ETag.

## Request body

- BatchRequest
  - `diagrams` object[], required
    - `id` string
    - `text` string, required
    - `format` 'svg' | 'png'

## Response `200`

Per-item results

- BatchResponse
  - `ok` boolean: true only when every item succeeded
  - `count` integer
  - `succeeded` integer
  - `failed` integer
  - `items` object[]
    - `id` string
    - `ok` boolean
    - `format` string
    - `content_type` string
    - `diagram_type` string
    - `etag` string
    - `url` string
    - `svg` string
    - `png_base64` string
    - `error` object

## Other responses

- `400`: Malformed body or too many items
- `429`: Rate limited

---

[API](https://skmtc.dev/singsk/apis/uml-singsk-com-plantuml-service-api.md) · [All operations](https://skmtc.dev/singsk/apis/uml-singsk-com-plantuml-service-api/llms.txt) · [OpenAPI document](https://skmtc.dev/singsk/apis/uml-singsk-com-plantuml-service-api/revisions/44cfa55d273f?raw)
