Docs: полная схема CREATE + ошибки + хронология сессии 6
This commit is contained in:
+34
-2
@@ -65,8 +65,32 @@ curl -s --max-time 10 -H "Authorization: Bearer $TOKEN" -H "User-Agent: $UA" $UR
|
||||
| GET | `/services/{svcId}` | Детали + операции |
|
||||
| GET | `/instances` | Инстансы пользователя |
|
||||
| GET | `/instanceOperations/default/{svcOperationId}` | **Полные параметры** (valueList, dataDescriptor, isModifiable) |
|
||||
| POST | `/instances` | Создать инстанс |
|
||||
| POST | `/instanceOperations` | Запустить операцию |
|
||||
## Эндпоинты (полный список)
|
||||
|
||||
| Метод | Путь | Назначение |
|
||||
|-------|------|------------|
|
||||
| GET | `/services` | Список сервисов |
|
||||
| GET | `/services/{svcId}` | Детали + операции |
|
||||
| GET | `/instances?pageSize=200&page=N` | Инстансы (пагинация!) |
|
||||
| GET | `/instanceOperations/default/{svcOperationId}` | **Полные параметры** (valueList, dataDescriptor, isModifiable) |
|
||||
| POST | `/instances` | Создать инстанс → Location: instanceUid |
|
||||
| POST | `/instanceOperations` | Создать операцию → Location: opUid |
|
||||
| POST | `/instanceOperationCfsParams` | Задать параметр операции |
|
||||
| POST | `/instanceOperations/{opUid}/run` | **Запустить операцию** (обязательно!) |
|
||||
|
||||
## Поток CREATE
|
||||
|
||||
См. подробный документ: [`api-create-flow.md`](api-create-flow.md)
|
||||
|
||||
```
|
||||
1. GET /services/{svcId} → svcOperationId для "create"
|
||||
2. GET /instanceOperations/default/{svcOpId} → параметры
|
||||
3. POST /instances → instanceUid (из Location)
|
||||
4. POST /instanceOperations → opUid (из Location)
|
||||
5. POST /instanceOperationCfsParams (×N) → задать параметры
|
||||
6. POST /instanceOperations/{opUid}/run → ЗАПУСК
|
||||
7. GET /instances?pageSize=200 (поллинг) → ждать running
|
||||
```
|
||||
|
||||
## ⚠️ Важно
|
||||
|
||||
@@ -74,3 +98,11 @@ curl -s --max-time 10 -H "Authorization: Bearer $TOKEN" -H "User-Agent: $UA" $UR
|
||||
- `/serviceOperation/{id}` даёт **базовые** параметры (без valueList и dataDescriptor) — НЕ использовать
|
||||
- Все параметры `--max-time 10` обязательны — чтобы не висло
|
||||
- Токен **без** переносов строк: `tr -d '\n'`
|
||||
- **UUID в Location — uppercase** (не lowercase как в БД)
|
||||
- **displayName должен быть уникальным** — добавлять timestamp
|
||||
- **`/run` обязателен!** Без него операция не стартует (auto-start только в UI)
|
||||
- **Array параметры — JSON-строка:** `"[\"test\"]"`, не голый массив
|
||||
- **Все paramValue — строки:** даже числа и булевы
|
||||
- **Пустое тело = `{}`:** никогда не слать `null` (DDoS-Guard режет)
|
||||
- **Пагинация:** инстансов может быть >200, проверять page=1, page=2...
|
||||
- **DDoS-Guard:** с локальной машины может не работать, curl через ВМ 213 (`ssh naeel@5.172.178.213`)
|
||||
|
||||
Reference in New Issue
Block a user