-
Notifications
You must be signed in to change notification settings - Fork 1
/
swagger.yaml
101 lines (101 loc) · 2.42 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
swagger: '2.0'
info:
description: >-
Email Service
version: 1.0.0
title: Email service
basePath: /
tags:
- name: email
description: 'Email request payload'
schemes:
- http
paths:
/email:
post:
tags:
- email
summary: Send Email
consumes:
- application/json
produces:
- application/json
parameters:
- in: body
name: body
description: Email POST request body
required: true
schema:
$ref: '#/definitions/email_post'
responses:
'200':
description: Successfully sent email.
schema:
type: object
properties:
sent:
type: boolean
description: email is Successfully sent or failed
example: true
'500':
description: Failed to send email.
schema:
type: object
properties:
sent:
type: boolean
description: email is Successfully sent or failed
example: false
/metrics:
get:
tags:
- metrics
summary: Metrics for Email sent or failed
consumes:
- application/json
produces:
- application/json
responses:
'200':
description: Metric counters for email success and failures
schema:
type: object
properties:
email:
type: object
description: Metrics for email successfully sent or failed
example: { sent: 2, fail: 1}
definitions:
email_post:
type: object
required:
- to
- subject
- body
properties:
to:
type: array
items:
type: string
example: ['foo@bar.com', 'baz@bar.com']
description: an array of email address to send email
bcc:
type: array
items:
type: string
example: ['foo@bar.com', 'baz@bar.com']
description: an array of email address to bcc
cc:
type: array
items:
type: string
example: ['foo@bar.com', 'baz@bar.com']
description: an array of email address to cc
subject:
type: string
example: Hi there!
description: subject of email
body:
type: string
example: content of the email
description: plain text email body