Files
http-client-app-plan/contracts/app-api.openapi.yaml
T

95 lines
2.3 KiB
YAML

openapi: 3.1.0
info:
title: HTTP Client App Internal API
version: 0.1.0
description: Internal REST API contract for the local HTTP Client application.
servers:
- url: http://127.0.0.1:32180
description: Local development server
paths:
/api/health:
get:
operationId: getHealth
summary: Check local service health
tags:
- system
responses:
"200":
description: Service is healthy.
content:
application/json:
schema:
allOf:
- $ref: "#/components/schemas/ApiEnvelope"
- type: object
properties:
data:
$ref: "#/components/schemas/HealthData"
examples:
healthy:
value:
success: true
data:
status: ok
version: 0.1.0
error: null
requestId: req_01HZY7R4S7S0Y73ZJ81EF1Z8Y4
timestamp: "2026-06-06T10:20:30Z"
components:
schemas:
ApiEnvelope:
type: object
required:
- success
- data
- error
- requestId
- timestamp
properties:
success:
type: boolean
description: Whether the request completed successfully.
data:
description: Response payload. Null when the request failed.
error:
oneOf:
- $ref: "#/components/schemas/ApiError"
- type: "null"
requestId:
type: string
minLength: 1
timestamp:
type: string
format: date-time
additionalProperties: false
ApiError:
type: object
required:
- code
- message
properties:
code:
type: string
minLength: 1
message:
type: string
minLength: 1
details:
description: Optional structured error details.
additionalProperties: false
HealthData:
type: object
required:
- status
properties:
status:
type: string
enum:
- ok
version:
type: string
uptimeSeconds:
type: integer
minimum: 0
additionalProperties: false