Files
autotest/HISTORY/2026-07-24-har-analysis.md
T

63 lines
2.1 KiB
Markdown

# 2026-07-24 — HAR-анализ: точный поток API
## Источник
- `development/dummycreate.har` — запись HTTP-запросов Nubes UI при создании dummy
- `development/dummymodify.har` — запись при модификации dummy
## CREATE (эталонный поток)
```
1. POST /instances
{"serviceId":1, "displayName":"dummy-11255555", "descr":""}
→ 201, Location: ./{instanceUid}
2. POST /instanceOperations
{"instanceUid":"{uid}", "operation":"create"}
→ 201, Location: ./{opUid}
3. POST /instanceOperationCfsParams (12 раз, все параметры)
{"instanceOperationUid":"{opUid}", "svcOperationCfsParamId":242, "paramValue":"dummy"}
{"instanceOperationUid":"{opUid}", "svcOperationCfsParamId":198, "paramValue":"0"}
... (все 12, включая пустые строки)
→ 201 каждый
4. НЕТ /validate, НЕТ /run — операция запускается автоматически после params
```
## MODIFY (эталонный поток)
```
1. POST /instanceOperations
{"instanceUid":"{uid}", "operation":"modify"}
→ 201, Location: ./{opUid}
2. POST /instanceOperationCfsParams (по одному на параметр)
→ 201 каждый
3. GET /instanceOperations/{opUid}/validate-cfs
→ 204
4. POST /instanceOperations/{opUid}/run?
→ 201
5. Поллинг: GET /instances/{uid}
→ ждём operationIsInProgress=false
```
## Ключевые отличия от моих догадок
| Моя версия | Реальность (HAR) |
|-----------|-----------------|
| `descr:"autotest"` | `descr:""` |
| `/instanceOperations/{uid}/params` | `/instanceOperationCfsParams` |
| Фильтр пустых параметров | Все 12, включая пустые |
| `/validate` + `/run` (create) | НЕТ — авто-запуск |
| `/validate` POST | GET `/validate-cfs` |
| `/run` POST | POST `/run?` |
## Версии исправлений
- v1.0.28: `/instanceOperationCfsParams` (правильный endpoint)
- v1.0.30: `descr:""`, все параметры, без validate/run (как в HAR)