На этой странице описаны административные OpenSearch-эндпоинты Deckhouse Code. Параметры пользовательского поиска — в разделе «API поиска».

Права доступа

  • POST /api/v4/admin/opensearch/recreate_indices — только администратор (authenticated_as_admin!);
  • GET /api/v4/admin/opensearch/indexing_queue_stats — пользователь с правом read_admin_search_indexing_queue_stats на :global.

POST /api/v4/admin/opensearch/recreate_indices

Синхронно пересоздаёт индекс(ы) OpenSearch и ставит фоновые задачи повторной индексации.

Тело запроса

Поле Тип Обязательное Допустимые значения
schema_class string Да recreate_all, Search::Opensearch::IndicesSchema::Code, Search::Opensearch::IndicesSchema::Wiki, Search::Opensearch::IndicesSchema::Note, Search::Opensearch::IndicesSchema::Milestone, Search::Opensearch::IndicesSchema::WorkItem, Search::Opensearch::IndicesSchema::MergeRequest

Ответы

Тексты полей message в примерах ниже возвращаются API на английском языке.

  • 202 Accepted
{
  "message": "OpenSearch indices were reset; reindex jobs were enqueued."
}
  • 400 Bad Request (например, OpenSearch выключен или сервис вернул ошибку)
{
  "message": "OpenSearch is disabled"
}

Пример запроса

curl --request POST \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --header "Content-Type: application/json" \
  --data '{"schema_class":"recreate_all"}' \
  --url "https://gitlab.example.com/api/v4/admin/opensearch/recreate_indices"

GET /api/v4/admin/opensearch/indexing_queue_stats

Возвращает статистику Sidekiq-очереди индексации OpenSearch.

Ответ (200 OK)

{
  "total": 42,
  "updated_at": "2026-07-01T12:34:56.789Z"
}

Поля:

  • total — общее количество задач индексации в очереди;
  • updated_at — timestamp ISO8601 с миллисекундами (или null).

Пример запроса

curl --request GET \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/admin/opensearch/indexing_queue_stats"