Перейти к содержанию

Получение выбранных сущностей из Git

Запрос

Тип Метод
POST /git_integration_entities/pull

Описание: метод запускает получение из Git выбранных сущностей для указанного экземпляра Git-интеграции.

В поле entity_ids передаются ID целевых сущностей в Платформе, например правил корреляции или источников и конвейеров разбора. Это не ID staging-записей в git_integration_entities.

Если указанная сущность отсутствует в Git-репозитории, операция завершается ошибкой entity not found in repo.

Если для интеграции включен параметр pull_auto_apply, автоматическое применение выполняется только для сущностей, переданных в entity_ids.

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

POST

https://development.gigantic-server.com/v1/git_integration_entities/pull

Тело запроса:

Параметр Тип данных Обязательность Описание
integration_id string (uuid) Required ID экземпляра Git-интеграции
entity_ids Array<string (uuid)> Required Список ID целевых сущностей, которые необходимо получить из Git
Пример тела запроса

{
  "integration_id": "00000000-0000-0000-0000-000000000000",
  "entity_ids": [
    "11111111-1111-1111-1111-111111111111",
    "22222222-2222-2222-2222-222222222222"
  ]
}

Успешный ответ

Статус код: 200 – получение выбранных сущностей из Git выполнено успешно.

Формат: JSON.

Параметры ответа:

Параметр Тип данных Описание
result string Результат выполнения операции
Пример ответа

{
  "result": "ok"
}

Другие возможные ответы

Код Ответ Описание
400 Bad Request Ошибка в параметрах запроса или при выполнении получения данных
404 integration not found Интеграция не найдена
500 Internal Server Error Ошибка сервера

Возможные ошибки:

  • 400 — "missing uid header" — отсутствует заголовок Pgr-User-ID;
  • 400 — "Pgr-User-Id should be uuid format" — неверный формат Pgr-User-ID;
  • 400 — "integration_id is required" — не передан integration_id;
  • 400 — "integration_id should be uuid format" — неверный формат UUID параметра integration_id;
  • 400 — "entity_ids is required" — параметр entity_ids не передан или содержит пустой список;
  • 400 — "entity_ids should contain uuid values" — в entity_ids передано значение, не соответствующее формату UUID;
  • 400 — "pull is disabled" — получение данных из Git отключено для интеграции;
  • 400 — "entity not found in repo:" — указанная сущность не найдена в Git-репозитории;
  • 400 — "not a git integration" — указанная интеграция не является Git-интеграцией;
  • 404 — "integration not found" — интеграция с указанным ID не найдена;
  • 500 — "Internal Server Error" — ошибка сервера.
Пример ответа с кодом 400

{
  "error": "entity not found in repo:"
}
Пример ответа с кодом 404

{
  "error": "integration not found"
}
Пример ответа с кодом 500

{
  "error": "Internal Server Error"
}