Files
me-joachimhummel-de/lib/api-spec/openapi.yaml
joachimhummel e9f0d1ed98 Merged changes from o10aupva/main
Replit-Task-Id: 96838fc6-bf00-4a8d-ae18-84ba08feec56
2026-05-15 16:11:01 +00:00

112 lines
2.5 KiB
YAML

openapi: 3.1.0
info:
# Do not change the title, if the title changes, the import paths will be broken
title: Api
version: 0.1.0
description: API specification
servers:
- url: /api
description: Base API path
tags:
- name: health
description: Health operations
- name: contact
description: Contact form
paths:
/contact:
post:
operationId: sendContactMessage
tags: [contact]
summary: Send contact form message
description: Sends a contact message via email
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/ContactRequest"
responses:
"200":
description: Message sent successfully
content:
application/json:
schema:
$ref: "#/components/schemas/ContactResponse"
"400":
description: Validation error
content:
application/json:
schema:
$ref: "#/components/schemas/ContactError"
"500":
description: Server error
content:
application/json:
schema:
$ref: "#/components/schemas/ContactError"
/healthz:
get:
operationId: healthCheck
tags: [health]
summary: Health check
description: Returns server health status
responses:
"200":
description: Healthy
content:
application/json:
schema:
$ref: "#/components/schemas/HealthStatus"
components:
schemas:
ContactRequest:
type: object
properties:
name:
type: string
minLength: 1
maxLength: 100
email:
type: string
format: email
maxLength: 200
subject:
type: string
maxLength: 200
message:
type: string
minLength: 1
maxLength: 5000
required:
- name
- email
- message
ContactResponse:
type: object
properties:
success:
type: boolean
message:
type: string
required:
- success
- message
ContactError:
type: object
properties:
success:
type: boolean
message:
type: string
required:
- success
- message
HealthStatus:
type: object
properties:
status:
type: string
required:
- status