23 lines
1.4 KiB
JSON
23 lines
1.4 KiB
JSON
{
|
|
"openapi": "3.1.0",
|
|
"info": {"title": "YoVision standard event ingest API", "version": "1.0.0"},
|
|
"paths": {
|
|
"/v1/events": {
|
|
"post": {
|
|
"summary": "Ingest one immutable anonymous safety event",
|
|
"parameters": [
|
|
{"name": "X-YoVision-Relay-ID", "in": "header", "required": false, "description": "Audited transport hop. A relay must not change producer_id or source_event_id.", "schema": {"type": "string", "maxLength": 128}}
|
|
],
|
|
"requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "./event.schema.json"}}}},
|
|
"responses": {
|
|
"201": {"description": "Created", "content": {"application/json": {"schema": {"$ref": "./ingest-result.schema.json"}}}},
|
|
"200": {"description": "Exact duplicate; returns the original Bell Event identity", "content": {"application/json": {"schema": {"$ref": "./ingest-result.schema.json"}}}},
|
|
"400": {"description": "Invalid or sensitive payload", "content": {"application/problem+json": {"schema": {"$ref": "./problem.schema.json"}}}},
|
|
"409": {"description": "Same idempotency key with a different canonical payload", "content": {"application/problem+json": {"schema": {"$ref": "./problem.schema.json"}}}},
|
|
"422": {"description": "Unsupported schema major version", "content": {"application/problem+json": {"schema": {"$ref": "./problem.schema.json"}}}}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|