Несколько API-интерфейсов

Я использую swagger для документирования своего API, но теперь мне нужно расширить его с помощью дополнительного API. Есть ли способ создать 2 json файла (2 API) ea /api/v1/public и /api/v1/private которые будут делиться определениями определенных моделей/контроллеров, но мне нужно будет отметить некоторые свойства, которые будут доступны только для определенных апи.

Например, если у меня есть users модели с name столбцов и some_internal_id, есть ли способ сгруппировать эти свойства, так что первый из них относится к обоим API, а второй принадлежит частному API?

1 ответ

Я использую php-swagger. В конфигурационном файле swagger вам нужно несколько раз сканировать несколько файлов JSON. Например, моя конфигурация выглядит так:

return [
 'Swagger' => [
 'docs' => [
 'public' => [
 'include' => [
 ROOT . DS . 'src' . DS . 'Resources' . DS . 'Swagger' . DS . 'Public' . DS . 'Paths',
 ROOT . DS . 'src' . DS . 'Resources' . DS . 'Swagger' . DS . 'Public' . DS . 'Definitions'
 ]
 ],
 'private' => [
 'include' => [
 ROOT . DS . 'src' . DS . 'Resources' . DS . 'Swagger' . DS . 'Private' . DS . 'Paths',
 ROOT . DS . 'src' . DS . 'Resources' . DS . 'Swagger' . DS . 'Private' . DS . 'Definitions'
 ]
 ]
 ]
 ]
];

licensed under cc by-sa 3.0 with attribution.