Перейти до контенту

rombik API

HTTP API для блок-схем і структограм зі скриптів. Автентифікація — заголовок X-API-Key.

Довідка API

API, CLI і MCP входять у тариф Pro — без окремих «API-тарифів». Тарифи

curl https://rombik.app/api/v1/render \
  -H "X-API-Key: $ROMBIK_API_KEY" \
  -F [email protected] -F format=svg \
  -o grade.svg
Блок-схема функції grade за ДСТУ 19.701-90, згенерована з коду

Що вміє /render

Одна ручка, але налаштувань більше, ніж здається. Усе нижче — параметри того самого виклику.

Усі параметри — у довідці
  • 11 мов

    python, cpp, c, java, csharp, pascal, javascript, typescript, php, go, rust — плюс rombik: власне дерево схеми (astJSON) для будь-якої іншої мови.

  • 12 форматів + анімація й JSON

    docx, visio, drawio, typst, excalidraw, svg, png, jpeg, webp, gif, gif_anim, pdf, html, json — docx і visio виходять рідними фігурами, які редагуються далі.

  • Картинки й веб-сторінка

    jpeg — растр на білому тлі; webp — без втрат і легший за png; gif — статичний, 256 кольорів; gif_anim — схема малюється блок за блоком, у циклі; html — схема й код із номерами рядків однією сторінкою. З json: true растр приходить у base64, як png, а html — текстом, як svg.

  • Два види діаграм

    mode: "flow" — блок-схема за стандартом; mode: "nsd" — структограма Насі-Шнайдермана.

  • Джерело — код або посилання

    замість code передай url: raw.githubusercontent.com, gist, gitlab, bitbucket, codeberg (посилання виду github.com/…/blob/… нормалізується саме).

  • Пакет до 100 джерел

    /render/batch збирає багатосторінковий PDF або zip; у відповіді заголовки X-Rombik-Rendered і X-Rombik-Failed.

  • Тонке налаштування

    об’єкт options: локаль, свої слова на гілках «так/ні», термінатори, нумерація рисунків, масштаб, шрифт. Розбиття високих схем конекторами А/Б — split.

CLI rombik

Працюй з API прямо з термінала — render, batch, тариф, оплата. Одна команда ставить бінарник і сама визначає систему.

curl -fsSL https://rombik.app/install.sh | sh
Встановити вручну

Прямі посилання на бінарники — якщо команда вище не підходить.

rombik auth                                   # вхід через браузер (або: rombik auth rk_…)
rombik render main.py -f pdf -o chart.pdf
rombik render app.ts -f drawio -o app.drawio
rombik render main.go --structogram -f svg    # структограма Насі-Шнайдермана
cat prog.cpp | rombik render - --lang cpp -f png -o prog.png
rombik render --url https://raw.githubusercontent.com/…/main.py -f svg
rombik render main.py -f pdf --link           # ще й тимчасове посилання на результат
rombik batch src/*.py -f pdf -o project.pdf   # багато джерел за раз
rombik me                                     # тариф і ліміт місяця
rombik products                               # каталог тарифів
rombik topup 3                                # лінк на оплату тарифу з id 3
rombik mcp                                    # MCP-сервер по stdio
rombik version --json                         # {version, latest, updateAvailable}
rombik update                                 # оновити до найновішої
rombik logout                                 # прибрати збережений ключ

Ключ ніколи не передається аргументом — лише через змінну ROMBIK_API_KEY або конфіг після «rombik auth». Базова адреса API — ROMBIK_API_URL. Повний перелік прапорців: «rombik render -h».

MCP-сервер для агентів

Агент дістає інструменти render_flowchart, balance, products, topup_link. Remote-сервер працює без жодної установки: встав адресу в MCP-клієнт (конектори ChatGPT, Claude, Cursor…), і вхід відкриється в браузері сам (OAuth) — ключі вводити не треба. Доступ відкликається в акаунті.

Адреса remote-сервера
https://rombik.app/mcp
claude mcp add --transport http rombik https://rombik.app/mcp

Скіл для AI-агентів

Готовий скіл у відкритому форматі Agent Skills — Claude Code, Codex, GitHub Copilot, Cursor, Gemini CLI та інші.

npx skills add OlexiyOdarchuk/rombik-skill

Вхід через rombik

Твій застосунок може попросити користувача увійти акаунтом rombik. Він бачить сторінку згоди з назвою застосунку, натискає «Дозволити» — і ти отримуєш ключ до API, яким рендериш схеми за його тарифом. Це звичайний OAuth 2.0 (authorization code + PKCE) з надбудовою OpenID Connect, тож підходить будь-яка стандартна бібліотека.

Бібліотеки з підтримкою discovery налаштуються самі — дай їм адреси метаданих:

Метадані OAuth
https://rombik.app/.well-known/oauth-authorization-server
Метадані OpenID Connect
https://rombik.app/.well-known/openid-configuration
  1. Описати застосунок

    Поклади на своєму домені JSON-документ з метаданими: client_id (адреса цього ж документа), client_name і redirect_uris. Його https-адреса і є client_id — реєструвати нічого не треба, секрет не потрібен, захищає PKCE. Клієнта із секретом для серверного застосунку видає адміністрація rombik на запит.

  2. Отримати згоду користувача

    Відкрий йому сторінку /oauth/authorize. Він бачить назву й домен твого застосунку, натискає «Дозволити» — і повертається на твою адресу з одноразовим кодом. Код живе 10 хвилин.

  3. Обміняти код на токен

    Виклик /oauth/token із кодом і перевіркою PKCE віддає access_token. Це звичайний ключ API rombik — далі жодної окремої логіки, працюють усі ендпоінти. Область openid додає в ту саму відповідь id_token з ідентичністю.

  4. Працювати від імені користувача

    Хто це — /oauth/userinfo, ключі для перевірки підпису id_token — /oauth/jwks. Далі звичайний /render — за тарифом користувача.

Що важливо знати

  • Тариф користувача

    Рендер іде за тарифом користувача, який дав згоду (потрібен Pro), а не за твоїм.

  • Токен без терміну дії

    Користувач будь-коли відкликає доступ у своєму акаунті — ключ зникає, виклики починають повертати 401.

  • PKCE обов’язковий

    S256 — для клієнтів без секрета; метод plain не приймається.

  • Вимоги до метаданих

    Документ доступний по https без редиректів, а client_id у ньому збігається з його адресою. Адреси повернення — лише https (http — тільки для localhost).

  • Назва застосунку

    Назву зі сторінки згоди користувач побачить у списку доступів свого акаунта.

Параметри й «спробувати» — у довідці API

Посилання, рідний формат і ціна

Переглянути

Ключ створюється за хвилину

Він живе в акаунті: там же видно ліміт, історію й відкликання доступу.