Swagger-PHP v3.x

Generate interactive OpenAPI documentation for your RESTful API using doctrine annotations.

Get Started →

OpenAPI specification

Compatible with the OpenAPI Specification version 3. formerly known as Swagger.

Use @Annotations

Write the documentation inside the php source files which helps to keep the documentation in sync.

Useful error messages

Enhanced errors messages with hints and context.

Install with composer:

composer require zircote/swagger-php

Create a php file:

$openapi = \OpenApi\Generator::scan(['/path/to/project']);
header('Content-Type: application/x-yaml');
echo $openapi->toYaml();

Add annotations to your php files.

 * @OA\Info(title="My First API", version="0.1")

 * @OA\Get(
 *     path="/api/resource.json",
 *     @OA\Response(response="200", description="An example resource")
 * )

And view and interact with your API using Swagger UI (opens new window)