first commit
This commit is contained in:
150
example-swagger.yaml
Normal file
150
example-swagger.yaml
Normal file
@@ -0,0 +1,150 @@
|
||||
openapi: 3.0.1
|
||||
info:
|
||||
title: Example API
|
||||
description: API de ejemplo para probar el generador
|
||||
version: 1.0.0
|
||||
tags:
|
||||
- name: User
|
||||
description: Operaciones de usuario
|
||||
- name: Product
|
||||
description: Operaciones de productos
|
||||
paths:
|
||||
/v1/users:
|
||||
get:
|
||||
tags:
|
||||
- User
|
||||
summary: Obtener lista de usuarios
|
||||
operationId: getUsers
|
||||
parameters:
|
||||
- name: search
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/UserResponse'
|
||||
post:
|
||||
tags:
|
||||
- User
|
||||
summary: Crear usuario
|
||||
operationId: createUser
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/CreateUserRequest'
|
||||
responses:
|
||||
'201':
|
||||
description: Created
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/UserSchema'
|
||||
/v1/users/{id}:
|
||||
get:
|
||||
tags:
|
||||
- User
|
||||
summary: Obtener usuario por ID
|
||||
operationId: getUserById
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/UserSchema'
|
||||
delete:
|
||||
tags:
|
||||
- User
|
||||
summary: Eliminar usuario
|
||||
operationId: deleteUser
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
responses:
|
||||
'204':
|
||||
description: No Content
|
||||
/v1/products:
|
||||
get:
|
||||
tags:
|
||||
- Product
|
||||
summary: Obtener lista de productos
|
||||
operationId: getProducts
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/ProductResponse'
|
||||
components:
|
||||
schemas:
|
||||
UserSchema:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
example: 1
|
||||
name:
|
||||
type: string
|
||||
example: Juan Pérez
|
||||
email:
|
||||
type: string
|
||||
example: juan@example.com
|
||||
active:
|
||||
type: boolean
|
||||
example: true
|
||||
CreateUserRequest:
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
- email
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
example: Juan Pérez
|
||||
email:
|
||||
type: string
|
||||
example: juan@example.com
|
||||
UserResponse:
|
||||
type: object
|
||||
properties:
|
||||
users:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/UserSchema'
|
||||
ProductSchema:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
example: 100
|
||||
name:
|
||||
type: string
|
||||
example: Laptop HP
|
||||
price:
|
||||
type: number
|
||||
format: float
|
||||
example: 599.99
|
||||
ProductResponse:
|
||||
type: object
|
||||
properties:
|
||||
products:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/ProductSchema'
|
||||
Reference in New Issue
Block a user