-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathswagger.yaml
152 lines (152 loc) · 3.63 KB
/
swagger.yaml
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
openapi: 3.0.3
info:
title: Movie Data API
version: 0.0.1
servers:
- url: http://localhost/api/v3
paths:
/movie:
post:
summary: Upload a movie directly via the API
operationId: uploadMovie
requestBody:
content:
application/json:
schema:
type: object
items:
$ref: '#/components/schemas/movie'
responses:
'200':
description: Movie uploaded successfully
content:
application/json:
schema:
$ref: '#/components/schemas/movie'
'400':
description: Invalid movie data
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/error'
/movies/year/{year}:
get:
summary: Get Movies by year
description: Get movie by year
operationId: getMovieByYear
parameters:
- name: year
in: path
description: Return movies by year
required: true
schema:
type: integer
format: int64
responses:
'404':
description: Not found
'200':
description: OK
/movies/castmember/{castmember}:
get:
summary: Get Movies by cast member
description: Get movie by cast member
operationId: getMovieByCastMember
parameters:
- name: castmember
in: path
description: Return movies by Cast Members
required: true
schema:
type: string
responses:
'404':
description: Not found
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/movie'
/movies/name/{name}:
get:
summary: Get Movies by name
description: Get movie by name
operationId: getMovieByName
parameters:
- name: name
in: path
description: Return movies by Name
required: true
schema:
type: string
responses:
'404':
description: Not found
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/movie'
/movies/genre/{genre}:
get:
summary: Get Movies by genre
description: Get movie by genre
operationId: getMovieBygenre
parameters:
- name: genre
in: path
description: Return movies by genre
required: true
schema:
type: string
responses:
'404':
description: Not found
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/movie'
components:
schemas:
error:
type: object
properties:
message:
type: string
movie:
type: object
required:
- title
- year
- cast
- genres
properties:
title:
type: string
year:
type: integer
format: int32
cast:
type: array
items:
type: string
genres:
type: array
items:
type: string