Use refs for common API responses.

This commit is contained in:
Buster "Silver Eagle" Neece 2022-01-10 22:31:24 -06:00
parent 2fabeed61d
commit 37c3df2494
No known key found for this signature in database
GPG Key ID: 9FC8B9E008872109
44 changed files with 1154 additions and 1522 deletions

View File

@ -89,7 +89,7 @@
"theiconic/php-ga-measurement-protocol": "^2.9",
"vlucas/phpdotenv": "^5.3",
"wikimedia/composer-merge-plugin": "dev-master",
"zircote/swagger-php": "^4"
"zircote/swagger-php": "dev-master"
},
"replace": {
"symfony/polyfill-iconv": "1.99",

16
composer.lock generated
View File

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "6b6bbb42f740ddb4d9916438a261865d",
"content-hash": "e58cb3a544325558326c3be7f2ad8ea1",
"packages": [
{
"name": "aws/aws-crt-php",
@ -9580,16 +9580,16 @@
},
{
"name": "zircote/swagger-php",
"version": "4.1.1",
"version": "dev-master",
"source": {
"type": "git",
"url": "https://github.com/zircote/swagger-php.git",
"reference": "47bc50f88a8a2be7a3048112344dacd6cfba1926"
"reference": "8f53ded4c90ec7cccb18333c1d7d8a4c16f0c3c8"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/zircote/swagger-php/zipball/47bc50f88a8a2be7a3048112344dacd6cfba1926",
"reference": "47bc50f88a8a2be7a3048112344dacd6cfba1926",
"url": "https://api.github.com/repos/zircote/swagger-php/zipball/8f53ded4c90ec7cccb18333c1d7d8a4c16f0c3c8",
"reference": "8f53ded4c90ec7cccb18333c1d7d8a4c16f0c3c8",
"shasum": ""
},
"require": {
@ -9605,6 +9605,7 @@
"friendsofphp/php-cs-fixer": "^2.17 || ^3.0",
"phpunit/phpunit": ">=8"
},
"default-branch": true,
"bin": [
"bin/openapi"
],
@ -9649,9 +9650,9 @@
],
"support": {
"issues": "https://github.com/zircote/swagger-php/issues",
"source": "https://github.com/zircote/swagger-php/tree/4.1.1"
"source": "https://github.com/zircote/swagger-php/tree/master"
},
"time": "2022-01-01T02:07:33+00:00"
"time": "2022-01-10T22:04:03+00:00"
}
],
"packages-dev": [
@ -14198,6 +14199,7 @@
"rlanvin/php-ip": 20,
"supervisorphp/supervisor": 20,
"wikimedia/composer-merge-plugin": 20,
"zircote/swagger-php": 20,
"roave/security-advisories": 20
},
"prefer-stable": true,

View File

@ -22,10 +22,8 @@ use OpenApi\Attributes as OA;
description: 'Success',
content: new OA\JsonContent(type: 'array', items: new OA\Items(ref: '#/components/schemas/CustomField'))
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -33,20 +31,18 @@ use OpenApi\Attributes as OA;
operationId: 'addCustomField',
description: 'Create a new custom field.',
security: OpenApi::API_KEY_SECURITY,
requestBody: new OA\RequestBody(
content: new OA\JsonContent(ref: '#/components/schemas/CustomField')
),
tags: ['Administration: Custom Fields'],
responses: [
new OA\RequestBody(
content: new OA\JsonContent(ref: '#/components/schemas/CustomField')
),
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/CustomField')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -70,10 +66,9 @@ use OpenApi\Attributes as OA;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/CustomField')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -95,15 +90,10 @@ use OpenApi\Attributes as OA;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -122,15 +112,10 @@ use OpenApi\Attributes as OA;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -19,8 +19,13 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Administration: Roles'],
responses: [
new OA\Response(response: 200, description: 'Success'),
new OA\Response(response: 403, description: 'Access denied'),
new OA\Response(
response: 200,
description: 'Success' // TODO: Response Body
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -36,10 +36,8 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
items: new OA\Items(ref: '#/components/schemas/Role')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -57,10 +55,8 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Role')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -84,10 +80,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Role')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -109,15 +104,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -136,15 +126,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -30,10 +30,8 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Settings')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -46,15 +44,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
tags: ['Administration: Settings'],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -38,10 +38,8 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
items: new OA\Items(ref: '#/components/schemas/Station')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -59,10 +57,8 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Station')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -86,10 +82,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Station')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -111,15 +106,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -138,15 +128,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -33,10 +33,8 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
items: new OA\Items(ref: '#/components/schemas/Api_Admin_StorageLocation')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -54,10 +52,8 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Admin_StorageLocation')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -81,10 +77,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Admin_StorageLocation')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -106,15 +101,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -133,15 +123,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -31,10 +31,8 @@ use Psr\Http\Message\ResponseInterface;
items: new OA\Items(ref: '#/components/schemas/User')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -52,10 +50,8 @@ use Psr\Http\Message\ResponseInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/User')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -79,10 +75,9 @@ use Psr\Http\Message\ResponseInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/User')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -104,15 +99,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -131,15 +121,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -37,7 +37,7 @@ use Psr\SimpleCache\CacheInterface;
description: "Returns a full summary of the specified station's current state.",
tags: ['Now Playing'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -45,10 +45,7 @@ use Psr\SimpleCache\CacheInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_NowPlaying')
),
new OA\Response(
response: 404,
description: 'Station not found'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
]
)
]

