docs: убрать типографское тире и невидимый Unicode из текстов API
Made-with: Cursor
This commit is contained in:
1 parent
a754e1d9f2
commit
fbe9cd3f3c
4 files changed
+50
-50
No files matched your search
+23
-23
@@ -2275,15 +2275,15 @@ data-styled.g138[id="sc-iJQrDi"]{content:"gtHWGb,"}/*!sc*/
|
||||
-231.5279,231.248 -231.873,231.248 -0.3451,0 -104.688,
|
||||
-104.0616 -231.873,-231.248 z
|
||||
" fill="currentColor"></path></g></svg></div></div><div class="sc-juTflS gfWNtA api-content"><div class="sc-eDDNvO eTiIZG"><div class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG api-info"><h1 class="sc-fsQipe sc-crPCXn ePkAIL bSStQp">EvoBGP Control Plane API<!-- --> <span>(<!-- -->0.1.0<!-- -->)</span></h1><p>Download OpenAPI specification<!-- -->:</p><div class="sc-iKGpAq sc-cCYyou dXXcln dHaogz"><div class="sc-gHbYXW gUaytm"><div class="sc-etAVuf cNLDQk"> <!-- --> <span class="sc-bqWVmJ dfuuzt">License:<!-- --> <!-- -->LicenseRef-Proprietary</span> </div></div></div><div data-role="redoc-summary" html="" class="sc-iKGpAq sc-cCYyou dXXcln dHaogz"></div><div data-role="redoc-description" html="<p>REST API управления префиксами, модулями ingest, ревизиями конфигурации BIRD и задачами (async jobs).</p>
|
||||
<p><strong>Соглашения:</strong> префикс <code>/v1</code>; идентификаторы — UUID v7 или ULID (строки); время — ISO 8601 UTC.
|
||||
Ошибки — <code>application/problem+json</code> (<a href="https://www.rfc-editor.org/rfc/rfc9457">RFC 9457</a>).
|
||||
Пагинация списков — <code>cursor</code> + <code>limit</code>; ответ содержит <code>items</code>, <code>next_cursor</code>, <code>has_more</code>.</p>
|
||||
<p><strong>Соглашения:</strong> префикс <code>/v1</code>; идентификаторы - UUID v7 или ULID (строки); время - ISO 8601 UTC.
|
||||
Ошибки - <code>application/problem+json</code> (<a href="https://www.rfc-editor.org/rfc/rfc9457">RFC 9457</a>).
|
||||
Пагинация списков - <code>cursor</code> + <code>limit</code>; ответ содержит <code>items</code>, <code>next_cursor</code>, <code>has_more</code>.</p>
|
||||
<p><strong>Роли</strong> (матрица доступа): <code>viewer</code>, <code>editor</code>, <code>operator</code>, <code>node</code>. Нода использует отдельные пути и ключ с ролью <code>node</code>.</p>
|
||||
<p>Заголовок <code>X-Tenant-Id</code> допускается только для супер-ролей (явный tenant); иначе tenant берётся из API-ключа.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln dHaogz"><p>REST API управления префиксами, модулями ingest, ревизиями конфигурации BIRD и задачами (async jobs).</p>
|
||||
<p><strong>Соглашения:</strong> префикс <code>/v1</code>; идентификаторы — UUID v7 или ULID (строки); время — ISO 8601 UTC.
|
||||
Ошибки — <code>application/problem+json</code> (<a href="https://www.rfc-editor.org/rfc/rfc9457">RFC 9457</a>).
|
||||
Пагинация списков — <code>cursor</code> + <code>limit</code>; ответ содержит <code>items</code>, <code>next_cursor</code>, <code>has_more</code>.</p>
|
||||
<p><strong>Соглашения:</strong> префикс <code>/v1</code>; идентификаторы - UUID v7 или ULID (строки); время - ISO 8601 UTC.
|
||||
Ошибки - <code>application/problem+json</code> (<a href="https://www.rfc-editor.org/rfc/rfc9457">RFC 9457</a>).
|
||||
Пагинация списков - <code>cursor</code> + <code>limit</code>; ответ содержит <code>items</code>, <code>next_cursor</code>, <code>has_more</code>.</p>
|
||||
<p><strong>Роли</strong> (матрица доступа): <code>viewer</code>, <code>editor</code>, <code>operator</code>, <code>node</code>. Нода использует отдельные пути и ключ с ролью <code>node</code>.</p>
|
||||
<p>Заголовок <code>X-Tenant-Id</code> допускается только для супер-ролей (явный tenant); иначе tenant берётся из API-ключа.</p>
|
||||
</div><div class="sc-FeKFA iKRmMF"><a href="./evobgp-api-sketches.md">Черновик и контекст API</a></div></div></div></div><div id="tag/System" data-section-id="tag/System" class="sc-eDDNvO eTiIZG"><div class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG"><h2 class="sc-qRumy bcNKdh"><a class="sc-csCMJq jSIqAu" href="#tag/System" aria-label="tag/System"></a>System</h2></div></div><div class="sc-hLseeT eiTXyS"><div class="sc-iKGpAq sc-cCYyou dXXcln dHaogz redoc-markdown " html="<p>Liveness, readiness и метаданные сборки. Обычно без чувствительных данных; доступ может быть шире.</p>
|
||||
@@ -2314,8 +2314,8 @@ data-styled.g138[id="sc-iJQrDi"]{content:"gtHWGb,"}/*!sc*/
|
||||
" class="sc-iKGpAq sc-cCYyou sc-cjERFZ dXXcln fTBBlJ dkmSdy"><p>Ошибка (см. тело Problem).</p>
|
||||
</div></button></div></div></div><div class="sc-jTrPJt sc-gLDzao dVngAA fYLqku"><div class="sc-fYzRkH dHdMVa"><button class="sc-jYvNnh iWrBta"><span type="get" class="sc-eGFuAY kCsPwr http-verb get">get</span><span class="sc-GJyyy dkiPkt">/v1/version</span><svg class="sc-fbJfz ivEQut" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-fnxdBX dplsyJ"><div class="sc-llcuoK cNCbuV"><div html="<p>Базовый URL инсталляции (замените на свой)</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>Базовый URL инсталляции (замените на свой)</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-jnsZEx eobUac"><span>https://api.example.com</span>/v1/version</div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Response samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab_R_177gq_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_177gq_0" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="tab_R_177gq_1" aria-selected="false" aria-disabled="false" aria-controls="panel_R_177gq_1" data-rttab="true">default</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_177gq_0" aria-labelledby="tab_R_177gq_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"api_version"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"git_sha"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"build_time"</span>: <span class="token string">"2019-08-24T14:15:22Z"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_177gq_1" aria-labelledby="tab_R_177gq_1"></div></div></div></div></div></div><div id="tag/Modules" data-section-id="tag/Modules" class="sc-eDDNvO eTiIZG"><div class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG"><h2 class="sc-qRumy bcNKdh"><a class="sc-csCMJq jSIqAu" href="#tag/Modules" aria-label="tag/Modules"></a>Modules</h2></div></div><div class="sc-hLseeT eiTXyS"><div class="sc-iKGpAq sc-cCYyou dXXcln dHaogz redoc-markdown " html="<p>Экземпляры модулей префиксов (AS, CDN, домены, статические IP-диапазоны) и вложенные записи. Чтение — viewer+; изменение — editor+.</p>
|
||||
"><p>Экземпляры модулей префиксов (AS, CDN, домены, статические IP-диапазоны) и вложенные записи. Чтение — viewer+; изменение — editor+.</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-jnsZEx eobUac"><span>https://api.example.com</span>/v1/version</div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Response samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab_R_177gq_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_177gq_0" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="tab_R_177gq_1" aria-selected="false" aria-disabled="false" aria-controls="panel_R_177gq_1" data-rttab="true">default</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_177gq_0" aria-labelledby="tab_R_177gq_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"api_version"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"git_sha"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"build_time"</span>: <span class="token string">"2019-08-24T14:15:22Z"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_177gq_1" aria-labelledby="tab_R_177gq_1"></div></div></div></div></div></div><div id="tag/Modules" data-section-id="tag/Modules" class="sc-eDDNvO eTiIZG"><div class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG"><h2 class="sc-qRumy bcNKdh"><a class="sc-csCMJq jSIqAu" href="#tag/Modules" aria-label="tag/Modules"></a>Modules</h2></div></div><div class="sc-hLseeT eiTXyS"><div class="sc-iKGpAq sc-cCYyou dXXcln dHaogz redoc-markdown " html="<p>Экземпляры модулей префиксов (AS, CDN, домены, статические IP-диапазоны) и вложенные записи. Чтение - viewer+; изменение - editor+.</p>
|
||||
"><p>Экземпляры модулей префиксов (AS, CDN, домены, статические IP-диапазоны) и вложенные записи. Чтение - viewer+; изменение - editor+.</p>
|
||||
</div></div></div><div id="tag/Modules/operation/listModules" data-section-id="tag/Modules/operation/listModules" class="sc-eDDNvO iUTsUN"><div data-section-id="operation/listModules" id="operation/listModules" class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG"><h2 class="sc-qRumy bcNKdh"><a class="sc-csCMJq jSIqAu" href="#tag/Modules/operation/listModules" aria-label="tag/Modules/operation/listModules"></a>Список модулей<!-- --> </h2><div class="sc-iERabE dUdgLx"><div html="<p>Модули tenant с опциональными фильтрами по типу и флагу <code>enabled</code>.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln dHaogz"><p>Модули tenant с опциональными фильтрами по типу и флагу <code>enabled</code>.</p>
|
||||
</div></div><div class="sc-ftWlEC pzAgN"><div class="sc-cYRmzp kuPPCO"><h5 class="sc-irTswZ sc-jOQpHb fA-dGxt qtYpT">Authorizations:</h5><svg class="sc-fbJfz eiOVYa" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jTsRVM gZngKQ"><span class="sc-dskThK ddMcul"><span class="sc-hNeXkj cLOXvd"><i>bearerAuth</i></span></span></div></div><div><h5 class="sc-irTswZ fA-dGxt">query<!-- --> Parameters</h5><table class="sc-hIqOWV dybric"><tbody><tr class=""><td kind="field" title="cursor" class="sc-hAtEya sc-fGFwA-d kddqHa eIujjv"><span class="sc-ieZDjf bEKmDE"></span><span class="property-name">cursor</span></td><td class="sc-blLsxE bmauLr"><div><div><span class="sc-gUrTyB sc-kZGvTq bPAaet UMvzF"></span><span class="sc-gUrTyB sc-iMfspz bPAaet fEQrHJ">string</span></div> <div><div html="<p>Непрозрачный курсор из предыдущего ответа.</p>
|
||||
@@ -2333,9 +2333,9 @@ data-styled.g138[id="sc-iJQrDi"]{content:"gtHWGb,"}/*!sc*/
|
||||
</div></button></div></div></div><div class="sc-jTrPJt sc-gLDzao dVngAA fYLqku"><div class="sc-fYzRkH dHdMVa"><button class="sc-jYvNnh iWrBta"><span type="get" class="sc-eGFuAY kCsPwr http-verb get">get</span><span class="sc-GJyyy dkiPkt">/v1/modules</span><svg class="sc-fbJfz ivEQut" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-fnxdBX dplsyJ"><div class="sc-llcuoK cNCbuV"><div html="<p>Базовый URL инсталляции (замените на свой)</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>Базовый URL инсталляции (замените на свой)</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-jnsZEx eobUac"><span>https://api.example.com</span>/v1/modules</div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Response samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab_R_9p1ha_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_9p1ha_0" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="tab_R_9p1ha_1" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9p1ha_1" data-rttab="true">401</li><li class="tab-error" role="tab" id="tab_R_9p1ha_2" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9p1ha_2" data-rttab="true">default</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_9p1ha_0" aria-labelledby="tab_R_9p1ha_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"items"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"id"</span>: <span class="token string">"01JQXYZABCDEFGHIJKLMNOPQRS"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"type"</span>: <span class="token string">"AS_PREFIXES"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"name"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"enabled"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"priority"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"doh_profile_id"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"refresh_interval_sec"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"cron_expr"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"default_community_id"</span>: <span class="token string">"string"</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"next_cursor"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"has_more"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_9p1ha_1" aria-labelledby="tab_R_9p1ha_1"></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_9p1ha_2" aria-labelledby="tab_R_9p1ha_2"></div></div></div></div></div></div><div id="tag/Modules/operation/createModule" data-section-id="tag/Modules/operation/createModule" class="sc-eDDNvO iUTsUN"><div data-section-id="operation/createModule" id="operation/createModule" class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG"><h2 class="sc-qRumy bcNKdh"><a class="sc-csCMJq jSIqAu" href="#tag/Modules/operation/createModule" aria-label="tag/Modules/operation/createModule"></a>Создать модуль<!-- --> </h2><div class="sc-iERabE dUdgLx"><div html="<Line truncated
|
||||
<code>module_id</code> в других путях — идентификатор экземпляра, не имя типа.</p>
|
||||
<code>module_id</code> в других путях - идентификатор экземпляра, не имя типа.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln dHaogz"><p>Создаёт экземпляр модуля. Поле <code>type</code> задаёт вид (<code>AS_PREFIXES</code>, <code>CDN_CIDRS</code>, <code>DOMAINS</code>, <code>IP_RANGES</code>).
|
||||
<code>module_id</code> в других путях — идентификатор экземпляра, не имя типа.</p>
|
||||
<code>module_id</code> в других путях - идентификатор экземпляра, не имя типа.</p>
|
||||
</div></div><div class="sc-ftWlEC pzAgN"><div class="sc-cYRmzp kuPPCO"><h5 class="sc-irTswZ sc-jOQpHb fA-dGxt qtYpT">Authorizations:</h5><svg class="sc-fbJfz eiOVYa" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jTsRVM gZngKQ"><span class="sc-dskThK ddMcul"><span class="sc-hNeXkj cLOXvd"><i>bearerAuth</i></span></span></div></div><div><h5 class="sc-irTswZ fA-dGxt">header<!-- --> Parameters</h5><table class="sc-hIqOWV dybric"><tbody><tr class=""><td kind="field" title="X-Tenant-Id" class="sc-hAtEya sc-fGFwA-d kddqHa eIujjv"><span class="sc-ieZDjf bEKmDE"></span><span class="property-name">X-Tenant-Id</span></td><td class="sc-blLsxE bmauLr"><div><div><span class="sc-gUrTyB sc-kZGvTq bPAaet UMvzF"></span><span class="sc-gUrTyB sc-iMfspz bPAaet fEQrHJ">string</span><span class="sc-gUrTyB sc-jfSnVt bPAaet kEFcTG"> (<!-- -->ResourceId<!-- -->) </span><span class="sc-gUrTyB sc-ejdXBF bPAaet gTwxVV">^[0-9A-Za-z_-]{20,36}$</span></div> <span class="sc-gUrTyB bPAaet"> <!-- -->Examples<!-- -->: </span><span class="sc-gUrTyB sc-ldFCYc bPAaet eShQxX">01JQXYZABCDEFGHIJKLMNOPQRS</span> <div><div html="<p>Явный tenant (только супер-роли). Без заголовка tenant определяется по ключу.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>Явный tenant (только супер-роли). Без заголовка tenant определяется по ключу.</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="Idempotency-Key" class="sc-hAtEya sc-fGFwA-d kddqHa eIujjv"><span class="sc-ieZDjf bEKmDE"></span><span class="property-name">Idempotency-Key</span></td><td class="sc-blLsxE bmauLr"><div><div><span class="sc-gUrTyB sc-kZGvTq bPAaet UMvzF"></span><span class="sc-gUrTyB sc-iMfspz bPAaet fEQrHJ">string</span><span> <span class="sc-gUrTyB sc-cmEaii bPAaet iWTprB"> <!-- --><= 256 characters<!-- --> </span></span></div> <div><div html="<p>Идемпотентность мутаций. Для <code>POST</code> apply и части refresh рекомендуется или обязателен по политике продукта.</p>
|
||||
@@ -2388,8 +2388,8 @@ data-styled.g138[id="sc-iJQrDi"]{content:"gtHWGb,"}/*!sc*/
|
||||
" class="sc-iKGpAq sc-cCYyou sc-cjERFZ dXXcln fTBBlJ dkmSdy"><p>Ошибка (см. тело Problem).</p>
|
||||
</div></button></div></div></div><div class="sc-jTrPJt sc-gLDzao dVngAA fYLqku"><div class="sc-fYzRkH dHdMVa"><button class="sc-jYvNnh iWrBta"><span type="patch" class="sc-eGFuAY kKOcuP http-verb patch">patch</span><span class="sc-GJyyy dkiPkt">/v1/modules/{module_id}</span><svg class="sc-fbJfz ivEQut" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-fnxdBX dplsyJ"><div class="sc-llcuoK cNCbuV"><div html="<p>Базовый URL инсталляции (замените на свой)</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>Базовый URL инсталляции (замените на свой)</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-jnsZEx eobUac"><span>https://api.example.com</span>/v1/modules/{module_id}</div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Request samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="tab_R_994ha_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_994ha_0" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_994ha_0" aria-labelledby="tab_R_994ha_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"name"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"enabled"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"priority"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"doh_profile_id"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"refresh_interval_sec"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"cron_expr"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"default_community_id"</span>: <span class="token string">"string"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Response samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab_R_9p4ha_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_9p4ha_0" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="tab_R_9p4ha_1" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9p4ha_1" data-rttab="true">401</li><li class="tab-error" role="tab" id="tab_R_9p4ha_2" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9p4ha_2" data-rttab="true">403</li><li class="tab-error" role="tab" id="tab_R_9p4ha_3" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9p4ha_3" data-rttab="true">404</li><li class="tab-error" role="tab" id="tab_R_9p4ha_4" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9p4ha_4" data-rttab="true">422</li><li class="tab-error" role="tab" id="tab_R_9p4ha_5" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9p4ha_5" data-rttab="true">default</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_9p4ha_0" aria-labelledby="tab_R_9p4ha_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"id"</span>: <span class="token string">"01JQXYZABCDEFGHIJKLMNOPQRS"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"type"</span>: <span class="token string">"AS_PREFIXES"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"name"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token strLine truncated
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln dHaogz"><p>Мягкое удаление или перевод в <code>enabled=false</code> — конкретное поведение задаётся реализацией.</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-jnsZEx eobUac"><span>https://api.example.com</span>/v1/modules/{module_id}</div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Request samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="tab_R_994ha_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_994ha_0" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_994ha_0" aria-labelledby="tab_R_994ha_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"name"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"enabled"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"priority"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"doh_profile_id"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"refresh_interval_sec"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"cron_expr"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"default_community_id"</span>: <span class="token string">"string"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Response samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab_R_9p4ha_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_9p4ha_0" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="tab_R_9p4ha_1" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9p4ha_1" data-rttab="true">401</li><li class="tab-error" role="tab" id="tab_R_9p4ha_2" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9p4ha_2" data-rttab="true">403</li><li class="tab-error" role="tab" id="tab_R_9p4ha_3" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9p4ha_3" data-rttab="true">404</li><li class="tab-error" role="tab" id="tab_R_9p4ha_4" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9p4ha_4" data-rttab="true">422</li><li class="tab-error" role="tab" id="tab_R_9p4ha_5" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9p4ha_5" data-rttab="true">default</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_9p4ha_0" aria-labelledby="tab_R_9p4ha_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"id"</span>: <span class="token string">"01JQXYZABCDEFGHIJKLMNOPQRS"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"type"</span>: <span class="token string">"AS_PREFIXES"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"name"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token strLine truncated
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln dHaogz"><p>Мягкое удаление или перевод в <code>enabled=false</code> - конкретное поведение задаётся реализацией.</p>
|
||||
</div></div><div class="sc-ftWlEC pzAgN"><div class="sc-cYRmzp kuPPCO"><h5 class="sc-irTswZ sc-jOQpHb fA-dGxt qtYpT">Authorizations:</h5><svg class="sc-fbJfz eiOVYa" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jTsRVM gZngKQ"><span class="sc-dskThK ddMcul"><span class="sc-hNeXkj cLOXvd"><i>bearerAuth</i></span></span></div></div><div><h5 class="sc-irTswZ fA-dGxt">path<!-- --> Parameters</h5><table class="sc-hIqOWV dybric"><tbody><tr class="last "><td kind="field" title="module_id" class="sc-hAtEya sc-fGFwA-d kddqHa eIujjv"><span class="sc-ieZDjf bEKmDE"></span><span class="property-name">module_id</span><div class="sc-gUrTyB sc-eKYjSU bPAaet boAHLn">required</div></td><td class="sc-blLsxE bmauLr"><div><div><span class="sc-gUrTyB sc-kZGvTq bPAaet UMvzF"></span><span class="sc-gUrTyB sc-iMfspz bPAaet fEQrHJ">string</span><span class="sc-gUrTyB sc-jfSnVt bPAaet kEFcTG"> (<!-- -->ResourceId<!-- -->) </span><span class="sc-gUrTyB sc-ejdXBF bPAaet gTwxVV">^[0-9A-Za-z_-]{20,36}$</span></div> <span class="sc-gUrTyB bPAaet"> <!-- -->Examples<!-- -->: </span><span class="sc-gUrTyB sc-ldFCYc bPAaet eShQxX">01JQXYZABCDEFGHIJKLMNOPQRS</span> <div><div html="<p>UUID v7 или ULID.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>UUID v7 или ULID.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h5 class="sc-irTswZ fA-dGxt">header<!-- --> Parameters</h5><table class="sc-hIqOWV dybric"><tbody><tr class=""><td kind="field" title="X-Tenant-Id" class="sc-hAtEya sc-fGFwA-d kddqHa eIujjv"><span class="sc-ieZDjf bEKmDE"></span><span class="property-name">X-Tenant-Id</span></td><td class="sc-blLsxE bmauLr"><div><div><span class="sc-gUrTyB sc-kZGvTq bPAaet UMvzF"></span><span class="sc-gUrTyB sc-iMfspz bPAaet fEQrHJ">string</span><span class="sc-gUrTyB sc-jfSnVt bPAaet kEFcTG"> (<!-- -->ResourceId<!-- -->) </span><span class="sc-gUrTyB sc-ejdXBF bPAaet gTwxVV">^[0-9A-Za-z_-]{20,36}$</span></div> <span class="sc-gUrTyB bPAaet"> <!-- -->Examples<!-- -->: </span><span class="sc-gUrTyB sc-ldFCYc bPAaet eShQxX">01JQXYZABCDEFGHIJKLMNOPQRS</span> <div><div html="<p>Явный tenant (только супер-роли). Без заголовка tenant определяется по ключу.</p>
|
||||
@@ -2679,10 +2679,10 @@ data-styled.g138[id="sc-iJQrDi"]{content:"gtHWGb,"}/*!sc*/
|
||||
</div></button></div></div></div><div class="sc-jTrPJt sc-gLDzao dVngAA fYLqku"><div class="sc-fYzRkH dHdMVa"><button class="sc-jYvNnh iWrBta"><span type="delete" class="sc-eGFuAY kKFqOf http-verb delete">delete</span><span class="sc-GJyyy dkiPkt">/v1/modules/{module_id}/ip-range-entries/{entry_id}</span><svg class="sc-fbJfz ivEQut" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-fnxdBX dplsyJ"><div class="sc-llcuoK cNCbuV"><div html="<p>Базовый URL инсталляции (замените на свой)</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>Базовый URL инсталляции (замените на свой)</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-jnsZEx eobUac"><span>https://api.example.com</span>/v1/modules/{module_id}/ip-range-entries/{entry_id}</div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Response samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-error react-tabs__tab--selected" role="tab" id="tab_R_9plha_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_9plha_0" tabindex="0" data-rttab="true">404</li><li class="tab-error" role="tab" id="tab_R_9plha_1" aria-selected="false" aria-disabled="false" aria-controls="panel_R_9plha_1" data-rttab="true">default</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_9plha_0" aria-labelledby="tab_R_9plha_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/problem+json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"type"</span>: <span class="token string">"../dictionary"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"title"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"status"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"detail"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"instance"</span>: <span class="token string">"../dictionary"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"errors"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"field"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"pointer"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"message"</span>: <span class="token string">"string"</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_9plha_1" aria-labelledby="tab_R_9plha_1"></div></div></div></div></div></div><div id="tag/Modules/operation/postModuleRefresh" data-section-id="tag/Modules/operation/postModuleRefresh" class="sc-eDDNvO iUTsUN"><div data-section-id="operation/postModuleRefresh" id="operation/postModuleRefresh" class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG"><h2 class="sc-qRumy bcNKdh"><a class="sc-csCMJq jSIqAu" href="#tag/Modules/operation/postModuleRefresh" aria-label="tag/Modules/operation/postModuleRefresh"></a>Запустить ingest<!-- --> </h2><div class="sc-iERabE dUdgLx"><div html="<p>Запуск обновления данных модуля (CDN / DoH / AS в зависимости от типа).
|
||||
Для <code>IP_RANGES</code> данные обычно только в БД: сервер может вернуть <strong>204</strong> (no-op) или <strong>400</strong>, если refresh не поддерживается — поведение фиксируется в реализации.
|
||||
Для <code>IP_RANGES</code> данные обычно только в БД: сервер может вернуть <strong>204</strong> (no-op) или <strong>400</strong>, если refresh не поддерживается - поведение фиксируется в реализации.
|
||||
Рекомендуется передавать <code>Idempotency-Key</code>.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln dHaogz"><p>Запуск обновления данных модуля (CDN / DoH / AS в зависимости от типа).
|
||||
Для <code>IP_RANGES</code> данные обычно только в БД: сервер может вернуть <strong>204</strong> (no-op) или <strong>400</strong>, если refresh не поддерживается — поведение фиксируется в реализации.
|
||||
Для <code>IP_RANGES</code> данные обычно только в БД: сервер может вернуть <strong>204</strong> (no-op) или <strong>400</strong>, если refresh не поддерживается - поведение фиксируется в реализации.
|
||||
Рекомендуется передавать <code>Idempotency-Key</code>.</p>
|
||||
</div></div><div class="sc-ftWlEC pzAgN"><div class="sc-cYRmzp kuPPCO"><h5 class="sc-irTswZ sc-jOQpHb fA-dGxt qtYpT">Authorizations:</h5><svg class="sc-fbJfz eiOVYa" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jTsRVM gZngKQ"><span class="sc-dskThK ddMcul"><span class="sc-hNeXkj cLOXvd"><i>bearerAuth</i></span></span></div></div><div><h5 class="sc-irTswZ fA-dGxt">path<!-- --> Parameters</h5><table class="sc-hIqOWV dybric"><tbody><tr class="last "><td kind="field" title="module_id" class="sc-hAtEya sc-fGFwA-d kddqHa eIujjv"><span class="sc-ieZDjf bEKmDE"></span><span class="property-name">module_id</span><div class="sc-gUrTyB sc-eKYjSU bPAaet boAHLn">required</div></td><td class="sc-blLsxE bmauLr"><div><div><span class="sc-gUrTyB sc-kZGvTq bPAaet UMvzF"></span><span class="sc-gUrTyB sc-iMfspz bPAaet fEQrHJ">string</span><span class="sc-gUrTyB sc-jfSnVt bPAaet kEFcTG"> (<!-- -->ResourceId<!-- -->) </span><span class="sc-gUrTyB sc-ejdXBF bPAaet gTwxVV">^[0-9A-Za-z_-]{20,36}$</span></div> <span class="sc-gUrTyB bPAaet"> <!-- -->Examples<!-- -->: </span><span class="sc-gUrTyB sc-ldFCYc bPAaet eShQxX">01JQXYZABCDEFGHIJKLMNOPQRS</span> <div><div html="<p>UUID v7 или ULID.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>UUID v7 или ULID.</p>
|
||||
@@ -2718,8 +2718,8 @@ data-styled.g138[id="sc-iJQrDi"]{content:"gtHWGb,"}/*!sc*/
|
||||
" class="sc-iKGpAq sc-cCYyou sc-cjERFZ dXXcln fTBBlJ dkmSdy"><p>Ошибка (см. тело Problem).</p>
|
||||
</div></button></div></div></div><div class="sc-jTrPJt sc-gLDzao dVngAA fYLqku"><div class="sc-fYzRkH dHdMVa"><button class="sc-jYvNnh iWrBta"><span type="get" class="sc-eGFuAY kCsPwr http-verb get">get</span><span class="sc-GJyyy dkiPkt">/v1/doh-profiles</span><svg class="sc-fbJfz ivEQut" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-fnxdBX dplsyJ"><div class="sc-llcuoK cNCbuV"><div html="<p>Базовый URL инсталляции (замените на свой)</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>Базовый URL инсталляции (замените на свой)</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-jnsZEx eobUac"><span>https://api.example.com</span>/v1/doh-profiles</div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Response samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab_R_2e9hq_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_2e9hq_0" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="tab_R_2e9hq_1" aria-selected="false" aria-disabled="false" aria-controls="panel_R_2e9hq_1" data-rttab="true">default</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_2e9hq_0" aria-labelledby="tab_R_2e9hq_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"items"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"id"</span>: <span class="token string">"01JQXYZABCDEFGHIJKLMNOPQRS"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"url"</span>: <span class="token string">"</span><a href="http://example.com">http://example.com</a><span class="token string">"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"timeout_ms"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"vault_secret_ref"</span>: <span class="token string">"string"</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"next_cursor"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"has_more"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_2e9hq_1" aria-labelledby="tab_R_2e9hq_1"></div></div></div></div></div></div><div id="tag/DoH-profiles/operation/createDohProfile" data-section-id="tag/DoH-profiles/operation/createDohProfile" class="sc-eDDNvO iUTsUN"><div data-section-id="operation/createDohProfile" id="operation/createDohProfile" class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG"><h2 class="sc-qRumy bcNKdh"><a class="sc-csCMJq jSIqAu" href="#tag/DoH-profiles/operation/createDohProfile" aria-label="tag/DoH-profiles/operation/createDohProfile"></a>Создать DoH-профиль<!-- --> </h2><div class="sc-iERabE dUdgLx"><div html="<p>URL и таймауты; секрет — через vault id или отдельный вызов установки секрета.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln dHaogz"><p>URL и таймауты; секрет — через vault id или отдельный вызов установки секрета.</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-jnsZEx eobUac"><span>https://api.example.com</span>/v1/doh-profiles</div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Response samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab_R_2e9hq_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_2e9hq_0" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="tab_R_2e9hq_1" aria-selected="false" aria-disabled="false" aria-controls="panel_R_2e9hq_1" data-rttab="true">default</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_2e9hq_0" aria-labelledby="tab_R_2e9hq_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"items"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"id"</span>: <span class="token string">"01JQXYZABCDEFGHIJKLMNOPQRS"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"url"</span>: <span class="token string">"</span><a href="http://example.com">http://example.com</a><span class="token string">"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"timeout_ms"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"vault_secret_ref"</span>: <span class="token string">"string"</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"next_cursor"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"has_more"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_2e9hq_1" aria-labelledby="tab_R_2e9hq_1"></div></div></div></div></div></div><div id="tag/DoH-profiles/operation/createDohProfile" data-section-id="tag/DoH-profiles/operation/createDohProfile" class="sc-eDDNvO iUTsUN"><div data-section-id="operation/createDohProfile" id="operation/createDohProfile" class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG"><h2 class="sc-qRumy bcNKdh"><a class="sc-csCMJq jSIqAu" href="#tag/DoH-profiles/operation/createDohProfile" aria-label="tag/DoH-profiles/operation/createDohProfile"></a>Создать DoH-профиль<!-- --> </h2><div class="sc-iERabE dUdgLx"><div html="<p>URL и таймауты; секрет - через vault id или отдельный вызов установки секрета.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln dHaogz"><p>URL и таймауты; секрет - через vault id или отдельный вызов установки секрета.</p>
|
||||
</div></div><div class="sc-ftWlEC pzAgN"><div class="sc-cYRmzp kuPPCO"><h5 class="sc-irTswZ sc-jOQpHb fA-dGxt qtYpT">Authorizations:</h5><svg class="sc-fbJfz eiOVYa" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jTsRVM gZngKQ"><span class="sc-dskThK ddMcul"><span class="sc-hNeXkj cLOXvd"><i>bearerAuth</i></span></span></div></div><div><h5 class="sc-irTswZ fA-dGxt">header<!-- --> Parameters</h5><table class="sc-hIqOWV dybric"><tbody><tr class=""><td kind="field" title="X-Tenant-Id" class="sc-hAtEya sc-fGFwA-d kddqHa eIujjv"><span class="sc-ieZDjf bEKmDE"></span><span class="property-name">X-Tenant-Id</span></td><td class="sc-blLsxE bmauLr"><div><div><span class="sc-gUrTyB sc-kZGvTq bPAaet UMvzF"></span><span class="sc-gUrTyB sc-iMfspz bPAaet fEQrHJ">string</span><span class="sc-gUrTyB sc-jfSnVt bPAaet kEFcTG"> (<!-- -->ResourceId<!-- -->) </span><span class="sc-gUrTyB sc-ejdXBF bPAaet gTwxVV">^[0-9A-Za-z_-]{20,36}$</span></div> <span class="sc-gUrTyB bPAaet"> <!-- -->Examples<!-- -->: </span><span class="sc-gUrTyB sc-ldFCYc bPAaet eShQxX">01JQXYZABCDEFGHIJKLMNOPQRS</span> <div><div html="<p>Явный tenant (только супер-роли). Без заголовка tenant определяется по ключу.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>Явный tenant (только супер-роли). Без заголовка tenant определяется по ключу.</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="Idempotency-Key" class="sc-hAtEya sc-fGFwA-d kddqHa eIujjv"><span class="sc-ieZDjf bEKmDE"></span><span class="property-name">Idempotency-Key</span></td><td class="sc-blLsxE bmauLr"><div><div><span class="sc-gUrTyB sc-kZGvTq bPAaet UMvzF"></span><span class="sc-gUrTyB sc-iMfspz bPAaet fEQrHJ">string</span><span> <span class="sc-gUrTyB sc-cmEaii bPAaet iWTprB"> <!-- --><= 256 characters<!-- --> </span></span></div> <div><div html="<p>Идемпотентность мутаций. Для <code>POST</code> apply и части refresh рекомендуется или обязателен по политике продукта.</p>
|
||||
@@ -3022,8 +3022,8 @@ data-styled.g138[id="sc-iJQrDi"]{content:"gtHWGb,"}/*!sc*/
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>UUID v7 или ULID.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h5 class="sc-irTswZ fA-dGxt">header<!-- --> Parameters</h5><table class="sc-hIqOWV dybric"><tbody><tr class="last "><td kind="field" title="X-Tenant-Id" class="sc-hAtEya sc-fGFwA-d kddqHa eIujjv"><span class="sc-ieZDjf bEKmDE"></span><span class="property-name">X-Tenant-Id</span></td><td class="sc-blLsxE bmauLr"><div><div><span class="sc-gUrTyB sc-kZGvTq bPAaet UMvzF"></span><span class="sc-gUrTyB sc-iMfspz bPAaet fEQrHJ">string</span><span class="sc-gUrTyB sc-jfSnVt bPAaet kEFcTG"> (<!-- -->ResourceId<!-- -->) </span><span class="sc-gUrTyB sc-ejdXBF bPAaet gTwxVV">^[0-9A-Za-z_-]{20,36}$</span></div> <span class="sc-gUrTyB bPAaet"> <!-- -->Examples<!-- -->: </span><span class="sc-gUrTyB sc-ldFCYc bPAaet eShQxX">01JQXYZABCDEFGHIJKLMNOPQRS</span> <div><div html="<p>Явный tenant (только супер-роли). Без заголовка tenant определяется по ключу.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>Явный tenant (только супер-роли). Без заголовка tenant определяется по ключу.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-fJjTez hsJdXF">Responses</h3><div><button class="sc-caslwi brztng"><svg class="sc-fbJfz iZiZiV" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fYaxgW jJkGwY">200<!-- --> </strong><div html="<p>Текст или структурированное представление — формат задаётся реализацией.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou sc-cjERFZ dXXcln fTBBlJ dkmSdy"><p>Текст или структурированное представление — формат задаётся реализацией.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-fJjTez hsJdXF">Responses</h3><div><button class="sc-caslwi brztng"><svg class="sc-fbJfz iZiZiV" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fYaxgW jJkGwY">200<!-- --> </strong><div html="<p>Текст или структурированное представление - формат задаётся реализацией.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou sc-cjERFZ dXXcln fTBBlJ dkmSdy"><p>Текст или структурированное представление - формат задаётся реализацией.</p>
|
||||
</div></button></div><div><button class="sc-caslwi fvWYOy"><svg class="sc-fbJfz kiMFkB" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fYaxgW jJkGwY">404<!-- --> </strong><div html="<p>Ресурс не найден в скоупе tenant.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou sc-cjERFZ dXXcln fTBBlJ dkmSdy"><p>Ресурс не найден в скоупе tenant.</p>
|
||||
</div></button></div><div><button class="sc-caslwi fvWYOy"><svg class="sc-fbJfz kiMFkB" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fYaxgW jJkGwY">default<!-- --> </strong><div html="<p>Ошибка (см. тело Problem).</p>
|
||||
@@ -3191,9 +3191,9 @@ data-styled.g138[id="sc-iJQrDi"]{content:"gtHWGb,"}/*!sc*/
|
||||
</div></button></div></div></div><div class="sc-jTrPJt sc-gLDzao dVngAA fYLqku"><div class="sc-fYzRkH dHdMVa"><button class="sc-jYvNnh iWrBta"><span type="get" class="sc-eGFuAY kCsPwr http-verb get">get</span><span class="sc-GJyyy dkiPkt">/v1/speakers/{speaker_id}/revisions/latest</span><svg class="sc-fbJfz ivEQut" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-fnxdBX dplsyJ"><div class="sc-llcuoK cNCbuV"><div html="<p>Базовый URL инсталляции (замените на свой)</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>Базовый URL инсталляции (замените на свой)</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-jnsZEx eobUac"><span>https://api.example.com</span>/v1/speakers/{speaker_id}/revisions/latest</div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Response samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab_R_175la_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_175la_0" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="tab_R_175la_1" aria-selected="false" aria-disabled="false" aria-controls="panel_R_175la_1" data-rttab="true">404</li><li class="tab-error" role="tab" id="tab_R_175la_2" aria-selected="false" aria-disabled="false" aria-controls="panel_R_175la_2" data-rttab="true">default</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_175la_0" aria-labelledby="tab_R_175la_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"revision_id"</span>: <span class="token string">"01JQXYZABCDEFGHIJKLMNOPQRS"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"published_at"</span>: <span class="token string">"2019-08-24T14:15:22Z"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_175la_1" aria-labelledby="tab_R_175la_1"></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_175la_2" aria-labelledby="tab_R_175la_2"></div></div></div></div></div></div><div id="tag/Node/operation/getSpeakerBundle" data-section-id="tag/Node/operation/getSpeakerBundle" class="sc-eDDNvO iUTsUN"><div data-section-id="operation/getSpeakerBundle" id="operation/getSpeakerBundle" class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG"><h2 class="sc-qRumy bcNKdh"><a class="sc-csCMJq jSIqAu" href="#tag/Node/operation/getSpeakerBundle" aria-label="tag/Node/operation/getSpeakerBundle"></a>Скачать подписанный бандл<!-- --> </h2><div class="sc-iERabE dUdgLx"><div html="<p>Архив с <code>manifest.json</code> и подписью (например Ed25519). Целостность по SHA-256 в манифесте.
|
||||
<code>Content-Type</code> — <code>application/octet-stream</code> или multipart; детали — в реализации.</p>
|
||||
<code>Content-Type</code> - <code>application/octet-stream</code> или multipart; детали - в реализации.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln dHaogz"><p>Архив с <code>manifest.json</code> и подписью (например Ed25519). Целостность по SHA-256 в манифесте.
|
||||
<code>Content-Type</code> — <code>application/octet-stream</code> или multipart; детали — в реализации.</p>
|
||||
<code>Content-Type</code> - <code>application/octet-stream</code> или multipart; детали - в реализации.</p>
|
||||
</div></div><div class="sc-ftWlEC pzAgN"><div class="sc-cYRmzp kuPPCO"><h5 class="sc-irTswZ sc-jOQpHb fA-dGxt qtYpT">Authorizations:</h5><svg class="sc-fbJfz eiOVYa" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jTsRVM gZngKQ"><span class="sc-dskThK ddMcul"><span class="sc-hNeXkj cLOXvd"><i>bearerAuth</i></span></span></div></div><div><h5 class="sc-irTswZ fA-dGxt">path<!-- --> Parameters</h5><table class="sc-hIqOWV dybric"><tbody><tr class=""><td kind="field" title="speaker_id" class="sc-hAtEya sc-fGFwA-d kddqHa eIujjv"><span class="sc-ieZDjf bEKmDE"></span><span class="property-name">speaker_id</span><div class="sc-gUrTyB sc-eKYjSU bPAaet boAHLn">required</div></td><td class="sc-blLsxE bmauLr"><div><div><span class="sc-gUrTyB sc-kZGvTq bPAaet UMvzF"></span><span class="sc-gUrTyB sc-iMfspz bPAaet fEQrHJ">string</span><span class="sc-gUrTyB sc-jfSnVt bPAaet kEFcTG"> (<!-- -->ResourceId<!-- -->) </span><span class="sc-gUrTyB sc-ejdXBF bPAaet gTwxVV">^[0-9A-Za-z_-]{20,36}$</span></div> <span class="sc-gUrTyB bPAaet"> <!-- -->Examples<!-- -->: </span><span class="sc-gUrTyB sc-ldFCYc bPAaet eShQxX">01JQXYZABCDEFGHIJKLMNOPQRS</span> <div><div html="<p>UUID v7 или ULID.</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>UUID v7 или ULID.</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="revision_id" class="sc-hAtEya sc-fGFwA-d kddqHa eIujjv"><span class="sc-ieZDjf bEKmDE"></span><span class="property-name">revision_id</span><div class="sc-gUrTyB sc-eKYjSU bPAaet boAHLn">required</div></td><td class="sc-blLsxE bmauLr"><div><div><span class="sc-gUrTyB sc-kZGvTq bPAaet UMvzF"></span><span class="sc-gUrTyB sc-iMfspz bPAaet fEQrHJ">string</span><span class="sc-gUrTyB sc-jfSnVt bPAaet kEFcTG"> (<!-- -->ResourceId<!-- -->) </span><span class="sc-gUrTyB sc-ejdXBF bPAaet gTwxVV">^[0-9A-Za-z_-]{20,36}$</span></div> <span class="sc-gUrTyB bPAaet"> <!-- -->Examples<!-- -->: </span><span class="sc-gUrTyB sc-ldFCYc bPAaet eShQxX">01JQXYZABCDEFGHIJKLMNOPQRS</span> <div><div html="<p>UUID v7 или ULID.</p>
|
||||
@@ -3218,8 +3218,8 @@ data-styled.g138[id="sc-iJQrDi"]{content:"gtHWGb,"}/*!sc*/
|
||||
" class="sc-iKGpAq sc-cCYyou sc-cjERFZ dXXcln fTBBlJ dkmSdy"><p>Ошибка (см. тело Problem).</p>
|
||||
</div></button></div></div></div><div class="sc-jTrPJt sc-gLDzao dVngAA fYLqku"><div class="sc-fYzRkH dHdMVa"><button class="sc-jYvNnh iWrBta"><span type="post" class="sc-eGFuAY ejslkd http-verb post">post</span><span class="sc-GJyyy dkiPkt">/v1/nodes/enroll</span><svg class="sc-fbJfz ivEQut" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-fnxdBX dplsyJ"><div class="sc-llcuoK cNCbuV"><div html="<p>Базовый URL инсталляции (замените на свой)</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>Базовый URL инсталляции (замените на свой)</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-jnsZEx eobUac"><span>https://api.example.com</span>/v1/nodes/enroll</div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Request samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="tab_R_157la_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_157la_0" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_157la_0" aria-labelledby="tab_R_157la_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"public_key"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"speaker_id"</span>: <span class="token string">"01JQXYZABCDEFGHIJKLMNOPQRS"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Response samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab_R_177la_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_177la_0" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="tab_R_177la_1" aria-selected="false" aria-disabled="false" aria-controls="panel_R_177la_1" data-rttab="true">422</li><li class="tab-error" role="tab" id="tab_R_177la_2" aria-selected="false" aria-disabled="false" aria-controls="panel_R_177la_2" data-rttab="true">default</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_177la_0" aria-labelledby="tab_R_177la_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><span class="token punctuation">{ }</span></code></div></div></div></div></div></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_177la_1" aria-labelledby="tab_R_177la_1"></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_177la_2" aria-labelledby="tab_R_177la_2"></div></div></div></div></div></div><div id="tag/Settings" data-section-id="tag/Settings" class="sc-eDDNvO eTiIZG"><div class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG"><h2 class="sc-qRumy bcNKdh"><a class="sc-csCMJq jSIqAu" href="#tag/Settings" aria-label="tag/Settings"></a>Settings</h2></div></div><div class="sc-hLseeT eiTXyS"><div class="sc-iKGpAq sc-cCYyou dXXcln dHaogz redoc-markdown " html="<p>Глобальные настройки и feature flags; изменение — только operator.</p>
|
||||
"><p>Глобальные настройки и feature flags; изменение — только operator.</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-jnsZEx eobUac"><span>https://api.example.com</span>/v1/nodes/enroll</div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Request samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="tab_R_157la_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_157la_0" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_157la_0" aria-labelledby="tab_R_157la_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"public_key"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"speaker_id"</span>: <span class="token string">"01JQXYZABCDEFGHIJKLMNOPQRS"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Response samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab_R_177la_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_177la_0" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="tab_R_177la_1" aria-selected="false" aria-disabled="false" aria-controls="panel_R_177la_1" data-rttab="true">422</li><li class="tab-error" role="tab" id="tab_R_177la_2" aria-selected="false" aria-disabled="false" aria-controls="panel_R_177la_2" data-rttab="true">default</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_177la_0" aria-labelledby="tab_R_177la_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><span class="token punctuation">{ }</span></code></div></div></div></div></div></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_177la_1" aria-labelledby="tab_R_177la_1"></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_177la_2" aria-labelledby="tab_R_177la_2"></div></div></div></div></div></div><div id="tag/Settings" data-section-id="tag/Settings" class="sc-eDDNvO eTiIZG"><div class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG"><h2 class="sc-qRumy bcNKdh"><a class="sc-csCMJq jSIqAu" href="#tag/Settings" aria-label="tag/Settings"></a>Settings</h2></div></div><div class="sc-hLseeT eiTXyS"><div class="sc-iKGpAq sc-cCYyou dXXcln dHaogz redoc-markdown " html="<p>Глобальные настройки и feature flags; изменение - только operator.</p>
|
||||
"><p>Глобальные настройки и feature flags; изменение - только operator.</p>
|
||||
</div></div></div><div id="tag/Settings/operation/getSettings" data-section-id="tag/Settings/operation/getSettings" class="sc-eDDNvO iUTsUN"><div data-section-id="operation/getSettings" id="operation/getSettings" class="sc-iAEyYj cmAaWK"><div class="sc-hLseeT hoYmkG"><h2 class="sc-qRumy bcNKdh"><a class="sc-csCMJq jSIqAu" href="#tag/Settings/operation/getSettings" aria-label="tag/Settings/operation/getSettings"></a>Получить настройки<!-- --> </h2><div class="sc-iERabE dUdgLx"><div html="<p>KV (лимиты CDN, feature flags и т.д.).</p>
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln dHaogz"><p>KV (лимиты CDN, feature flags и т.д.).</p>
|
||||
</div></div><div class="sc-ftWlEC pzAgN"><div class="sc-cYRmzp kuPPCO"><h5 class="sc-irTswZ sc-jOQpHb fA-dGxt qtYpT">Authorizations:</h5><svg class="sc-fbJfz eiOVYa" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jTsRVM gZngKQ"><span class="sc-dskThK ddMcul"><span class="sc-hNeXkj cLOXvd"><i>bearerAuth</i></span></span></div></div><div><h5 class="sc-irTswZ fA-dGxt">header<!-- --> Parameters</h5><table class="sc-hIqOWV dybric"><tbody><tr class="last "><td kind="field" title="X-Tenant-Id" class="sc-hAtEya sc-fGFwA-d kddqHa eIujjv"><span class="sc-ieZDjf bEKmDE"></span><span class="property-name">X-Tenant-Id</span></td><td class="sc-blLsxE bmauLr"><div><div><span class="sc-gUrTyB sc-kZGvTq bPAaet UMvzF"></span><span class="sc-gUrTyB sc-iMfspz bPAaet fEQrHJ">string</span><span class="sc-gUrTyB sc-jfSnVt bPAaet kEFcTG"> (<!-- -->ResourceId<!-- -->) </span><span class="sc-gUrTyB sc-ejdXBF bPAaet gTwxVV">^[0-9A-Za-z_-]{20,36}$</span></div> <span class="sc-gUrTyB bPAaet"> <!-- -->Examples<!-- -->: </span><span class="sc-gUrTyB sc-ldFCYc bPAaet eShQxX">01JQXYZABCDEFGHIJKLMNOPQRS</span> <div><div html="<p>Явный tenant (только супер-роли). Без заголовка tenant определяется по ключу.</p>
|
||||
@@ -3246,7 +3246,7 @@ data-styled.g138[id="sc-iJQrDi"]{content:"gtHWGb,"}/*!sc*/
|
||||
" class="sc-iKGpAq sc-cCYyou dXXcln cFvDiF"><p>Базовый URL инсталляции (замените на свой)</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-jnsZEx eobUac"><span>https://api.example.com</span>/v1/settings</div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Request samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="tab_R_156lq_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_156lq_0" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_156lq_0" aria-labelledby="tab_R_156lq_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><span class="token punctuation">{ }</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kFuwaQ dEbuTz"> <!-- -->Response samples<!-- --> </h3><div class="sc-cyRfQY lbIFgo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab_R_176lq_0" aria-selected="true" aria-disabled="false" aria-controls="panel_R_176lq_0" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="tab_R_176lq_1" aria-selected="false" aria-disabled="false" aria-controls="panel_R_176lq_1" data-rttab="true">403</li><li class="tab-error" role="tab" id="tab_R_176lq_2" aria-selected="false" aria-disabled="false" aria-controls="panel_R_176lq_2" data-rttab="true">default</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel_R_176lq_0" aria-labelledby="tab_R_176lq_0"><div><div class="sc-cPlDXk gpxHhK"><span class="sc-bCDidX ccmcKc">Content type</span><div class="sc-dQelHO eMpCUl">application/json</div></div><div class="sc-hVkBjf ksuOBo"><div class="sc-cRZddz iLjyyA"><div class="sc-gjTGSz btblAa"><button><div class="sc-jegxcw fJsoyS">Copy</div></button></div><div tabindex="0" class="sc-iKGpAq dXXcln sc-jMAIzW jKIGwd"><div class="redoc-json"><code><span class="token punctuation">{ }</span></code></div></div></div></div></div></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_176lq_1" aria-labelledby="tab_R_176lq_1"></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel_R_176lq_2" aria-labelledby="tab_R_176lq_2"></div></div></div></div></div></div></div><div class="sc-emEvRt jYOHCb"></div></div></div>
|
||||
<script>
|
||||
const __redoc_state = {"menu":{"activeItemIdx":-1},"spec":{"data":{"openapi":"3.1.0","info":{"title":"EvoBGP Control Plane API","version":"0.1.0","description":"REST API управления префиксами, модулями ingest, ревизиями конфигурации BIRD и задачами (async jobs).\n\n**Соглашения:** префикс `/v1`; идентификаторы — UUID v7 или ULID (строки); время — ISO 8601 UTC.\nОшибки — `application/problem+json` ([RFC 9457](https://www.rfc-editor.org/rfc/rfc9457)).\nПагинация списков — `cursor` + `limit`; ответ содержит `items`, `next_cursor`, `has_more`.\n\n**Роли** (матрица доступа): `viewer`, `editor`, `operator`, `node`. Нода использует отдельные пути и ключ с ролью `node`.\n\nЗаголовок `X-Tenant-Id` допускается только для супер-ролей (явный tenant); иначе tenant берётся из API-ключа.\n","license":{"name":"Proprietary","identifier":"LicenseRef-Proprietary"}},"servers":[{"url":"https://api.example.com","description":"Базовый URL инсталляции (замените на свой)"}],"tags":[{"name":"System","description":"Liveness, readiness и метаданные сборки. Обычно без чувствительных данных; доступ может быть шире."},{"name":"Modules","description":"Экземпляры модулей префиксов (AS, CDN, домены, статические IP-диапазоны) и вложенные записи. Чтение — viewer+; изменение — editor+."},{"name":"DoH profiles","description":"Профили DNS-over-HTTPS для модулей типа домены. Секрет в ответах не возвращается."},{"name":"Communities","description":"Справочник BGP community в скоупе tenant."},{"name":"Peers","description":"BGP-пиры и политики; привязка к спикеру или ко всем спикерам."},{"name":"Speakers","description":"Регистрация и метаданные экземпляров BIRD (master/replica/canary)."},{"name":"Revisions","description":"История ревизий конфигурации, снимки префиксов, превью и откат (часто асинхронно)."},{"name":"Deploy","description":"Применение ревизий на спикерах и опциональный reload BIRD. Требуется роль operator."},{"name":"Jobs","description":"Асинхронные задачи; статус и отмена (best-effort)."},{"name":"Node","description":"API для evobgp-node (бандлы ревизий и enrollment). Отдельный ключ или mTLS, роль node."},{"name":"Settings","description":"Глобальные настройки и feature flags; изменение — только operator."}],"security":[{"bearerAuth":[]}],"externalDocs":{"description":"Черновик и контекст API","url":"./evobgp-api-sketches.md"},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"API-ключ в формате `Bearer <token>`. На edge может заменяться или дополняться mTLS."}},"parameters":{"TenantId":{"name":"X-Tenant-Id","in":"header","required":false,"schema":{"$ref":"#/components/schemas/ResourceId"},"description":"Явный tenant (только супер-роли). Без заголовка tenant определяется по ключу."},"IdempotencyKey":{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","maxLength":256},"description":"Идемпотентность мутаций. Для `POST` apply и части refresh рекомендуется или обязателен по политике продукта."},"Cursor":{"name":"cursor","in":"query","schema":{"type":"string"},"description":"Непрозрачный курсор из предыдущего ответа."},"Limit":{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":500,"default":50},"description":"Размер страницы (по умолчанию 50)."},"ModuleId":{"name":"module_id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ResourceId"}},"SpeakerId":{"name":"speaker_id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ResourceId"}},"RevisionId":{"name":"revision_id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ResourceId"}},"JobId":{"name":"job_id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ResourceId"}},"PeerId":{"name":"id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ResourceId"}},"DohProfileId":{"name":"id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ResouLine truncated
|
||||
const __redoc_state = {"menu":{"activeItemIdx":-1},"spec":{"data":{"openapi":"3.1.0","info":{"title":"EvoBGP Control Plane API","version":"0.1.0","description":"REST API управления префиксами, модулями ingest, ревизиями конфигурации BIRD и задачами (async jobs).\n\n**Соглашения:** префикс `/v1`; идентификаторы - UUID v7 или ULID (строки); время - ISO 8601 UTC.\nОшибки - `application/problem+json` ([RFC 9457](https://www.rfc-editor.org/rfc/rfc9457)).\nПагинация списков - `cursor` + `limit`; ответ содержит `items`, `next_cursor`, `has_more`.\n\n**Роли** (матрица доступа): `viewer`, `editor`, `operator`, `node`. Нода использует отдельные пути и ключ с ролью `node`.\n\nЗаголовок `X-Tenant-Id` допускается только для супер-ролей (явный tenant); иначе tenant берётся из API-ключа.\n","license":{"name":"Proprietary","identifier":"LicenseRef-Proprietary"}},"servers":[{"url":"https://api.example.com","description":"Базовый URL инсталляции (замените на свой)"}],"tags":[{"name":"System","description":"Liveness, readiness и метаданные сборки. Обычно без чувствительных данных; доступ может быть шире."},{"name":"Modules","description":"Экземпляры модулей префиксов (AS, CDN, домены, статические IP-диапазоны) и вложенные записи. Чтение - viewer+; изменение - editor+."},{"name":"DoH profiles","description":"Профили DNS-over-HTTPS для модулей типа домены. Секрет в ответах не возвращается."},{"name":"Communities","description":"Справочник BGP community в скоупе tenant."},{"name":"Peers","description":"BGP-пиры и политики; привязка к спикеру или ко всем спикерам."},{"name":"Speakers","description":"Регистрация и метаданные экземпляров BIRD (master/replica/canary)."},{"name":"Revisions","description":"История ревизий конфигурации, снимки префиксов, превью и откат (часто асинхронно)."},{"name":"Deploy","description":"Применение ревизий на спикерах и опциональный reload BIRD. Требуется роль operator."},{"name":"Jobs","description":"Асинхронные задачи; статус и отмена (best-effort)."},{"name":"Node","description":"API для evobgp-node (бандлы ревизий и enrollment). Отдельный ключ или mTLS, роль node."},{"name":"Settings","description":"Глобальные настройки и feature flags; изменение - только operator."}],"security":[{"bearerAuth":[]}],"externalDocs":{"description":"Черновик и контекст API","url":"./evobgp-api-sketches.md"},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"API-ключ в формате `Bearer <token>`. На edge может заменяться или дополняться mTLS."}},"parameters":{"TenantId":{"name":"X-Tenant-Id","in":"header","required":false,"schema":{"$ref":"#/components/schemas/ResourceId"},"description":"Явный tenant (только супер-роли). Без заголовка tenant определяется по ключу."},"IdempotencyKey":{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","maxLength":256},"description":"Идемпотентность мутаций. Для `POST` apply и части refresh рекомендуется или обязателен по политике продукта."},"Cursor":{"name":"cursor","in":"query","schema":{"type":"string"},"description":"Непрозрачный курсор из предыдущего ответа."},"Limit":{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":500,"default":50},"description":"Размер страницы (по умолчанию 50)."},"ModuleId":{"name":"module_id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ResourceId"}},"SpeakerId":{"name":"speaker_id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ResourceId"}},"RevisionId":{"name":"revision_id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ResourceId"}},"JobId":{"name":"job_id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ResourceId"}},"PeerId":{"name":"id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ResourceId"}},"DohProfileId":{"name":"id","in":"path","required":true,"schema":{"$ref":"#/components/schemas/ResourceId"}},"CommLine truncated
|
||||
|
||||
var container = document.getElementById('redoc');
|
||||
Redoc.hydrate(__redoc_state, container);
|
||||
|
||||
Reference in new issue
Block a user