-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathswagger.yaml
117 lines (117 loc) · 3.15 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
swagger: "2.0"
info:
version: 2.0.0
title: dairy-queen
description: I've got something for you!
termsOfService: "don't have any"
contact:
email: [email protected]
host: dairy-queen.herokuapp.com
basePath: /
schemes:
- http
produces:
- application/json
paths:
/double-dips:
get:
description: Calculate all the double dips according to the
query parameters.
parameters:
- name: location
in: query
description: Where should the returned theatres be near?
This value will be used for caching purposes and
needs to be normalized.
required: true
type: string
format: normalized location
- name: days_from_now
default: 0
in: query
description: How many days from now will you be double dipping?
required: false
type: integer
format: int32
- name: max_wait_mins
default: 45
in: query
description: How long (in minutes) are you will to wait between
the end of a movie and the start of the next?
type: integer
format: int32
- name: max_overlap_mins
default: 5
in: query
description: How much overlap (in minutes) will you accept between
the end of one film, and the start of another? Use this parameter
if you are okay with leaving a movie early, or missing a few
minutes of trailers.
type: integer
format: int32
responses:
200:
description: Double Dips have been successfully calculated.
The `showings` property of each Theatre is a time-ordered array.
schema:
type: array
items:
$ref: '#/definitions/Theatre'
400:
description: unexpected error
schema:
$ref: '#/definitions/Error'
500:
description: parse error
schema:
$ref: '#/definitions/Error'
definitions:
Showing:
required:
- movie
- startTime
- endTime
- length
properties:
length:
type: integer
description: length of the movie in minutes.
movie:
type: string
startTime:
type: string
description: Military time formatted time-string
(e.g., '09:45', '23:30').
x-time-format: '%H:%M'
endTime:
type: string
description: Military time formatted time-string
(e.g., '09:45', '23:30').
x-time-format: '%H:%M'
Theatre:
required:
- name
- info
- doubleDips
properties:
name:
type: string
info:
type: string
description: info as provided by google. Often contains
address and phone number of theatre.
doubleDips:
type: array
items:
$ref: '#/definitions/DoubleDip'
DoubleDip:
type: array
description: this is a time-ordered array (ascending, according to `startTime`)
items:
$ref: '#/definitions/Showing'
Error:
required:
- msg
properties:
msg:
type: string