163 lines
No EOL
4.2 KiB
YAML
163 lines
No EOL
4.2 KiB
YAML
openapi: "3.0.3"
|
|
info:
|
|
title: sfu
|
|
version: 0.1.0
|
|
description: file upload server
|
|
servers:
|
|
- url: http://localhost:8080/api/v1/
|
|
description: local server
|
|
paths:
|
|
/files:
|
|
get:
|
|
summary: "list all uploaded files"
|
|
description: "list all uploaded files"
|
|
operationId: "list_files"
|
|
responses:
|
|
200:
|
|
description: "file list successful"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
format: html
|
|
|
|
500:
|
|
description: "internal server error"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
default: "internal server error"
|
|
post:
|
|
summary: "upload file"
|
|
description: "uploaded a file"
|
|
operationId: "upload_file"
|
|
requestBody:
|
|
content:
|
|
multipart/form-data:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
file:
|
|
type: string
|
|
format: binary
|
|
description: "file to upload"
|
|
parameters:
|
|
- name: force
|
|
in: query
|
|
description: "force upload file which may overwrite an existing file with the same name"
|
|
required: false
|
|
schema:
|
|
type: boolean
|
|
default: false
|
|
responses:
|
|
201:
|
|
description: "file upload successful"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
409:
|
|
description: "file already exists"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
default: "file already exists"
|
|
500:
|
|
description: "internal server error"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
|
|
default: "internal server error"
|
|
/files/{file_name}:
|
|
get:
|
|
summary: "get file"
|
|
description: "get file"
|
|
operationId: "get_file"
|
|
parameters:
|
|
- name: file_name
|
|
in: path
|
|
description: "file name"
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
200:
|
|
description: "file download successful"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
format: binary
|
|
404:
|
|
description: "file not found"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
default: "file not found"
|
|
500:
|
|
description: "internal server error"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
default: "internal server error"
|
|
delete:
|
|
summary: "delete file"
|
|
description: "delete file"
|
|
operationId: "delete_file"
|
|
parameters:
|
|
- name: file_name
|
|
in: path
|
|
description: "file name"
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
200:
|
|
description: "file delete successful"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
default: "file delete successful"
|
|
404:
|
|
description: "file not found"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
default: "file not found"
|
|
500:
|
|
description: "internal server error"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
default: "internal server error"
|
|
/health:
|
|
get:
|
|
summary: "health check"
|
|
description: "health check"
|
|
operationId: "health_check"
|
|
responses:
|
|
200:
|
|
description: "health check successful"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
default: "health check successful"
|
|
500:
|
|
description: "internal server error"
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
default: "internal server error" |