-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathswagger.yaml
More file actions
424 lines (424 loc) · 10.2 KB
/
swagger.yaml
File metadata and controls
424 lines (424 loc) · 10.2 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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
basePath: /
definitions:
handlers.HealthResponse:
properties:
status:
example: ok
type: string
timestamp:
example: "2025-09-11T10:00:00Z"
type: string
uptime:
example: 2h30m15s
type: string
version:
example: 1.8.2
type: string
type: object
handlers.SystemConfig:
properties:
description:
example: 文件分享系统
type: string
enableChunk:
example: 1
type: integer
expireStyle:
example:
- minute
- hour
- day
- week
- month
- year
- forever
items:
type: string
type: array
name:
example: FileCodeBox
type: string
openUpload:
example: 1
type: integer
uploadSize:
example: 100
type: integer
type: object
host: localhost:12345
info:
contact:
email: support@swagger.io
name: API Support
url: http://www.swagger.io/support
description: FileCodeBox 是一个用于文件分享和代码片段管理的 Web 应用程序
license:
name: MIT
url: https://github.com/zy84338719/filecodebox/blob/main/LICENSE
termsOfService: http://swagger.io/terms/
title: FileCodeBox API
version: "1.8.2"
paths:
/api/config:
get:
consumes:
- application/json
description: 获取前端所需的系统配置信息
produces:
- application/json
responses:
"200":
description: 系统配置信息
schema:
$ref: '#/definitions/handlers.SystemConfig'
summary: 获取系统配置
tags:
- 系统
/chunk/upload/chunk/{upload_id}/{chunk_index}:
post:
consumes:
- multipart/form-data
description: 上传指定索引的文件分片
parameters:
- description: 上传ID
in: path
name: upload_id
required: true
type: string
- description: 分片索引
in: path
name: chunk_index
required: true
type: integer
- description: 分片文件
in: formData
name: chunk
required: true
type: file
produces:
- application/json
responses:
"200":
description: 上传成功,返回分片哈希
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 上传文件分片
tags:
- 分片上传
/chunk/upload/complete/{upload_id}:
post:
consumes:
- application/json
description: 完成所有分片上传,合并文件并生成分享代码
parameters:
- description: 上传ID
in: path
name: upload_id
required: true
type: string
- description: 完成上传参数
in: body
name: request
required: true
schema:
type: object
produces:
- application/json
responses:
"200":
description: 上传完成,返回分享代码
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 完成分片上传
tags:
- 分片上传
/chunk/upload/init/:
post:
consumes:
- application/json
description: 初始化文件分片上传,返回上传ID和分片信息
parameters:
- description: 上传初始化参数
in: body
name: request
required: true
schema:
type: object
produces:
- application/json
responses:
"200":
description: 初始化成功,返回上传ID和分片信息
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 初始化分片上传
tags:
- 分片上传
/health:
get:
consumes:
- application/json
description: 检查服务器健康状态和构建信息
produces:
- application/json
responses:
"200":
description: 健康状态信息和构建信息
schema:
$ref: '#/definitions/handlers.HealthResponse'
summary: 健康检查
tags:
- 系统
/share/download:
get:
consumes:
- application/json
description: 根据分享代码下载文件或获取文本内容
parameters:
- description: 分享代码
in: query
name: code
required: true
type: string
produces:
- application/octet-stream
- application/json
responses:
"200":
description: 文本内容
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"404":
description: 分享代码不存在
schema:
additionalProperties: true
type: object
summary: 下载分享文件
tags:
- 分享
/share/file/:
post:
consumes:
- multipart/form-data
description: 上传并分享文件,生成分享代码
parameters:
- description: 要分享的文件
in: formData
name: file
required: true
type: file
- default: 1
description: 过期值
in: formData
name: expire_value
type: integer
- default: day
description: 过期样式
enum:
- minute
- hour
- day
- week
- month
- year
- forever
in: formData
name: expire_style
type: string
- default: false
description: 是否需要认证
in: formData
name: require_auth
type: boolean
produces:
- application/json
responses:
"200":
description: 分享成功,返回分享代码和文件信息
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 分享文件
tags:
- 分享
/share/select/:
get:
consumes:
- application/json
description: 根据分享代码获取文件或文本的详细信息
parameters:
- description: 分享代码(GET方式)
in: query
name: code
type: string
- description: 分享代码(POST方式)
in: formData
name: code
type: string
produces:
- application/json
responses:
"200":
description: 文件信息
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"404":
description: 分享代码不存在
schema:
additionalProperties: true
type: object
summary: 获取分享文件信息
tags:
- 分享
post:
consumes:
- application/json
description: 根据分享代码获取文件或文本的详细信息
parameters:
- description: 分享代码(GET方式)
in: query
name: code
type: string
- description: 分享代码(POST方式)
in: formData
name: code
type: string
produces:
- application/json
responses:
"200":
description: 文件信息
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"404":
description: 分享代码不存在
schema:
additionalProperties: true
type: object
summary: 获取分享文件信息
tags:
- 分享
/share/text/:
post:
consumes:
- multipart/form-data
description: 分享文本内容并生成分享代码
parameters:
- description: 文本内容
in: formData
name: text
required: true
type: string
- default: 1
description: 过期值
in: formData
name: expire_value
type: integer
- default: day
description: 过期样式
enum:
- minute
- hour
- day
- week
- month
- year
- forever
in: formData
name: expire_style
type: string
- default: false
description: 是否需要认证
in: formData
name: require_auth
type: boolean
produces:
- application/json
responses:
"200":
description: 分享成功,返回分享代码
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 分享文本内容
tags:
- 分享
securityDefinitions:
ApiKeyAuth:
in: header
name: X-API-Key
type: apiKey
BasicAuth:
type: basic
swagger: "2.0"