-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathtinynode-shared-components.openapi.yaml
More file actions
105 lines (105 loc) · 2.96 KB
/
Copy pathtinynode-shared-components.openapi.yaml
File metadata and controls
105 lines (105 loc) · 2.96 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
openapi: 3.0.3
info:
title: TinyNode Shared Components
version: 0.1.0-alpha.1
description: >-
Shared schema components reused by multiple TinyNode seams. TinyNode route
handlers are sourced from CenterForDigitalHumanities/TinyNode routes/
(create.js, update.js, overwrite.js, query.js). TinyNode persists to
rerum_server_nodejs at store.rerum.io/v1.
externalDocs:
description: TinyNode routes source of truth
url: https://github.com/CenterForDigitalHumanities/TinyNode/tree/main/routes
x-upstream-provider:
name: rerum_server_nodejs
baseUrl: https://store.rerum.io/v1
components:
schemas:
HealthResponse:
type: object
required:
- status
properties:
status:
type: string
enum: [ok]
additionalProperties: true
ReadinessResponse:
type: object
required:
- status
- timestamp
properties:
status:
type: string
enum: [ready]
timestamp:
type: string
format: date-time
additionalProperties: true
OpenApiDocumentResponse:
type: object
additionalProperties: true
DocumentPayload:
type: object
description: >-
Request document with stable core fields and open extension fields.
Consumer-specific metadata can be included without breaking this
contract.
properties:
'@id':
type: string
description: Existing identifier for update/overwrite semantics.
'@context':
description: JSON-LD context when present.
oneOf:
- type: string
- type: array
- type: object
'@type':
description: JSON-LD type when present.
oneOf:
- type: string
- type: array
additionalProperties: true
DocumentResponse:
type: object
description: Response document with required identity and open extension fields.
required:
- '@id'
properties:
'@id':
type: string
description: Canonical TinyNode identifier for the document.
additionalProperties: true
QueryResponse:
description: Query responses may be a raw array or a wrapped object.
oneOf:
- type: array
items:
$ref: '#/components/schemas/DocumentResponse'
- type: object
required:
- results
properties:
results:
type: array
items:
$ref: '#/components/schemas/DocumentResponse'
total:
type: integer
minimum: 0
additionalProperties: true
ErrorResponse:
type: object
description: Generic error envelope used across operations.
properties:
message:
type: string
error:
type: string
status:
type: integer
minimum: 100
maximum: 599
additionalProperties: true