Last change
on this file since 460 was 460, checked in by alloc, 15 months ago |
More OpenAPI specs added
OpenAPI specs cleanup to have everything validate fine
Added CORS support to API endpoints
|
File size:
4.0 KB
|
Line | |
---|
1 | openapi: 3.1.0
|
---|
2 | info:
|
---|
3 | title: 7 Days To Die WebAPI
|
---|
4 | version: '1.0.0'
|
---|
5 | servers:
|
---|
6 | - url: /
|
---|
7 |
|
---|
8 | components:
|
---|
9 | schemas:
|
---|
10 | ResultEnvelopeMeta:
|
---|
11 | type: object
|
---|
12 | properties:
|
---|
13 | serverTime:
|
---|
14 | type: string
|
---|
15 | format: date-time
|
---|
16 | requestMethod:
|
---|
17 | type: string
|
---|
18 | examples:
|
---|
19 | - GET
|
---|
20 | - POST
|
---|
21 | requestSubpath:
|
---|
22 | type: string
|
---|
23 | examples:
|
---|
24 | - search
|
---|
25 | description: >-
|
---|
26 | URL path (without query arguments) starting from after the API name,
|
---|
27 | excluding the initial slash '/'
|
---|
28 | requestBody:
|
---|
29 | type:
|
---|
30 | - object
|
---|
31 | - 'null'
|
---|
32 | examples:
|
---|
33 | - id: a
|
---|
34 | filter: 123
|
---|
35 | description: If erroneous request had a valid JSON body it is included here
|
---|
36 | errorCode:
|
---|
37 | type: string
|
---|
38 | examples:
|
---|
39 | - GET_WITH_BODY
|
---|
40 | - INVALID_COMMAND
|
---|
41 | description: Custom error identifier
|
---|
42 | exceptionMessage:
|
---|
43 | type: string
|
---|
44 | description: Message (If API execution threw an exception)
|
---|
45 | exceptionTrace:
|
---|
46 | type: string
|
---|
47 | description: Stack trace (If API execution threw an exception)
|
---|
48 | required:
|
---|
49 | - serverTime
|
---|
50 | - requestMethod
|
---|
51 | - requestSubpath
|
---|
52 | - requestBody
|
---|
53 | - errorCode
|
---|
54 |
|
---|
55 | TypeEntityId:
|
---|
56 | type: integer
|
---|
57 | minimum: 0
|
---|
58 | examples:
|
---|
59 | - 171
|
---|
60 | description: World-unique EntityID
|
---|
61 |
|
---|
62 | TypeVector3i:
|
---|
63 | type: object
|
---|
64 | properties:
|
---|
65 | x:
|
---|
66 | type: integer
|
---|
67 | examples:
|
---|
68 | - -123
|
---|
69 | y:
|
---|
70 | type: integer
|
---|
71 | examples:
|
---|
72 | - 61
|
---|
73 | z:
|
---|
74 | type: integer
|
---|
75 | examples:
|
---|
76 | - 734
|
---|
77 | required:
|
---|
78 | - x
|
---|
79 | - 'y'
|
---|
80 | - z
|
---|
81 | description: 3D vector in full blocks
|
---|
82 |
|
---|
83 | TypeUserIdString:
|
---|
84 | type: string
|
---|
85 | pattern: '^\[a-zA-Z]+_[\w]+$'
|
---|
86 | examples:
|
---|
87 | - 'Steam_76561198021925107'
|
---|
88 | description: User ID including platform
|
---|
89 |
|
---|
90 | TypeUserIdObject:
|
---|
91 | anyOf:
|
---|
92 | - type: object
|
---|
93 | properties:
|
---|
94 | combinedString:
|
---|
95 | $ref: '#/components/schemas/TypeUserIdString'
|
---|
96 | platformId:
|
---|
97 | type: string
|
---|
98 | examples:
|
---|
99 | - Steam
|
---|
100 | - XBL
|
---|
101 | description: Gaming platform the ID references
|
---|
102 | userId:
|
---|
103 | type: string
|
---|
104 | examples:
|
---|
105 | - '76561198021925107'
|
---|
106 | description: Unique ID of the user within the given gaming platform
|
---|
107 | required:
|
---|
108 | - combinedString
|
---|
109 | - platformId
|
---|
110 | - userId
|
---|
111 | description: User ID
|
---|
112 | - type: 'null'
|
---|
113 |
|
---|
114 |
|
---|
115 | responses:
|
---|
116 | HttpEmptyEnvelopedResponse:
|
---|
117 | description: Empty result
|
---|
118 | content:
|
---|
119 | application/json:
|
---|
120 | schema:
|
---|
121 | type: object
|
---|
122 | properties:
|
---|
123 | data:
|
---|
124 | type: array
|
---|
125 | items:
|
---|
126 | type: 'null'
|
---|
127 | maxItems: 0
|
---|
128 | examples:
|
---|
129 | - []
|
---|
130 | meta:
|
---|
131 | $ref: '#/components/schemas/ResultEnvelopeMeta'
|
---|
132 | required:
|
---|
133 | - data
|
---|
134 | - meta
|
---|
135 |
|
---|
136 | Unauthorized:
|
---|
137 | description: Not authorized to call this operation
|
---|
138 |
|
---|
139 |
|
---|
140 | securitySchemes:
|
---|
141 | apiTokenName:
|
---|
142 | type: apiKey
|
---|
143 | in: header
|
---|
144 | name: X-SDTD-API-TOKENNAME
|
---|
145 | description: Authentication by a "WebToken" with token name and token secret, passed in as header fields. This specifies the token name.
|
---|
146 | apiTokenSecret:
|
---|
147 | type: apiKey
|
---|
148 | in: header
|
---|
149 | name: X-SDTD-API-SECRET
|
---|
150 | description: Authentication by a "WebToken" with token name and token secret, passed in as header fields. This specifies the token secret.
|
---|
151 | sessionCookie:
|
---|
152 | type: apiKey
|
---|
153 | in: cookie
|
---|
154 | name: sid
|
---|
155 | description: Authentication by session cookie. A cookie can be received from the session endpoints.
|
---|
156 |
|
---|
157 |
|
---|
158 | paths:
|
---|
Note:
See
TracBrowser
for help on using the repository browser.