parsaaghayi-backend/app/SwaggerDefinitions.php

86 lines
3.0 KiB
PHP

<?php
/**
* @OA\Info(
* title="Parsa Aghayi Portfolio API",
* version="1.0.0",
* description="REST API for Parsa Aghayi's personal portfolio and blog"
* )
*
* @OA\Server(
* url="http://localhost:8000/api",
* description="Development server"
* )
* @OA\Server(
* url="https://backend.parsaaghayi.ir/api",
* description="Production server"
* )
*
* @OA\Schema(
* schema="Skill",
* type="object",
* @OA\Property(property="id", type="integer"),
* @OA\Property(property="title", type="string"),
* @OA\Property(property="description", type="string"),
* @OA\Property(property="image", type="string"),
* @OA\Property(property="link", type="string", nullable=true),
* @OA\Property(property="percentage", type="integer")
* )
*
* @OA\Schema(
* schema="AboutMe",
* type="object",
* @OA\Property(property="id", type="integer"),
* @OA\Property(property="title", type="string"),
* @OA\Property(property="description", type="string"),
* @OA\Property(property="image", type="string"),
* @OA\Property(property="skills", type="array", @OA\Items(ref="#/components/schemas/Skill"))
* )
*
* @OA\Schema(
* schema="Service",
* type="object",
* @OA\Property(property="id", type="integer"),
* @OA\Property(property="imageSrc", type="string"),
* @OA\Property(property="altText", type="string"),
* @OA\Property(property="title", type="string"),
* @OA\Property(property="description", type="string"),
* @OA\Property(property="created_at", type="string", format="datetime"),
* @OA\Property(property="updated_at", type="string", format="datetime")
* )
*
* @OA\Schema(
* schema="Project",
* type="object",
* @OA\Property(property="id", type="integer"),
* @OA\Property(property="title", type="string"),
* @OA\Property(property="category", type="string", nullable=true),
* @OA\Property(property="images", type="array", @OA\Items(type="object")),
* @OA\Property(property="created_at", type="string", format="datetime"),
* @OA\Property(property="updated_at", type="string", format="datetime")
* )
*
* @OA\Schema(
* schema="Category",
* type="object",
* @OA\Property(property="id", type="integer"),
* @OA\Property(property="title", type="string"),
* @OA\Property(property="image", type="string")
* )
*
* @OA\Schema(
* schema="Post",
* type="object",
* @OA\Property(property="id", type="integer"),
* @OA\Property(property="title", type="string"),
* @OA\Property(property="body", type="string"),
* @OA\Property(property="excerpt", type="string"),
* @OA\Property(property="slug", type="string"),
* @OA\Property(property="featured_image", type="string", nullable=true),
* @OA\Property(property="author", type="object"),
* @OA\Property(property="category", type="object"),
* @OA\Property(property="tags", type="array", @OA\Items(type="object")),
* @OA\Property(property="published_at", type="string", format="datetime", nullable=true)
* )
*/