docs: rewrite JsonRpcBundle docs, add SDK docs, move them under docs/api
uk/docs/api/json-rpc-bundle/functionality/cli.md
новий файл +29
−0
1
+
# Виклик з консолі
2
+
3
+
Команда `ufo:rpc:process` виконує RPC-запит без HTTP: зручно для cron, скриптів, налагодження. Підтримуються одиночні й batch-запити, перевірка токена та сама, що й для HTTP.
4
+
5
+
```bash
6
+
php bin/console ufo:rpc:process '{"jsonrpc": "2.0", "id": 1, "method": "ping"}' --ufo-rpc-token=<token>
7
+
```
8
+
9
+
## Аргументи й опції
10
+
11
+
| Аргумент / опція | Опис |
12
+
| --- | --- |
13
+
| `json` | JSON запиту; `-` — прочитати зі stdin; `@env` — зі змінної `UFO_RPC_REQUEST` |
14
+
| `--<token_name>` | Токен. Назва опції — `security.token_name` у нижньому регістрі (`Ufo-RPC-Token` → `--ufo-rpc-token`); обов'язкова при `protected_api: true` |
15
+
| `--api-group` | [Група API](/docs/api/json-rpc-bundle/functionality/groups), за замовчуванням `general` |
16
+
| `--ver` | [Версія API](/docs/api/json-rpc-bundle/functionality/versions), за замовчуванням `v1` |
17
+
18
+
Якщо опцію токена не передано, він береться зі змінної оточення `UFO_RPC_TOKEN`.
19
+
20
+
:::tip subtitle="Не світіть токен і дані"
21
+
Аргументи командного рядка видно в списку процесів. Передавайте запит через stdin, а токен — через змінну оточення:
22
+
23
+
```bash
24
+
echo '{"jsonrpc":"2.0","id":1,"method":"Report.build","params":{"month":"2026-09"}}' \
25
+
| UFO_RPC_TOKEN=<token> php bin/console ufo:rpc:process - --api-group=internal
26
+
```
27
+
:::
28
+
29
+
Відповідь виводиться в stdout у форматі JSON-RPC. Цю ж команду бандл використовує для дочірніх процесів [batch](/docs/api/json-rpc-bundle/functionality/batch) і від'єднаних [notifications](/docs/api/json-rpc-bundle/functionality/notifications).