Проект разделен на два репозитория
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
openapi: 3.1.0
|
||||
info: {title: HAN Message Safety, version: 1.0.0}
|
||||
paths:
|
||||
/health/live:
|
||||
get: {responses: {"200": {description: Live}}}
|
||||
/health/ready:
|
||||
get: {responses: {"200": {description: Ready}, "503": {description: Redis unavailable}}}
|
||||
/internal/safety/v1/messages/check:
|
||||
post:
|
||||
security: [{ServiceToken: []}]
|
||||
parameters: [{$ref: "#/components/parameters/RequestId"}]
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema: {$ref: "#/components/schemas/CheckRequest"}
|
||||
responses:
|
||||
"200": {description: Allow}
|
||||
"203": {description: Pending}
|
||||
"403": {description: Deny}
|
||||
"409": {description: Conflicting message id}
|
||||
"503": {description: Redis unavailable}
|
||||
/internal/safety/v1/messages/tasks/{task_id}:
|
||||
get:
|
||||
security: [{ServiceToken: []}]
|
||||
parameters:
|
||||
- {name: task_id, in: path, required: true, schema: {type: string, format: uuid}}
|
||||
- {$ref: "#/components/parameters/RequestId"}
|
||||
responses:
|
||||
"200": {description: Allow}
|
||||
"203": {description: Pending}
|
||||
"400": {description: Validation error or terminal stub rejection}
|
||||
"404": {description: Task not found}
|
||||
components:
|
||||
securitySchemes:
|
||||
ServiceToken: {type: apiKey, in: header, name: X-Service-Token}
|
||||
parameters:
|
||||
RequestId: {name: X-Request-ID, in: header, required: false, schema: {type: string}}
|
||||
schemas:
|
||||
Attachment:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
required: [attachment_id, quarantine_object_key, mime_type, size_bytes, checksum]
|
||||
properties:
|
||||
attachment_id: {type: string, format: uuid}
|
||||
quarantine_object_key: {type: string, maxLength: 1024}
|
||||
mime_type: {type: string, maxLength: 255}
|
||||
size_bytes: {type: integer, minimum: 0}
|
||||
checksum: {type: string, pattern: "^sha256:[0-9a-fA-F]{64}$"}
|
||||
CheckRequest:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
required: [message_id, content_kind]
|
||||
properties:
|
||||
message_id: {type: string, format: uuid}
|
||||
content_kind: {type: string, enum: [text, file]}
|
||||
text: {type: string, maxLength: 10000, default: ""}
|
||||
attachment: {anyOf: [{$ref: "#/components/schemas/Attachment"}, {type: "null"}]}
|
||||
Reference in New Issue
Block a user