OpenAPI в качестве формата хранения данных

Работаю над flow builder, где на flow можно добавлять ноды и соединять их между собой (как в integromat, zapier или rapidapi).

В моём случае нода - это по сути postman, но который имеет лишь 1 endpoint и один http метод. Т.е. одной ноде я назначаю: url, method, body, query, path и headers. Напр. "https://api.telegram.org/bot<MY_KEY>/getUpdates", "POST", {'chat_id': ''}, ...

Поступило предложение хранить и обрабатывать эту информацию для ноды в формате OpenAPI. Т.е. получим примерно следующее:

{
  "openapi": "3.0.2",
  "paths": {
    "/getUpdates": {
      "post": {
        "requestBody": {
          ...
        }
      }
    }
  }
}

По этим данным нужно отрисовать ноды на canvas, можно будет менять параметры на лету, при запуске ноды (execute) всю информацию берём из этих данных для http request.

Вопросы:

  • насколько сложно будет работать с такой структурой (чтение/обновление/удаление конкретных полей объекта);
  • решит ли эти задачи swagger-parser (javascript), если работа с этими данными будет происходить и на клиенте и на сервере;
  • это усложнение и лучше использовать более простую структуру ИЛИ всё же формат openapi, который имеет документацию для новых разработчиков будет понятнее;

Кстати формат будет расширяться кастомными полями, что нарушит структуру openapi.


Ответы (0 шт):