@OA\Response @OA\Items @OA\MediaType Пример аннотации - массив объектов JSON в качестве ответа, переиспользование схемы модели
Primary tabs
Например для zircote/swagger-php:
/** * @OA\Get(path="/campaign-type", * tags={"CampaignType"}, * operationId="getCampaignTypes", * summary="Список всех (созданных к данном моменту) типов кампаний", * @OA\Response(response="200", * description="OK", * @OA\MediaType( * mediaType="application/json", * @OA\Schema( * type="array", * @OA\Items( * type="object", * @OA\Property( * property="id", * type="integer" * ), * @OA\Property( * property="name", * type="string" * ), * ), * * ) * ), * ) * ) */ public function getCampaignTypes() { $types = $this->campaignTypeRepository->findAll(); return $this->reply($types, 200, ['groups' => 'group1']); }
Или тоже самое но со ссылкой на схему модели (переиспользование описания модели):
/** * * @OA\Get(path="/campaign-type", * tags={"CampaignType"}, * operationId="getCampaignTypes", * summary="Список всех (созданных к данном моменту) типов кампаний", * @OA\Response(response="200", * description="OK", * @OA\MediaType( * mediaType="application/json", * @OA\Schema( * type="array", * @OA\Items( * ref="#/components/schemas/CampaignType" * ), * ) * ), * ) * ) */ public function getCampaignTypes() { $types = $this->campaignTypeRepository->findAll(); return $this->reply($types, 200, ['groups' => 'group1']); }
- Log in to post comments
- 12941 reads