View File

@ -17,7 +17,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Media'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Media ID',
@ -32,21 +32,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class DeleteArtAction

View File

@ -17,7 +17,7 @@ use Psr\Http\Message\ResponseInterface;
description: 'Returns the album art for a song, or a generic image.',
tags: ['Stations: Media'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'media_id',
description: 'The station media unique ID',

View File

@ -20,7 +20,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Media'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Media ID',
@ -35,21 +35,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class PostArtAction

View File

@ -20,24 +20,13 @@ use Throwable;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Automation'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class RunAction extends StationsController

View File

@ -31,7 +31,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Media'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -42,10 +42,8 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
items: new OA\Items(ref: '#/components/schemas/StationMedia')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -58,7 +56,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
tags: ['Stations: Media'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -66,10 +64,8 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/StationMedia')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -79,7 +75,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Media'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Media ID',
@ -94,10 +90,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/StationMedia')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -110,7 +105,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
tags: ['Stations: Media'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Media ID',
@ -120,15 +115,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -138,7 +128,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Media'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Media ID',
@ -148,15 +138,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -24,7 +24,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: History'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'start',
description: 'The start date for records, in YYYY-MM-DD format.',
@ -49,14 +49,9 @@ use Psr\Http\Message\ResponseInterface;
items: new OA\Items(ref: '#/components/schemas/Api_DetailedSongHistory')
)
),
new OA\Response(
response: 404,
description: 'Station not found'
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -36,7 +36,7 @@ use Psr\Http\Message\ResponseInterface;
description: 'Return information about a single station.',
tags: ['Stations: General'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -44,10 +44,7 @@ use Psr\Http\Message\ResponseInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_NowPlaying_Station')
),
new OA\Response(
response: 404,
description: 'Station not found'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
]
)
]

View File

