-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapi-spec.yaml
146 lines (142 loc) · 3.79 KB
/
api-spec.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
openapi: 3.0.0
info:
version: 1.0.0
title: Accounts API
description: Account example API
servers:
- url: https://integration-addon-test-api-app-66f66763cca2.herokuapp.com/
paths:
/hello:
get:
description: Be nice, be happy
parameters:
- name: name
in: query
schema:
type: string
required: true
responses:
'200':
description: Says hello
content:
text/plain:
schema:
type: string
/accounts:
post:
description: Returns list of [optionally] edited array of Accounts
x-salesforce:
permissionSets: [AccountApi]
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
count:
type: integer
responses:
'200':
description: Successfully returned a list of Accounts
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/DeveloperError'
'503':
$ref: '#/components/responses/UnknownError'
/unitofwork:
post:
description:
Receives a payload containing Account, Contact, and Case details and uses the
Unit of Work pattern to assign the corresponding values to to its Record
while maintaining the relationships. It then commits the unit of work and
returns the Record Id's for each object.
x-salesforce:
permissionSets: [AccountApi]
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
accountName:
type: string
lastName:
type: string
subject:
type: string
responses:
'200':
description: Successfully returned a list of Accounts
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/DeveloperError'
'503':
$ref: '#/components/responses/UnknownError'
components:
responses:
NotFound:
description: The specified resource was not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
DeveloperError:
description: DeveloperError
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
UnknownError:
description: UnknownrError
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
# Schema for error response body
Error:
type: object
properties:
code:
type: string
message:
type: string
required:
- code
- message