52 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
namespace App\Http\Controllers\Api;
 | 
						|
 | 
						|
use OpenApi\Attributes as OA;
 | 
						|
 | 
						|
#[OA\Info(title: 'Coolify', version: '0.1')]
 | 
						|
#[OA\Server(url: 'https://app.coolify.io/api/v1', description: 'Coolify Cloud API. Change the host to your own instance if you are self-hosting.')]
 | 
						|
#[OA\SecurityScheme(
 | 
						|
    type: 'http',
 | 
						|
    scheme: 'bearer',
 | 
						|
    securityScheme: 'bearerAuth',
 | 
						|
    description: 'Go to `Keys & Tokens` / `API tokens` and create a new token. Use the token as the bearer token.')]
 | 
						|
#[OA\Components(
 | 
						|
    responses: [
 | 
						|
        new OA\Response(
 | 
						|
            response: 400,
 | 
						|
            description: 'Invalid token.',
 | 
						|
            content: new OA\JsonContent(
 | 
						|
                type: 'object',
 | 
						|
                properties: [
 | 
						|
                    new OA\Property(property: 'message', type: 'string', example: 'Invalid token.'),
 | 
						|
                ]
 | 
						|
            )),
 | 
						|
        new OA\Response(
 | 
						|
            response: 401,
 | 
						|
            description: 'Unauthenticated.',
 | 
						|
            content: new OA\JsonContent(
 | 
						|
                type: 'object',
 | 
						|
                properties: [
 | 
						|
                    new OA\Property(property: 'message', type: 'string', example: 'Unauthenticated.'),
 | 
						|
                ]
 | 
						|
            )),
 | 
						|
        new OA\Response(
 | 
						|
            response: 404,
 | 
						|
            description: 'Resource not found.',
 | 
						|
            content: new OA\JsonContent(
 | 
						|
                type: 'object',
 | 
						|
                properties: [
 | 
						|
                    new OA\Property(property: 'message', type: 'string', example: 'Resource not found.'),
 | 
						|
                ]
 | 
						|
            )),
 | 
						|
    ],
 | 
						|
)]
 | 
						|
class OpenApi
 | 
						|
{
 | 
						|
    // This class is used to generate OpenAPI documentation
 | 
						|
    // for the Coolify API. It is not a controller and does
 | 
						|
    // not contain any routes. It is used to define the
 | 
						|
    // OpenAPI metadata and security scheme for the API.
 | 
						|
}
 |