@ -29,7 +29,7 @@ use RuntimeException;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Listeners'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -40,14 +40,9 @@ use RuntimeException;
items: new OA\Items(ref: '#/components/schemas/Api_Listener')
)
),
new OA\Response(
response: 404,
description: 'Station not found'
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -17,7 +17,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Mount Points'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Mount Point ID',
@ -27,21 +27,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class DeleteIntroAction

View File

@ -18,7 +18,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Mount Points'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Mount Point ID',
@ -32,16 +32,9 @@ use Psr\Http\Message\ResponseInterface;
response: 200,
description: 'Success'
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class GetIntroAction

View File

@ -18,7 +18,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Mount Points'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Mount Point ID',
@ -28,21 +28,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class PostIntroAction

View File

@ -27,7 +27,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Mount Points'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -38,10 +38,8 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
items: new OA\Items(ref: '#/components/schemas/StationMount')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -54,7 +52,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
tags: ['Stations: Mount Points'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -62,10 +60,8 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/StationMount')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -75,7 +71,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Mount Points'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Streamer ID',
@ -90,10 +86,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/StationMount')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -106,7 +101,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
tags: ['Stations: Mount Points'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Streamer ID',
@ -116,15 +111,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -134,7 +124,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Mount Points'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'StationMount ID',
@ -144,15 +134,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -24,7 +24,7 @@ use Symfony\Component\Serializer\Normalizer\AbstractNormalizer;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Playlists'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -35,10 +35,8 @@ use Symfony\Component\Serializer\Normalizer\AbstractNormalizer;
items: new OA\Items(ref: '#/components/schemas/StationPlaylist')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -51,7 +49,7 @@ use Symfony\Component\Serializer\Normalizer\AbstractNormalizer;
),
tags: ['Stations: Playlists'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -59,10 +57,8 @@ use Symfony\Component\Serializer\Normalizer\AbstractNormalizer;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/StationPlaylist')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -72,7 +68,7 @@ use Symfony\Component\Serializer\Normalizer\AbstractNormalizer;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Playlists'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Playlist ID',
@ -87,10 +83,9 @@ use Symfony\Component\Serializer\Normalizer\AbstractNormalizer;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/StationPlaylist')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -103,7 +98,7 @@ use Symfony\Component\Serializer\Normalizer\AbstractNormalizer;
),
tags: ['Stations: Playlists'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Playlist ID',
@ -113,15 +108,10 @@ use Symfony\Component\Serializer\Normalizer\AbstractNormalizer;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -131,7 +121,7 @@ use Symfony\Component\Serializer\Normalizer\AbstractNormalizer;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Playlists'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Playlist ID',
@ -141,15 +131,10 @@ use Symfony\Component\Serializer\Normalizer\AbstractNormalizer;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -29,7 +29,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -47,10 +47,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
items: new OA\Items(ref: '#/components/schemas/Api_PodcastEpisode')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -63,7 +62,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -78,10 +77,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_PodcastEpisode')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -91,7 +89,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -113,10 +111,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_PodcastEpisode')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -129,7 +126,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -146,15 +143,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -164,7 +156,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -181,15 +173,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -18,7 +18,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -28,21 +28,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class DeleteArtAction

View File

@ -18,7 +18,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -32,16 +32,9 @@ use Psr\Http\Message\ResponseInterface;
response: 200,
description: 'Success',
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class GetArtAction

View File

@ -19,7 +19,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -29,20 +29,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class PostArtAction

View File

@ -18,7 +18,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',

View File

@ -18,7 +18,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -39,16 +39,9 @@ use Psr\Http\Message\ResponseInterface;
response: 200,
description: 'Success'
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class GetArtAction

View File

@ -19,7 +19,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -36,21 +36,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class PostArtAction

View File

@ -17,7 +17,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -34,21 +34,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class DeleteMediaAction

View File

@ -18,7 +18,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -39,16 +39,9 @@ use Psr\Http\Message\ResponseInterface;
response: 200,
description: 'Success'
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class GetMediaAction

View File

@ -19,7 +19,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'podcast_id',
description: 'Podcast ID',
@ -36,21 +36,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 404,
description: 'Record not found',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(
response: 403,
description: 'Access denied',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class PostMediaAction

View File

@ -29,7 +29,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -40,10 +40,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
items: new OA\Items(ref: '#/components/schemas/Api_Podcast')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -56,7 +55,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -64,10 +63,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Podcast')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -77,7 +75,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Podcast ID',
@ -92,10 +90,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Podcast')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -108,7 +105,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Podcast ID',
@ -118,15 +115,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -136,7 +128,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Podcasts'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Podcast ID',
@ -146,15 +138,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -24,7 +24,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Queue'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -35,14 +35,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
items: new OA\Items(ref: '#/components/schemas/Api_StationQueueDetailed')
)
),
new OA\Response(
response: 404,
description: 'Station not found'
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -52,7 +47,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Queue'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Queue Item ID',
@ -67,14 +62,9 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_StationQueueDetailed')
),
new OA\Response(
response: 404,
description: 'Station or Queue ID not found'
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -84,7 +74,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Queue'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Queue Item ID',
@ -94,19 +84,10 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 404,
description: 'Station or Queue ID not found'
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -23,7 +23,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Remote Relays'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -34,10 +34,9 @@ use Psr\Http\Message\ResponseInterface;
items: new OA\Items(ref: '#/components/schemas/Api_StationRemote')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -50,7 +49,7 @@ use Psr\Http\Message\ResponseInterface;
),
tags: ['Stations: Remote Relays'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -58,10 +57,9 @@ use Psr\Http\Message\ResponseInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_StationRemote')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -71,7 +69,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Remote Relays'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Remote Relay ID',
@ -86,10 +84,9 @@ use Psr\Http\Message\ResponseInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_StationRemote')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -102,7 +99,7 @@ use Psr\Http\Message\ResponseInterface;
),
tags: ['Stations: Remote Relays'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Remote Relay ID',
@ -112,15 +109,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -130,7 +122,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Remote Relays'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Remote Relay ID',
@ -140,15 +132,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -22,7 +22,7 @@ use Psr\Http\Message\ResponseInterface;
description: 'Return a list of requestable songs.',
tags: ['Stations: Song Requests'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -33,14 +33,9 @@ use Psr\Http\Message\ResponseInterface;
items: new OA\Items(ref: '#/components/schemas/Api_StationRequest')
)
),
new OA\Response(
response: 404,
description: 'Station not found'
),
new OA\Response(
response: 403,
description: 'Station does not support requests'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -49,7 +44,7 @@ use Psr\Http\Message\ResponseInterface;
description: 'Submit a song request.',
tags: ['Stations: Song Requests'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'request_id',
description: 'The requestable song ID',
@ -59,18 +54,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success'
),
new OA\Response(
response: 404,
description: 'Station not found'
),
new OA\Response(
response: 403,
description: 'Station does not support requests'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -23,7 +23,7 @@ use Symfony\Contracts\Cache\CacheInterface;
description: 'Return upcoming and currently ongoing schedule entries.',
tags: ['Stations: Schedules'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'now',
description: 'The date/time to compare schedule items to. Defaults to the current date and time.',
@ -48,14 +48,8 @@ use Symfony\Contracts\Cache\CacheInterface;
items: new OA\Items(ref: '#/components/schemas/Api_StationSchedule')
)
),
new OA\Response(
response: 404,
description: 'Station not found'
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)]
class ScheduleAction

View File

@ -23,7 +23,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Service Control'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -33,13 +33,9 @@ use Psr\Http\Message\ResponseInterface;
ref: '#/components/schemas/Api_StationServiceStatus'
)
),
new OA\Response(
response: 403,
description: 'Access Forbidden',
content: new OA\JsonContent(
ref: '#/components/schemas/Api_Error'
)
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -49,19 +45,13 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Service Control'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access Forbidden',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -71,7 +61,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Service Control'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'action',
description: 'The action to perform (start, stop, restart)',
@ -81,18 +71,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(
schema: '#/components/schemas/Api_Status'
)
),
new OA\Response(
response: 403,
description: 'Access Forbidden',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -102,7 +84,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Service Control'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'action',
description: 'The action to perform (for all: start, stop, restart, skip, disconnect)',
@ -112,16 +94,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access Forbidden',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -17,7 +17,7 @@ use OpenApi\Attributes as OA;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: SFTP Users'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -28,10 +28,9 @@ use OpenApi\Attributes as OA;
items: new OA\Items(ref: '#/components/schemas/SftpUser')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -44,7 +43,7 @@ use OpenApi\Attributes as OA;
),
tags: ['Stations: SFTP Users'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -52,10 +51,9 @@ use OpenApi\Attributes as OA;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/SftpUser')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -65,7 +63,7 @@ use OpenApi\Attributes as OA;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: SFTP Users'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'SFTP User ID',
@ -80,10 +78,9 @@ use OpenApi\Attributes as OA;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/SftpUser')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -96,7 +93,7 @@ use OpenApi\Attributes as OA;
),
tags: ['Stations: SFTP Users'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Remote Relay ID',
@ -106,15 +103,10 @@ use OpenApi\Attributes as OA;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -124,7 +116,7 @@ use OpenApi\Attributes as OA;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: SFTP Users'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Remote Relay ID',
@ -134,15 +126,10 @@ use OpenApi\Attributes as OA;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -23,7 +23,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Streamers/DJs'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -34,10 +34,9 @@ use Psr\Http\Message\ResponseInterface;
items: new OA\Items(ref: '#/components/schemas/StationStreamer')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -50,7 +49,7 @@ use Psr\Http\Message\ResponseInterface;
),
tags: ['Stations: Streamers/DJs'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -58,10 +57,9 @@ use Psr\Http\Message\ResponseInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/StationStreamer')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -71,7 +69,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Streamers/DJs'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Streamer ID',
@ -86,10 +84,9 @@ use Psr\Http\Message\ResponseInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/StationStreamer')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -102,7 +99,7 @@ use Psr\Http\Message\ResponseInterface;
),
tags: ['Stations: Streamers/DJs'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Streamer ID',
@ -112,15 +109,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -130,7 +122,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Streamers/DJs'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'StationStreamer ID',
@ -140,15 +132,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -22,7 +22,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Web Hooks'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -33,10 +33,9 @@ use Psr\Http\Message\ResponseInterface;
items: new OA\Items(ref: '#/components/schemas/StationWebhook')
)
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Post(
@ -49,7 +48,7 @@ use Psr\Http\Message\ResponseInterface;
),
tags: ['Stations: Web Hooks'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
],
responses: [
new OA\Response(
@ -57,10 +56,9 @@ use Psr\Http\Message\ResponseInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/StationWebhook')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Get(
@ -70,7 +68,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Web Hooks'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Web Hook ID',
@ -85,10 +83,9 @@ use Psr\Http\Message\ResponseInterface;
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/StationWebhook')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Put(
@ -101,7 +98,7 @@ use Psr\Http\Message\ResponseInterface;
),
tags: ['Stations: Web Hooks'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Web Hook ID',
@ -111,15 +108,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
),
OA\Delete(
@ -129,7 +121,7 @@ use Psr\Http\Message\ResponseInterface;
security: OpenApi::API_KEY_SECURITY,
tags: ['Stations: Web Hooks'],
parameters: [
new OA\Parameter(ref: OpenApi::STATION_ID_REQUIRED),
new OA\Parameter(ref: OpenApi::REF_STATION_ID_REQUIRED),
new OA\Parameter(
name: 'id',
description: 'Web Hook ID',
@ -139,15 +131,10 @@ use Psr\Http\Message\ResponseInterface;
),
],
responses: [
new OA\Response(
response: 200,
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
new OA\Response(
response: 403,
description: 'Access denied'
),
new OA\Response(ref: OpenApi::REF_RESPONSE_SUCCESS, response: 200),
new OA\Response(ref: OpenApi::REF_RESPONSE_ACCESS_DENIED, response: 403),
new OA\Response(ref: OpenApi::REF_RESPONSE_NOT_FOUND, response: 404),
new OA\Response(ref: OpenApi::REF_RESPONSE_GENERIC_ERROR, response: 500),
]
)
]

View File

@ -65,7 +65,7 @@ use OpenApi\Attributes as OA;
)
),
OA\Parameter(
name: "station_id_required",
name: "StationIdRequired",
in: "path",
required: true,
schema: new OA\Schema(
@ -76,11 +76,27 @@ use OpenApi\Attributes as OA;
),
),
OA\Response(
response: "todo",
description: "This API call has no documented response (yet)",
response: 'Success',
description: 'Success',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Status')
),
OA\Response(
response: 'AccessDenied',
description: 'Access denied.',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
OA\Response(
response: 'RecordNotFound',
description: 'Record not found.',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
OA\Response(
response: 'GenericError',
description: 'A generic exception has occurred.',
content: new OA\JsonContent(ref: '#/components/schemas/Api_Error')
),
OA\SecurityScheme(
securityScheme: "api_key",
securityScheme: "ApiKey",
type: "apiKey",
name: "X-API-Key",
in: "header"
@ -90,7 +106,12 @@ class OpenApi
{
public const SAMPLE_TIMESTAMP = 1609480800;
public const API_KEY_SECURITY = [['api_key' => []]];
public const API_KEY_SECURITY = [['ApiKey' => []]];
public const STATION_ID_REQUIRED = '#/components/parameters/station_id_required';
public const REF_STATION_ID_REQUIRED = '#/components/parameters/StationIdRequired';
public const REF_RESPONSE_SUCCESS = '#/components/responses/Success';
public const REF_RESPONSE_ACCESS_DENIED = '#/components/responses/AccessDenied';
public const REF_RESPONSE_NOT_FOUND = '#/components/responses/RecordNotFound';
public const REF_RESPONSE_GENERIC_ERROR = '#/components/responses/GenericError';
}

File diff suppressed because it is too large Load Diff