@epilot/sdk 2.19.3 → 2.19.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/definitions/access-token-runtime.json +1 -0
- package/definitions/access-token.json +835 -0
- package/definitions/address-runtime.json +1 -0
- package/definitions/address-suggestions-runtime.json +1 -0
- package/definitions/address-suggestions.json +582 -0
- package/definitions/address.json +578 -0
- package/definitions/ai-agents-runtime.json +1 -0
- package/definitions/ai-agents.json +2863 -0
- package/definitions/app-runtime.json +1 -0
- package/definitions/app.json +5743 -0
- package/definitions/audit-logs-runtime.json +1 -0
- package/definitions/audit-logs.json +305 -0
- package/definitions/automation-runtime.json +1 -0
- package/definitions/automation.json +5557 -0
- package/definitions/billing-runtime.json +1 -0
- package/definitions/billing.json +2386 -0
- package/definitions/blueprint-manifest-runtime.json +1 -0
- package/definitions/blueprint-manifest.json +7718 -0
- package/definitions/calendar-runtime.json +1 -0
- package/definitions/calendar.json +2904 -0
- package/definitions/configuration-hub-runtime.json +1 -0
- package/definitions/configuration-hub.json +2250 -0
- package/definitions/consent-runtime.json +1 -0
- package/definitions/consent.json +344 -0
- package/definitions/customer-portal-runtime.json +1 -0
- package/definitions/customer-portal.json +19919 -0
- package/definitions/dashboard-runtime.json +1 -0
- package/definitions/dashboard.json +1355 -0
- package/definitions/data-governance-runtime.json +1 -0
- package/definitions/data-governance.json +1126 -0
- package/definitions/deduplication-runtime.json +1 -0
- package/definitions/deduplication.json +782 -0
- package/definitions/design-runtime.json +1 -0
- package/definitions/design.json +1827 -0
- package/definitions/document-runtime.json +1 -0
- package/definitions/document.json +758 -0
- package/definitions/email-settings-runtime.json +1 -0
- package/definitions/email-settings.json +3736 -0
- package/definitions/email-template-runtime.json +1 -0
- package/definitions/email-template.json +1441 -0
- package/definitions/entity-mapping-runtime.json +1 -0
- package/definitions/entity-mapping.json +1642 -0
- package/definitions/entity-runtime.json +1 -0
- package/definitions/entity.json +11517 -0
- package/definitions/environments-runtime.json +1 -0
- package/definitions/environments.json +539 -0
- package/definitions/event-catalog-runtime.json +1 -0
- package/definitions/event-catalog.json +1524 -0
- package/definitions/file-runtime.json +1 -0
- package/definitions/file.json +3905 -0
- package/definitions/iban-runtime.json +1 -0
- package/definitions/iban.json +132 -0
- package/definitions/integration-toolkit-runtime.json +1 -0
- package/definitions/integration-toolkit.json +12769 -0
- package/definitions/journey-runtime.json +1 -0
- package/definitions/journey.json +2640 -0
- package/definitions/kanban-runtime.json +1 -0
- package/definitions/kanban.json +1506 -0
- package/definitions/message-runtime.json +1 -0
- package/definitions/message.json +3667 -0
- package/definitions/metering-runtime.json +1 -0
- package/definitions/metering.json +3132 -0
- package/definitions/notes-runtime.json +1 -0
- package/definitions/notes.json +1698 -0
- package/definitions/notification-runtime.json +1 -0
- package/definitions/notification.json +1439 -0
- package/definitions/organization-runtime.json +1 -0
- package/definitions/organization.json +1192 -0
- package/definitions/partner-directory-runtime.json +1 -0
- package/definitions/partner-directory.json +2284 -0
- package/definitions/permissions-runtime.json +1 -0
- package/definitions/permissions.json +1598 -0
- package/definitions/pricing-runtime.json +1 -0
- package/definitions/pricing-tier-runtime.json +1 -0
- package/definitions/pricing-tier.json +105 -0
- package/definitions/pricing.json +11569 -0
- package/definitions/purpose-runtime.json +1 -0
- package/definitions/purpose.json +524 -0
- package/definitions/query-runtime.json +1 -0
- package/definitions/query.json +3178 -0
- package/definitions/sandbox-runtime.json +1 -0
- package/definitions/sandbox.json +453 -0
- package/definitions/sharing-runtime.json +1 -0
- package/definitions/sharing.json +956 -0
- package/definitions/snapshot-runtime.json +1 -0
- package/definitions/snapshot.json +1103 -0
- package/definitions/submission-runtime.json +1 -0
- package/definitions/submission.json +313 -0
- package/definitions/targeting-runtime.json +1 -0
- package/definitions/targeting.json +2222 -0
- package/definitions/template-variables-runtime.json +1 -0
- package/definitions/template-variables.json +1416 -0
- package/definitions/user-runtime.json +1 -0
- package/definitions/user.json +3051 -0
- package/definitions/validation-rules-runtime.json +1 -0
- package/definitions/validation-rules.json +2365 -0
- package/definitions/webhooks-runtime.json +1 -0
- package/definitions/webhooks.json +1875 -0
- package/definitions/workflow-definition-runtime.json +1 -0
- package/definitions/workflow-definition.json +3592 -0
- package/definitions/workflow-runtime.json +1 -0
- package/definitions/workflow.json +4669 -0
- package/dist/apis/access-token.cjs +6 -6
- package/dist/apis/access-token.js +1 -1
- package/dist/apis/address-suggestions.cjs +6 -6
- package/dist/apis/address-suggestions.js +1 -1
- package/dist/apis/address.cjs +6 -6
- package/dist/apis/address.js +1 -1
- package/dist/apis/ai-agents.cjs +6 -6
- package/dist/apis/ai-agents.js +1 -1
- package/dist/apis/app.cjs +6 -6
- package/dist/apis/app.js +1 -1
- package/dist/apis/audit-logs.cjs +6 -6
- package/dist/apis/audit-logs.js +1 -1
- package/dist/apis/automation.cjs +6 -6
- package/dist/apis/automation.js +1 -1
- package/dist/apis/billing.cjs +6 -6
- package/dist/apis/billing.js +1 -1
- package/dist/apis/blueprint-manifest.cjs +6 -6
- package/dist/apis/blueprint-manifest.js +1 -1
- package/dist/apis/calendar.cjs +6 -6
- package/dist/apis/calendar.js +1 -1
- package/dist/apis/configuration-hub.cjs +6 -6
- package/dist/apis/configuration-hub.js +1 -1
- package/dist/apis/consent.cjs +6 -6
- package/dist/apis/consent.js +1 -1
- package/dist/apis/customer-portal.cjs +6 -6
- package/dist/apis/customer-portal.js +1 -1
- package/dist/apis/dashboard.cjs +6 -6
- package/dist/apis/dashboard.js +1 -1
- package/dist/apis/data-governance.cjs +6 -6
- package/dist/apis/data-governance.js +1 -1
- package/dist/apis/deduplication.cjs +6 -6
- package/dist/apis/deduplication.js +1 -1
- package/dist/apis/design.cjs +6 -6
- package/dist/apis/design.js +1 -1
- package/dist/apis/document.cjs +6 -6
- package/dist/apis/document.js +1 -1
- package/dist/apis/email-settings.cjs +6 -6
- package/dist/apis/email-settings.js +1 -1
- package/dist/apis/email-template.cjs +6 -6
- package/dist/apis/email-template.js +1 -1
- package/dist/apis/entity-mapping.cjs +6 -6
- package/dist/apis/entity-mapping.js +1 -1
- package/dist/apis/entity.cjs +6 -6
- package/dist/apis/entity.js +1 -1
- package/dist/apis/environments.cjs +6 -6
- package/dist/apis/environments.js +1 -1
- package/dist/apis/event-catalog.cjs +6 -6
- package/dist/apis/event-catalog.js +1 -1
- package/dist/apis/file.cjs +6 -6
- package/dist/apis/file.js +1 -1
- package/dist/apis/iban.cjs +6 -6
- package/dist/apis/iban.js +1 -1
- package/dist/apis/integration-toolkit.cjs +6 -6
- package/dist/apis/integration-toolkit.js +1 -1
- package/dist/apis/journey.cjs +6 -6
- package/dist/apis/journey.js +1 -1
- package/dist/apis/kanban.cjs +6 -6
- package/dist/apis/kanban.js +1 -1
- package/dist/apis/message.cjs +6 -6
- package/dist/apis/message.js +1 -1
- package/dist/apis/metering.cjs +6 -6
- package/dist/apis/metering.js +1 -1
- package/dist/apis/notes.cjs +6 -6
- package/dist/apis/notes.js +1 -1
- package/dist/apis/notification.cjs +6 -6
- package/dist/apis/notification.js +1 -1
- package/dist/apis/organization.cjs +6 -6
- package/dist/apis/organization.js +1 -1
- package/dist/apis/partner-directory.cjs +6 -6
- package/dist/apis/partner-directory.js +1 -1
- package/dist/apis/permissions.cjs +6 -6
- package/dist/apis/permissions.js +1 -1
- package/dist/apis/pricing-tier.cjs +6 -6
- package/dist/apis/pricing-tier.js +1 -1
- package/dist/apis/pricing.cjs +6 -6
- package/dist/apis/pricing.js +1 -1
- package/dist/apis/purpose.cjs +6 -6
- package/dist/apis/purpose.js +1 -1
- package/dist/apis/query.cjs +6 -6
- package/dist/apis/query.js +1 -1
- package/dist/apis/sandbox.cjs +6 -6
- package/dist/apis/sandbox.js +1 -1
- package/dist/apis/sharing.cjs +6 -6
- package/dist/apis/sharing.js +1 -1
- package/dist/apis/snapshot.cjs +6 -6
- package/dist/apis/snapshot.js +1 -1
- package/dist/apis/submission.cjs +6 -6
- package/dist/apis/submission.js +1 -1
- package/dist/apis/target.cjs +6 -6
- package/dist/apis/target.js +1 -1
- package/dist/apis/targeting.cjs +6 -6
- package/dist/apis/targeting.d.cts +2 -2
- package/dist/apis/targeting.d.ts +2 -2
- package/dist/apis/targeting.js +1 -1
- package/dist/apis/template-variables.cjs +6 -6
- package/dist/apis/template-variables.js +1 -1
- package/dist/apis/user.cjs +6 -6
- package/dist/apis/user.js +1 -1
- package/dist/apis/validation-rules.cjs +6 -6
- package/dist/apis/validation-rules.js +1 -1
- package/dist/apis/webhooks.cjs +6 -6
- package/dist/apis/webhooks.js +1 -1
- package/dist/apis/workflow-definition.cjs +6 -6
- package/dist/apis/workflow-definition.js +1 -1
- package/dist/apis/workflow.cjs +6 -6
- package/dist/apis/workflow.js +1 -1
- package/dist/{chunk-QWWGJOYR.cjs → chunk-AD5FK5LK.cjs} +1 -1
- package/dist/{chunk-UC3IKFHD.js → chunk-PHOP6DMJ.js} +1 -1
- package/dist/index.cjs +8 -8
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/targeting-5U4XGOXY.cjs +7 -0
- package/dist/targeting-R3G32HI4.js +7 -0
- package/dist/{targeting.d-16SvPyj4.d.cts → targeting.d-KcawmWBB.d.cts} +8 -0
- package/dist/{targeting.d-16SvPyj4.d.ts → targeting.d-KcawmWBB.d.ts} +8 -0
- package/docs/targeting.md +9 -1
- package/package.json +1 -1
- package/dist/targeting-BTVCLYFW.cjs +0 -7
- package/dist/targeting-NWYDE3E7.js +0 -7
|
@@ -0,0 +1,3051 @@
|
|
|
1
|
+
{
|
|
2
|
+
"openapi": "3.0.2",
|
|
3
|
+
"info": {
|
|
4
|
+
"title": "User API",
|
|
5
|
+
"version": "2.0.0",
|
|
6
|
+
"description": "Manage users in epilot organization(s)\n"
|
|
7
|
+
},
|
|
8
|
+
"tags": [
|
|
9
|
+
{
|
|
10
|
+
"name": "User V2",
|
|
11
|
+
"description": "User API V2"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"name": "User V1",
|
|
15
|
+
"description": "Legacy User API"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"name": "Group",
|
|
19
|
+
"description": "User Groups"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"name": "Navigation",
|
|
23
|
+
"description": "Customized Workplace Navigation Configurations"
|
|
24
|
+
}
|
|
25
|
+
],
|
|
26
|
+
"security": [
|
|
27
|
+
{
|
|
28
|
+
"EpilotAuth": []
|
|
29
|
+
}
|
|
30
|
+
],
|
|
31
|
+
"paths": {
|
|
32
|
+
"/v2/users/public/signup": {
|
|
33
|
+
"post": {
|
|
34
|
+
"operationId": "signUpUser",
|
|
35
|
+
"summary": "signUpUser",
|
|
36
|
+
"security": [],
|
|
37
|
+
"parameters": [
|
|
38
|
+
{
|
|
39
|
+
"name": "token",
|
|
40
|
+
"in": "query",
|
|
41
|
+
"description": "Partner invitation token",
|
|
42
|
+
"required": false,
|
|
43
|
+
"schema": {
|
|
44
|
+
"$ref": "#/components/schemas/PartnerInvitationToken"
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
],
|
|
48
|
+
"tags": [
|
|
49
|
+
"User V2"
|
|
50
|
+
],
|
|
51
|
+
"requestBody": {
|
|
52
|
+
"content": {
|
|
53
|
+
"application/json": {
|
|
54
|
+
"schema": {
|
|
55
|
+
"$ref": "#/components/schemas/SignupUserPayload"
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
"responses": {
|
|
61
|
+
"200": {
|
|
62
|
+
"description": "The created user and organization",
|
|
63
|
+
"content": {
|
|
64
|
+
"application/json": {
|
|
65
|
+
"schema": {
|
|
66
|
+
"type": "object",
|
|
67
|
+
"properties": {
|
|
68
|
+
"user": {
|
|
69
|
+
"$ref": "#/components/schemas/User"
|
|
70
|
+
},
|
|
71
|
+
"organization": {
|
|
72
|
+
"$ref": "#/components/schemas/Organization"
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
"/v2/users/me": {
|
|
83
|
+
"get": {
|
|
84
|
+
"operationId": "getMeV2",
|
|
85
|
+
"summary": "getMeV2",
|
|
86
|
+
"description": "Get currently logged in user",
|
|
87
|
+
"tags": [
|
|
88
|
+
"User V2"
|
|
89
|
+
],
|
|
90
|
+
"responses": {
|
|
91
|
+
"200": {
|
|
92
|
+
"description": "currently logged in user",
|
|
93
|
+
"content": {
|
|
94
|
+
"application/json": {
|
|
95
|
+
"schema": {
|
|
96
|
+
"$ref": "#/components/schemas/UserV2"
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
"/v2/users/me/settings": {
|
|
105
|
+
"get": {
|
|
106
|
+
"operationId": "listUserSettings",
|
|
107
|
+
"summary": "listUserSettings",
|
|
108
|
+
"description": "List all setting scopes and keys available for the currently logged in user. Does not return setting values.",
|
|
109
|
+
"tags": [
|
|
110
|
+
"User V2"
|
|
111
|
+
],
|
|
112
|
+
"responses": {
|
|
113
|
+
"200": {
|
|
114
|
+
"description": "List of user setting scopes and keys",
|
|
115
|
+
"content": {
|
|
116
|
+
"application/json": {
|
|
117
|
+
"schema": {
|
|
118
|
+
"$ref": "#/components/schemas/UserSettingsListResponse"
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
},
|
|
126
|
+
"/v2/users/me/settings/{scope}": {
|
|
127
|
+
"get": {
|
|
128
|
+
"operationId": "getUserSettingsScope",
|
|
129
|
+
"summary": "getUserSettingsScope",
|
|
130
|
+
"description": "Get all setting values for one scope for the currently logged in user.",
|
|
131
|
+
"tags": [
|
|
132
|
+
"User V2"
|
|
133
|
+
],
|
|
134
|
+
"parameters": [
|
|
135
|
+
{
|
|
136
|
+
"name": "scope",
|
|
137
|
+
"in": "path",
|
|
138
|
+
"required": true,
|
|
139
|
+
"schema": {
|
|
140
|
+
"$ref": "#/components/schemas/UserSettingScope"
|
|
141
|
+
},
|
|
142
|
+
"description": "User setting scope, for example calendar, navigation, or search"
|
|
143
|
+
}
|
|
144
|
+
],
|
|
145
|
+
"responses": {
|
|
146
|
+
"200": {
|
|
147
|
+
"description": "User settings for the requested scope",
|
|
148
|
+
"content": {
|
|
149
|
+
"application/json": {
|
|
150
|
+
"schema": {
|
|
151
|
+
"$ref": "#/components/schemas/UserSettingsScopeResponse"
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
"/v2/users/me/settings/{scope}/{key}": {
|
|
160
|
+
"get": {
|
|
161
|
+
"operationId": "getUserSetting",
|
|
162
|
+
"summary": "getUserSetting",
|
|
163
|
+
"description": "Get one setting value by scope and key for the currently logged in user.",
|
|
164
|
+
"tags": [
|
|
165
|
+
"User V2"
|
|
166
|
+
],
|
|
167
|
+
"parameters": [
|
|
168
|
+
{
|
|
169
|
+
"name": "scope",
|
|
170
|
+
"in": "path",
|
|
171
|
+
"required": true,
|
|
172
|
+
"schema": {
|
|
173
|
+
"$ref": "#/components/schemas/UserSettingScope"
|
|
174
|
+
},
|
|
175
|
+
"description": "User setting scope"
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
"name": "key",
|
|
179
|
+
"in": "path",
|
|
180
|
+
"required": true,
|
|
181
|
+
"schema": {
|
|
182
|
+
"$ref": "#/components/schemas/UserSettingKey"
|
|
183
|
+
},
|
|
184
|
+
"description": "User setting key"
|
|
185
|
+
}
|
|
186
|
+
],
|
|
187
|
+
"responses": {
|
|
188
|
+
"200": {
|
|
189
|
+
"description": "User setting",
|
|
190
|
+
"content": {
|
|
191
|
+
"application/json": {
|
|
192
|
+
"schema": {
|
|
193
|
+
"$ref": "#/components/schemas/UserSetting"
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
},
|
|
198
|
+
"404": {
|
|
199
|
+
"description": "User setting not found"
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
},
|
|
203
|
+
"put": {
|
|
204
|
+
"operationId": "putUserSetting",
|
|
205
|
+
"summary": "putUserSetting",
|
|
206
|
+
"description": "Create or replace one setting value for the currently logged in user.",
|
|
207
|
+
"tags": [
|
|
208
|
+
"User V2"
|
|
209
|
+
],
|
|
210
|
+
"parameters": [
|
|
211
|
+
{
|
|
212
|
+
"name": "scope",
|
|
213
|
+
"in": "path",
|
|
214
|
+
"required": true,
|
|
215
|
+
"schema": {
|
|
216
|
+
"$ref": "#/components/schemas/UserSettingScope"
|
|
217
|
+
},
|
|
218
|
+
"description": "User setting scope"
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
"name": "key",
|
|
222
|
+
"in": "path",
|
|
223
|
+
"required": true,
|
|
224
|
+
"schema": {
|
|
225
|
+
"$ref": "#/components/schemas/UserSettingKey"
|
|
226
|
+
},
|
|
227
|
+
"description": "User setting key"
|
|
228
|
+
}
|
|
229
|
+
],
|
|
230
|
+
"requestBody": {
|
|
231
|
+
"required": true,
|
|
232
|
+
"content": {
|
|
233
|
+
"application/json": {
|
|
234
|
+
"schema": {
|
|
235
|
+
"$ref": "#/components/schemas/UserSettingValue"
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
},
|
|
240
|
+
"responses": {
|
|
241
|
+
"200": {
|
|
242
|
+
"description": "User setting saved successfully",
|
|
243
|
+
"content": {
|
|
244
|
+
"application/json": {
|
|
245
|
+
"schema": {
|
|
246
|
+
"$ref": "#/components/schemas/UserSetting"
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
},
|
|
253
|
+
"delete": {
|
|
254
|
+
"operationId": "deleteUserSetting",
|
|
255
|
+
"summary": "deleteUserSetting",
|
|
256
|
+
"description": "Delete one setting value for the currently logged in user.",
|
|
257
|
+
"tags": [
|
|
258
|
+
"User V2"
|
|
259
|
+
],
|
|
260
|
+
"parameters": [
|
|
261
|
+
{
|
|
262
|
+
"name": "scope",
|
|
263
|
+
"in": "path",
|
|
264
|
+
"required": true,
|
|
265
|
+
"schema": {
|
|
266
|
+
"$ref": "#/components/schemas/UserSettingScope"
|
|
267
|
+
},
|
|
268
|
+
"description": "User setting scope"
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
"name": "key",
|
|
272
|
+
"in": "path",
|
|
273
|
+
"required": true,
|
|
274
|
+
"schema": {
|
|
275
|
+
"$ref": "#/components/schemas/UserSettingKey"
|
|
276
|
+
},
|
|
277
|
+
"description": "User setting key"
|
|
278
|
+
}
|
|
279
|
+
],
|
|
280
|
+
"responses": {
|
|
281
|
+
"204": {
|
|
282
|
+
"description": "User setting deleted successfully"
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
},
|
|
287
|
+
"/v2/users": {
|
|
288
|
+
"get": {
|
|
289
|
+
"operationId": "listUsersV2",
|
|
290
|
+
"summary": "listUsersV2",
|
|
291
|
+
"parameters": [
|
|
292
|
+
{
|
|
293
|
+
"name": "query",
|
|
294
|
+
"in": "query",
|
|
295
|
+
"description": "Query text to filter by",
|
|
296
|
+
"required": false,
|
|
297
|
+
"schema": {
|
|
298
|
+
"$ref": "#/components/schemas/Query"
|
|
299
|
+
}
|
|
300
|
+
},
|
|
301
|
+
{
|
|
302
|
+
"name": "limit",
|
|
303
|
+
"in": "query",
|
|
304
|
+
"description": "Limit the results size",
|
|
305
|
+
"required": false,
|
|
306
|
+
"schema": {
|
|
307
|
+
"$ref": "#/components/schemas/Limit"
|
|
308
|
+
}
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
"name": "offset",
|
|
312
|
+
"in": "query",
|
|
313
|
+
"description": "Specify the offset",
|
|
314
|
+
"required": false,
|
|
315
|
+
"schema": {
|
|
316
|
+
"$ref": "#/components/schemas/Offset"
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
],
|
|
320
|
+
"description": "Get the list of organization users",
|
|
321
|
+
"tags": [
|
|
322
|
+
"User V2"
|
|
323
|
+
],
|
|
324
|
+
"responses": {
|
|
325
|
+
"200": {
|
|
326
|
+
"description": "List of organization users",
|
|
327
|
+
"content": {
|
|
328
|
+
"application/json": {
|
|
329
|
+
"schema": {
|
|
330
|
+
"type": "object",
|
|
331
|
+
"properties": {
|
|
332
|
+
"results": {
|
|
333
|
+
"type": "array",
|
|
334
|
+
"items": {
|
|
335
|
+
"$ref": "#/components/schemas/UserV2"
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
},
|
|
346
|
+
"/v2/users/{id}": {
|
|
347
|
+
"get": {
|
|
348
|
+
"operationId": "getUserV2",
|
|
349
|
+
"summary": "getUserV2",
|
|
350
|
+
"description": "Get user details by user id",
|
|
351
|
+
"tags": [
|
|
352
|
+
"User V2"
|
|
353
|
+
],
|
|
354
|
+
"parameters": [
|
|
355
|
+
{
|
|
356
|
+
"in": "path",
|
|
357
|
+
"name": "id",
|
|
358
|
+
"schema": {
|
|
359
|
+
"$ref": "#/components/schemas/UserId"
|
|
360
|
+
},
|
|
361
|
+
"required": true,
|
|
362
|
+
"description": "The Id of user"
|
|
363
|
+
}
|
|
364
|
+
],
|
|
365
|
+
"responses": {
|
|
366
|
+
"200": {
|
|
367
|
+
"description": "The returned user",
|
|
368
|
+
"content": {
|
|
369
|
+
"application/json": {
|
|
370
|
+
"schema": {
|
|
371
|
+
"$ref": "#/components/schemas/UserV2"
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
},
|
|
378
|
+
"patch": {
|
|
379
|
+
"operationId": "updateUserV2",
|
|
380
|
+
"summary": "updateUserV2",
|
|
381
|
+
"description": "Update user details",
|
|
382
|
+
"tags": [
|
|
383
|
+
"User V2"
|
|
384
|
+
],
|
|
385
|
+
"parameters": [
|
|
386
|
+
{
|
|
387
|
+
"in": "path",
|
|
388
|
+
"name": "id",
|
|
389
|
+
"schema": {
|
|
390
|
+
"$ref": "#/components/schemas/UserId"
|
|
391
|
+
},
|
|
392
|
+
"required": true,
|
|
393
|
+
"description": "The Id of user"
|
|
394
|
+
}
|
|
395
|
+
],
|
|
396
|
+
"requestBody": {
|
|
397
|
+
"content": {
|
|
398
|
+
"application/json": {
|
|
399
|
+
"schema": {
|
|
400
|
+
"$ref": "#/components/schemas/UserV2"
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
},
|
|
405
|
+
"responses": {
|
|
406
|
+
"200": {
|
|
407
|
+
"description": "The returned user",
|
|
408
|
+
"content": {
|
|
409
|
+
"application/json": {
|
|
410
|
+
"schema": {
|
|
411
|
+
"$ref": "#/components/schemas/UserV2"
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
}
|
|
417
|
+
},
|
|
418
|
+
"delete": {
|
|
419
|
+
"operationId": "deleteUserV2",
|
|
420
|
+
"summary": "deleteUserV2",
|
|
421
|
+
"description": "Delete user by user id",
|
|
422
|
+
"tags": [
|
|
423
|
+
"User V2"
|
|
424
|
+
],
|
|
425
|
+
"parameters": [
|
|
426
|
+
{
|
|
427
|
+
"in": "path",
|
|
428
|
+
"name": "id",
|
|
429
|
+
"schema": {
|
|
430
|
+
"$ref": "#/components/schemas/UserId"
|
|
431
|
+
},
|
|
432
|
+
"required": true,
|
|
433
|
+
"description": "The Id of user"
|
|
434
|
+
}
|
|
435
|
+
],
|
|
436
|
+
"responses": {
|
|
437
|
+
"200": {
|
|
438
|
+
"description": "The deleted user",
|
|
439
|
+
"content": {
|
|
440
|
+
"application/json": {
|
|
441
|
+
"schema": {
|
|
442
|
+
"$ref": "#/components/schemas/User"
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
}
|
|
449
|
+
},
|
|
450
|
+
"/v2/users/invite": {
|
|
451
|
+
"post": {
|
|
452
|
+
"operationId": "inviteUser",
|
|
453
|
+
"summary": "inviteUser",
|
|
454
|
+
"description": "Creates a new user in the caller's organization and sends an invite email to activate the user\n",
|
|
455
|
+
"tags": [
|
|
456
|
+
"User V2"
|
|
457
|
+
],
|
|
458
|
+
"requestBody": {
|
|
459
|
+
"content": {
|
|
460
|
+
"application/json": {
|
|
461
|
+
"schema": {
|
|
462
|
+
"$ref": "#/components/schemas/UserInvitationPayload"
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
},
|
|
467
|
+
"responses": {
|
|
468
|
+
"201": {
|
|
469
|
+
"description": "Invited successfully",
|
|
470
|
+
"content": {
|
|
471
|
+
"application/json": {
|
|
472
|
+
"schema": {
|
|
473
|
+
"$ref": "#/components/schemas/UserV2"
|
|
474
|
+
}
|
|
475
|
+
}
|
|
476
|
+
}
|
|
477
|
+
},
|
|
478
|
+
"400": {
|
|
479
|
+
"description": "Unable to invite the above email address."
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
},
|
|
484
|
+
"/v2/users/invite:resendEmail": {
|
|
485
|
+
"post": {
|
|
486
|
+
"operationId": "resendUserInvitation",
|
|
487
|
+
"summary": "resendUserInvitation",
|
|
488
|
+
"description": "Resend user invitation email",
|
|
489
|
+
"tags": [
|
|
490
|
+
"User V2"
|
|
491
|
+
],
|
|
492
|
+
"requestBody": {
|
|
493
|
+
"content": {
|
|
494
|
+
"application/json": {
|
|
495
|
+
"schema": {
|
|
496
|
+
"type": "object",
|
|
497
|
+
"properties": {
|
|
498
|
+
"email": {
|
|
499
|
+
"type": "string",
|
|
500
|
+
"description": "Email address of the address",
|
|
501
|
+
"example": "test@example.com"
|
|
502
|
+
},
|
|
503
|
+
"language": {
|
|
504
|
+
"type": "string",
|
|
505
|
+
"description": "Language for user invitation email",
|
|
506
|
+
"enum": [
|
|
507
|
+
"en",
|
|
508
|
+
"de"
|
|
509
|
+
],
|
|
510
|
+
"default": "en"
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
},
|
|
517
|
+
"responses": {
|
|
518
|
+
"200": {
|
|
519
|
+
"description": "User Invitation sent successfully.",
|
|
520
|
+
"content": {
|
|
521
|
+
"application/json": {
|
|
522
|
+
"schema": {
|
|
523
|
+
"$ref": "#/components/schemas/UserV2"
|
|
524
|
+
}
|
|
525
|
+
}
|
|
526
|
+
}
|
|
527
|
+
},
|
|
528
|
+
"400": {
|
|
529
|
+
"description": "User not found."
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
}
|
|
533
|
+
},
|
|
534
|
+
"/v2/users:sendPasswordReset": {
|
|
535
|
+
"post": {
|
|
536
|
+
"operationId": "sendUserPasswordReset",
|
|
537
|
+
"summary": "sendUserPasswordReset",
|
|
538
|
+
"description": "Send a password reset email to a user in your organization.\nRequires `user:edit` on the target user.\n",
|
|
539
|
+
"tags": [
|
|
540
|
+
"User V2"
|
|
541
|
+
],
|
|
542
|
+
"requestBody": {
|
|
543
|
+
"required": true,
|
|
544
|
+
"content": {
|
|
545
|
+
"application/json": {
|
|
546
|
+
"schema": {
|
|
547
|
+
"type": "object",
|
|
548
|
+
"required": [
|
|
549
|
+
"email"
|
|
550
|
+
],
|
|
551
|
+
"properties": {
|
|
552
|
+
"email": {
|
|
553
|
+
"type": "string",
|
|
554
|
+
"description": "Email address of the user to reset",
|
|
555
|
+
"example": "test@example.com"
|
|
556
|
+
}
|
|
557
|
+
}
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
}
|
|
561
|
+
},
|
|
562
|
+
"responses": {
|
|
563
|
+
"200": {
|
|
564
|
+
"description": "Password reset triggered",
|
|
565
|
+
"content": {
|
|
566
|
+
"application/json": {
|
|
567
|
+
"schema": {
|
|
568
|
+
"type": "object",
|
|
569
|
+
"required": [
|
|
570
|
+
"success"
|
|
571
|
+
],
|
|
572
|
+
"properties": {
|
|
573
|
+
"success": {
|
|
574
|
+
"type": "boolean",
|
|
575
|
+
"example": true
|
|
576
|
+
}
|
|
577
|
+
}
|
|
578
|
+
}
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
},
|
|
582
|
+
"400": {
|
|
583
|
+
"description": "Invalid email or user not found"
|
|
584
|
+
},
|
|
585
|
+
"403": {
|
|
586
|
+
"description": "Not permitted to reset this user's password"
|
|
587
|
+
}
|
|
588
|
+
}
|
|
589
|
+
}
|
|
590
|
+
},
|
|
591
|
+
"/v2/users/{id}/groups": {
|
|
592
|
+
"get": {
|
|
593
|
+
"operationId": "getGroupsForUser",
|
|
594
|
+
"summary": "getGroupsForUser",
|
|
595
|
+
"description": "Get groups of a user",
|
|
596
|
+
"tags": [
|
|
597
|
+
"User V2"
|
|
598
|
+
],
|
|
599
|
+
"parameters": [
|
|
600
|
+
{
|
|
601
|
+
"in": "path",
|
|
602
|
+
"name": "id",
|
|
603
|
+
"schema": {
|
|
604
|
+
"$ref": "#/components/schemas/UserId"
|
|
605
|
+
},
|
|
606
|
+
"required": true,
|
|
607
|
+
"description": "The Id of user"
|
|
608
|
+
}
|
|
609
|
+
],
|
|
610
|
+
"responses": {
|
|
611
|
+
"200": {
|
|
612
|
+
"description": "The returned user groups",
|
|
613
|
+
"content": {
|
|
614
|
+
"application/json": {
|
|
615
|
+
"schema": {
|
|
616
|
+
"type": "array",
|
|
617
|
+
"items": {
|
|
618
|
+
"$ref": "#/components/schemas/Group"
|
|
619
|
+
}
|
|
620
|
+
}
|
|
621
|
+
}
|
|
622
|
+
}
|
|
623
|
+
}
|
|
624
|
+
}
|
|
625
|
+
}
|
|
626
|
+
},
|
|
627
|
+
"/v1/groups": {
|
|
628
|
+
"get": {
|
|
629
|
+
"operationId": "getGroups",
|
|
630
|
+
"summary": "getGroups",
|
|
631
|
+
"description": "Lists groups in organizations you have access to",
|
|
632
|
+
"tags": [
|
|
633
|
+
"Group"
|
|
634
|
+
],
|
|
635
|
+
"parameters": [
|
|
636
|
+
{
|
|
637
|
+
"name": "query",
|
|
638
|
+
"in": "query",
|
|
639
|
+
"description": "Query name to filter by",
|
|
640
|
+
"required": false,
|
|
641
|
+
"schema": {
|
|
642
|
+
"$ref": "#/components/schemas/Query"
|
|
643
|
+
}
|
|
644
|
+
},
|
|
645
|
+
{
|
|
646
|
+
"name": "limit",
|
|
647
|
+
"in": "query",
|
|
648
|
+
"description": "Limit the results size",
|
|
649
|
+
"required": false,
|
|
650
|
+
"schema": {
|
|
651
|
+
"$ref": "#/components/schemas/Limit"
|
|
652
|
+
}
|
|
653
|
+
},
|
|
654
|
+
{
|
|
655
|
+
"name": "offset",
|
|
656
|
+
"in": "query",
|
|
657
|
+
"description": "Specify the offset",
|
|
658
|
+
"required": false,
|
|
659
|
+
"schema": {
|
|
660
|
+
"$ref": "#/components/schemas/Offset"
|
|
661
|
+
}
|
|
662
|
+
},
|
|
663
|
+
{
|
|
664
|
+
"name": "hydrate",
|
|
665
|
+
"in": "query",
|
|
666
|
+
"description": "Pass it true when you want to hydrate the group with full user details",
|
|
667
|
+
"required": false,
|
|
668
|
+
"schema": {
|
|
669
|
+
"$ref": "#/components/schemas/Hydrate"
|
|
670
|
+
}
|
|
671
|
+
}
|
|
672
|
+
],
|
|
673
|
+
"responses": {
|
|
674
|
+
"200": {
|
|
675
|
+
"description": "List of groups",
|
|
676
|
+
"content": {
|
|
677
|
+
"application/json": {
|
|
678
|
+
"schema": {
|
|
679
|
+
"type": "object",
|
|
680
|
+
"properties": {
|
|
681
|
+
"hits": {
|
|
682
|
+
"type": "number",
|
|
683
|
+
"example": 1
|
|
684
|
+
},
|
|
685
|
+
"groups": {
|
|
686
|
+
"type": "array",
|
|
687
|
+
"items": {
|
|
688
|
+
"$ref": "#/components/schemas/Group"
|
|
689
|
+
}
|
|
690
|
+
}
|
|
691
|
+
}
|
|
692
|
+
}
|
|
693
|
+
}
|
|
694
|
+
}
|
|
695
|
+
}
|
|
696
|
+
}
|
|
697
|
+
},
|
|
698
|
+
"post": {
|
|
699
|
+
"operationId": "createGroup",
|
|
700
|
+
"summary": "createGroup",
|
|
701
|
+
"description": "Create a new group",
|
|
702
|
+
"tags": [
|
|
703
|
+
"Group"
|
|
704
|
+
],
|
|
705
|
+
"requestBody": {
|
|
706
|
+
"content": {
|
|
707
|
+
"application/json": {
|
|
708
|
+
"schema": {
|
|
709
|
+
"$ref": "#/components/schemas/CreateGroupReq"
|
|
710
|
+
}
|
|
711
|
+
}
|
|
712
|
+
}
|
|
713
|
+
},
|
|
714
|
+
"responses": {
|
|
715
|
+
"201": {
|
|
716
|
+
"description": "Group created successfully",
|
|
717
|
+
"content": {
|
|
718
|
+
"application/json": {
|
|
719
|
+
"schema": {
|
|
720
|
+
"$ref": "#/components/schemas/Group"
|
|
721
|
+
}
|
|
722
|
+
}
|
|
723
|
+
}
|
|
724
|
+
}
|
|
725
|
+
}
|
|
726
|
+
}
|
|
727
|
+
},
|
|
728
|
+
"/v1/groups/{id}": {
|
|
729
|
+
"get": {
|
|
730
|
+
"operationId": "getGroup",
|
|
731
|
+
"summary": "getGroup",
|
|
732
|
+
"description": "Get group by id",
|
|
733
|
+
"tags": [
|
|
734
|
+
"Group"
|
|
735
|
+
],
|
|
736
|
+
"parameters": [
|
|
737
|
+
{
|
|
738
|
+
"name": "id",
|
|
739
|
+
"in": "path",
|
|
740
|
+
"description": "Group id",
|
|
741
|
+
"required": true,
|
|
742
|
+
"schema": {
|
|
743
|
+
"$ref": "#/components/schemas/GroupId"
|
|
744
|
+
}
|
|
745
|
+
},
|
|
746
|
+
{
|
|
747
|
+
"name": "hydrate",
|
|
748
|
+
"in": "query",
|
|
749
|
+
"description": "Pass it true when you want to hydrate the group with full user details",
|
|
750
|
+
"required": false,
|
|
751
|
+
"schema": {
|
|
752
|
+
"$ref": "#/components/schemas/Hydrate"
|
|
753
|
+
}
|
|
754
|
+
}
|
|
755
|
+
],
|
|
756
|
+
"responses": {
|
|
757
|
+
"200": {
|
|
758
|
+
"description": "Group",
|
|
759
|
+
"content": {
|
|
760
|
+
"application/json": {
|
|
761
|
+
"schema": {
|
|
762
|
+
"$ref": "#/components/schemas/Group"
|
|
763
|
+
}
|
|
764
|
+
}
|
|
765
|
+
}
|
|
766
|
+
},
|
|
767
|
+
"404": {
|
|
768
|
+
"description": "Group not found"
|
|
769
|
+
}
|
|
770
|
+
}
|
|
771
|
+
},
|
|
772
|
+
"patch": {
|
|
773
|
+
"operationId": "updateGroup",
|
|
774
|
+
"summary": "updateGroup",
|
|
775
|
+
"description": "Update group by id",
|
|
776
|
+
"tags": [
|
|
777
|
+
"Group"
|
|
778
|
+
],
|
|
779
|
+
"parameters": [
|
|
780
|
+
{
|
|
781
|
+
"name": "id",
|
|
782
|
+
"in": "path",
|
|
783
|
+
"description": "Group id",
|
|
784
|
+
"required": true,
|
|
785
|
+
"schema": {
|
|
786
|
+
"$ref": "#/components/schemas/GroupId"
|
|
787
|
+
}
|
|
788
|
+
}
|
|
789
|
+
],
|
|
790
|
+
"requestBody": {
|
|
791
|
+
"content": {
|
|
792
|
+
"application/json": {
|
|
793
|
+
"schema": {
|
|
794
|
+
"$ref": "#/components/schemas/UpdateGroupReq"
|
|
795
|
+
}
|
|
796
|
+
}
|
|
797
|
+
}
|
|
798
|
+
},
|
|
799
|
+
"responses": {
|
|
800
|
+
"201": {
|
|
801
|
+
"description": "Group created successfully",
|
|
802
|
+
"content": {
|
|
803
|
+
"application/json": {
|
|
804
|
+
"schema": {
|
|
805
|
+
"$ref": "#/components/schemas/Group"
|
|
806
|
+
}
|
|
807
|
+
}
|
|
808
|
+
}
|
|
809
|
+
},
|
|
810
|
+
"404": {
|
|
811
|
+
"description": "Group not found"
|
|
812
|
+
}
|
|
813
|
+
}
|
|
814
|
+
},
|
|
815
|
+
"delete": {
|
|
816
|
+
"operationId": "deleteGroup",
|
|
817
|
+
"summary": "deleteGroup",
|
|
818
|
+
"description": "Delete group by id",
|
|
819
|
+
"tags": [
|
|
820
|
+
"Group"
|
|
821
|
+
],
|
|
822
|
+
"parameters": [
|
|
823
|
+
{
|
|
824
|
+
"name": "id",
|
|
825
|
+
"in": "path",
|
|
826
|
+
"description": "Group id",
|
|
827
|
+
"required": true,
|
|
828
|
+
"schema": {
|
|
829
|
+
"$ref": "#/components/schemas/GroupId"
|
|
830
|
+
}
|
|
831
|
+
}
|
|
832
|
+
],
|
|
833
|
+
"responses": {
|
|
834
|
+
"204": {
|
|
835
|
+
"description": "Group deleted successfully"
|
|
836
|
+
}
|
|
837
|
+
}
|
|
838
|
+
}
|
|
839
|
+
},
|
|
840
|
+
"/v1/groups/{id}/user:next": {
|
|
841
|
+
"post": {
|
|
842
|
+
"operationId": "advanceUserAssignment",
|
|
843
|
+
"summary": "advanceUserAssignment",
|
|
844
|
+
"description": "Advance user assignment to next user in line",
|
|
845
|
+
"tags": [
|
|
846
|
+
"Group"
|
|
847
|
+
],
|
|
848
|
+
"parameters": [
|
|
849
|
+
{
|
|
850
|
+
"name": "id",
|
|
851
|
+
"in": "path",
|
|
852
|
+
"description": "Group id",
|
|
853
|
+
"required": true,
|
|
854
|
+
"schema": {
|
|
855
|
+
"$ref": "#/components/schemas/GroupId"
|
|
856
|
+
}
|
|
857
|
+
}
|
|
858
|
+
],
|
|
859
|
+
"responses": {
|
|
860
|
+
"200": {
|
|
861
|
+
"description": "Updated user group with crt_assignee updated to next user in line",
|
|
862
|
+
"content": {
|
|
863
|
+
"application/json": {
|
|
864
|
+
"schema": {
|
|
865
|
+
"$ref": "#/components/schemas/Group"
|
|
866
|
+
}
|
|
867
|
+
}
|
|
868
|
+
}
|
|
869
|
+
},
|
|
870
|
+
"404": {
|
|
871
|
+
"description": "Group not found"
|
|
872
|
+
},
|
|
873
|
+
"422": {
|
|
874
|
+
"description": "User Group has no users assigned, thus it cannot advance to next user"
|
|
875
|
+
}
|
|
876
|
+
}
|
|
877
|
+
}
|
|
878
|
+
},
|
|
879
|
+
"/v2/user/navigations": {
|
|
880
|
+
"post": {
|
|
881
|
+
"operationId": "createNavigation",
|
|
882
|
+
"summary": "createNavigation",
|
|
883
|
+
"description": "Create a new navigation configuration. Navigations are immutable and globally accessible across organizations.\nEach creation generates a new id. To update a navigation, create a new one.\n",
|
|
884
|
+
"tags": [
|
|
885
|
+
"Navigation"
|
|
886
|
+
],
|
|
887
|
+
"requestBody": {
|
|
888
|
+
"content": {
|
|
889
|
+
"application/json": {
|
|
890
|
+
"schema": {
|
|
891
|
+
"$ref": "#/components/schemas/NavigationCreateRequest"
|
|
892
|
+
}
|
|
893
|
+
}
|
|
894
|
+
}
|
|
895
|
+
},
|
|
896
|
+
"responses": {
|
|
897
|
+
"201": {
|
|
898
|
+
"description": "Navigation created successfully",
|
|
899
|
+
"content": {
|
|
900
|
+
"application/json": {
|
|
901
|
+
"schema": {
|
|
902
|
+
"$ref": "#/components/schemas/Navigation"
|
|
903
|
+
}
|
|
904
|
+
}
|
|
905
|
+
}
|
|
906
|
+
}
|
|
907
|
+
}
|
|
908
|
+
}
|
|
909
|
+
},
|
|
910
|
+
"/v2/user/navigations/{id}": {
|
|
911
|
+
"get": {
|
|
912
|
+
"operationId": "getNavigation",
|
|
913
|
+
"summary": "getNavigation",
|
|
914
|
+
"description": "Get a navigation configuration by ID",
|
|
915
|
+
"tags": [
|
|
916
|
+
"Navigation"
|
|
917
|
+
],
|
|
918
|
+
"parameters": [
|
|
919
|
+
{
|
|
920
|
+
"in": "path",
|
|
921
|
+
"name": "id",
|
|
922
|
+
"schema": {
|
|
923
|
+
"$ref": "#/components/schemas/NavigationId"
|
|
924
|
+
},
|
|
925
|
+
"required": true,
|
|
926
|
+
"description": "The UUID of the navigation"
|
|
927
|
+
}
|
|
928
|
+
],
|
|
929
|
+
"responses": {
|
|
930
|
+
"200": {
|
|
931
|
+
"description": "The navigation configuration",
|
|
932
|
+
"content": {
|
|
933
|
+
"application/json": {
|
|
934
|
+
"schema": {
|
|
935
|
+
"$ref": "#/components/schemas/Navigation"
|
|
936
|
+
}
|
|
937
|
+
}
|
|
938
|
+
}
|
|
939
|
+
},
|
|
940
|
+
"404": {
|
|
941
|
+
"description": "Navigation not found"
|
|
942
|
+
}
|
|
943
|
+
}
|
|
944
|
+
}
|
|
945
|
+
},
|
|
946
|
+
"/v2/users/public/verifyEmail": {
|
|
947
|
+
"post": {
|
|
948
|
+
"operationId": "verifyEmailWithToken",
|
|
949
|
+
"summary": "verifyEmailWithToken",
|
|
950
|
+
"description": "Update new email using an verification token",
|
|
951
|
+
"security": [],
|
|
952
|
+
"x-rate-limit": {
|
|
953
|
+
"limit": 10
|
|
954
|
+
},
|
|
955
|
+
"tags": [
|
|
956
|
+
"User V2"
|
|
957
|
+
],
|
|
958
|
+
"parameters": [
|
|
959
|
+
{
|
|
960
|
+
"in": "query",
|
|
961
|
+
"name": "token",
|
|
962
|
+
"schema": {
|
|
963
|
+
"$ref": "#/components/schemas/VerificationToken"
|
|
964
|
+
},
|
|
965
|
+
"required": true,
|
|
966
|
+
"description": "Verification Token"
|
|
967
|
+
}
|
|
968
|
+
],
|
|
969
|
+
"requestBody": {
|
|
970
|
+
"content": {
|
|
971
|
+
"application/json": {
|
|
972
|
+
"schema": {
|
|
973
|
+
"$ref": "#/components/schemas/UserVerificationPayload"
|
|
974
|
+
}
|
|
975
|
+
}
|
|
976
|
+
}
|
|
977
|
+
},
|
|
978
|
+
"responses": {
|
|
979
|
+
"200": {
|
|
980
|
+
"description": "Verified successfully"
|
|
981
|
+
},
|
|
982
|
+
"400": {
|
|
983
|
+
"description": "No pending email change for this token"
|
|
984
|
+
},
|
|
985
|
+
"404": {
|
|
986
|
+
"description": "Token not found"
|
|
987
|
+
},
|
|
988
|
+
"409": {
|
|
989
|
+
"description": "Email address already in use"
|
|
990
|
+
}
|
|
991
|
+
}
|
|
992
|
+
}
|
|
993
|
+
},
|
|
994
|
+
"/v2/users/public/requestPasswordReset": {
|
|
995
|
+
"post": {
|
|
996
|
+
"operationId": "requestPasswordReset",
|
|
997
|
+
"summary": "requestPasswordReset",
|
|
998
|
+
"description": "Request a password reset email for the given email address. Always\nreturns a success response whether or not an account exists with that\nemail.\n",
|
|
999
|
+
"security": [],
|
|
1000
|
+
"x-rate-limit": {
|
|
1001
|
+
"limit": 10
|
|
1002
|
+
},
|
|
1003
|
+
"tags": [
|
|
1004
|
+
"User V2"
|
|
1005
|
+
],
|
|
1006
|
+
"requestBody": {
|
|
1007
|
+
"required": true,
|
|
1008
|
+
"content": {
|
|
1009
|
+
"application/json": {
|
|
1010
|
+
"schema": {
|
|
1011
|
+
"type": "object",
|
|
1012
|
+
"required": [
|
|
1013
|
+
"email"
|
|
1014
|
+
],
|
|
1015
|
+
"properties": {
|
|
1016
|
+
"email": {
|
|
1017
|
+
"type": "string",
|
|
1018
|
+
"description": "Email address of the account to reset",
|
|
1019
|
+
"example": "test@example.com"
|
|
1020
|
+
}
|
|
1021
|
+
}
|
|
1022
|
+
}
|
|
1023
|
+
}
|
|
1024
|
+
}
|
|
1025
|
+
},
|
|
1026
|
+
"responses": {
|
|
1027
|
+
"200": {
|
|
1028
|
+
"description": "Request accepted",
|
|
1029
|
+
"content": {
|
|
1030
|
+
"application/json": {
|
|
1031
|
+
"schema": {
|
|
1032
|
+
"type": "object",
|
|
1033
|
+
"required": [
|
|
1034
|
+
"message"
|
|
1035
|
+
],
|
|
1036
|
+
"properties": {
|
|
1037
|
+
"message": {
|
|
1038
|
+
"type": "string",
|
|
1039
|
+
"example": "If an account exists, a password reset email has been sent."
|
|
1040
|
+
}
|
|
1041
|
+
}
|
|
1042
|
+
}
|
|
1043
|
+
}
|
|
1044
|
+
}
|
|
1045
|
+
}
|
|
1046
|
+
}
|
|
1047
|
+
}
|
|
1048
|
+
},
|
|
1049
|
+
"/v2/users/public/resetPassword": {
|
|
1050
|
+
"post": {
|
|
1051
|
+
"operationId": "resetPassword",
|
|
1052
|
+
"summary": "resetPassword",
|
|
1053
|
+
"description": "Set a new password using a reset token from the password reset email.\nThe token is single-use and time-limited.\n",
|
|
1054
|
+
"security": [],
|
|
1055
|
+
"x-rate-limit": {
|
|
1056
|
+
"limit": 10
|
|
1057
|
+
},
|
|
1058
|
+
"tags": [
|
|
1059
|
+
"User V2"
|
|
1060
|
+
],
|
|
1061
|
+
"requestBody": {
|
|
1062
|
+
"required": true,
|
|
1063
|
+
"content": {
|
|
1064
|
+
"application/json": {
|
|
1065
|
+
"schema": {
|
|
1066
|
+
"type": "object",
|
|
1067
|
+
"required": [
|
|
1068
|
+
"email",
|
|
1069
|
+
"token",
|
|
1070
|
+
"password"
|
|
1071
|
+
],
|
|
1072
|
+
"properties": {
|
|
1073
|
+
"email": {
|
|
1074
|
+
"type": "string",
|
|
1075
|
+
"description": "Email address of the account",
|
|
1076
|
+
"example": "test@example.com"
|
|
1077
|
+
},
|
|
1078
|
+
"token": {
|
|
1079
|
+
"type": "string",
|
|
1080
|
+
"description": "Reset token from the password reset email"
|
|
1081
|
+
},
|
|
1082
|
+
"password": {
|
|
1083
|
+
"type": "string",
|
|
1084
|
+
"description": "The new password"
|
|
1085
|
+
}
|
|
1086
|
+
}
|
|
1087
|
+
}
|
|
1088
|
+
}
|
|
1089
|
+
}
|
|
1090
|
+
},
|
|
1091
|
+
"responses": {
|
|
1092
|
+
"200": {
|
|
1093
|
+
"description": "Password reset successfully",
|
|
1094
|
+
"content": {
|
|
1095
|
+
"application/json": {
|
|
1096
|
+
"schema": {
|
|
1097
|
+
"type": "object",
|
|
1098
|
+
"required": [
|
|
1099
|
+
"success"
|
|
1100
|
+
],
|
|
1101
|
+
"properties": {
|
|
1102
|
+
"success": {
|
|
1103
|
+
"type": "boolean",
|
|
1104
|
+
"example": true
|
|
1105
|
+
}
|
|
1106
|
+
}
|
|
1107
|
+
}
|
|
1108
|
+
}
|
|
1109
|
+
}
|
|
1110
|
+
},
|
|
1111
|
+
"400": {
|
|
1112
|
+
"description": "Invalid or expired reset link, or password does not meet the requirements",
|
|
1113
|
+
"content": {
|
|
1114
|
+
"application/json": {
|
|
1115
|
+
"schema": {
|
|
1116
|
+
"type": "object",
|
|
1117
|
+
"required": [
|
|
1118
|
+
"error",
|
|
1119
|
+
"message"
|
|
1120
|
+
],
|
|
1121
|
+
"properties": {
|
|
1122
|
+
"error": {
|
|
1123
|
+
"type": "string",
|
|
1124
|
+
"description": "Discriminator distinguishing token errors from policy errors",
|
|
1125
|
+
"enum": [
|
|
1126
|
+
"INVALID_RESET_LINK",
|
|
1127
|
+
"PASSWORD_POLICY"
|
|
1128
|
+
]
|
|
1129
|
+
},
|
|
1130
|
+
"message": {
|
|
1131
|
+
"type": "string",
|
|
1132
|
+
"example": "Password does not meet the requirements"
|
|
1133
|
+
},
|
|
1134
|
+
"violations": {
|
|
1135
|
+
"type": "array",
|
|
1136
|
+
"description": "Itemized password-policy violation codes (only present when error is PASSWORD_POLICY)",
|
|
1137
|
+
"items": {
|
|
1138
|
+
"type": "string",
|
|
1139
|
+
"enum": [
|
|
1140
|
+
"too_short",
|
|
1141
|
+
"missing_lowercase",
|
|
1142
|
+
"missing_uppercase",
|
|
1143
|
+
"missing_number",
|
|
1144
|
+
"missing_symbol"
|
|
1145
|
+
]
|
|
1146
|
+
},
|
|
1147
|
+
"example": [
|
|
1148
|
+
"too_short",
|
|
1149
|
+
"missing_uppercase"
|
|
1150
|
+
]
|
|
1151
|
+
}
|
|
1152
|
+
}
|
|
1153
|
+
}
|
|
1154
|
+
}
|
|
1155
|
+
}
|
|
1156
|
+
}
|
|
1157
|
+
}
|
|
1158
|
+
}
|
|
1159
|
+
},
|
|
1160
|
+
"/v2/users/public/checkToken": {
|
|
1161
|
+
"get": {
|
|
1162
|
+
"operationId": "checkInviteToken",
|
|
1163
|
+
"summary": "checkInviteToken",
|
|
1164
|
+
"description": "Check an invite token",
|
|
1165
|
+
"security": [],
|
|
1166
|
+
"tags": [
|
|
1167
|
+
"User V2"
|
|
1168
|
+
],
|
|
1169
|
+
"parameters": [
|
|
1170
|
+
{
|
|
1171
|
+
"in": "query",
|
|
1172
|
+
"name": "token",
|
|
1173
|
+
"schema": {
|
|
1174
|
+
"$ref": "#/components/schemas/InviteToken"
|
|
1175
|
+
},
|
|
1176
|
+
"required": true,
|
|
1177
|
+
"description": "Invite Token"
|
|
1178
|
+
}
|
|
1179
|
+
],
|
|
1180
|
+
"responses": {
|
|
1181
|
+
"200": {
|
|
1182
|
+
"description": "Invite token found",
|
|
1183
|
+
"content": {
|
|
1184
|
+
"application/json": {
|
|
1185
|
+
"schema": {
|
|
1186
|
+
"type": "object",
|
|
1187
|
+
"properties": {
|
|
1188
|
+
"invitation_org_id": {
|
|
1189
|
+
"type": "string",
|
|
1190
|
+
"description": "Organization ID of the organization that invited the user"
|
|
1191
|
+
},
|
|
1192
|
+
"invitation_org_name": {
|
|
1193
|
+
"type": "string",
|
|
1194
|
+
"description": "Name of the organization that invited the user"
|
|
1195
|
+
},
|
|
1196
|
+
"invitation_org_logo_url": {
|
|
1197
|
+
"type": "string",
|
|
1198
|
+
"description": "Logo URL of the organization that invited the user"
|
|
1199
|
+
},
|
|
1200
|
+
"invitation_org_logo_thumbnail_url": {
|
|
1201
|
+
"type": "string",
|
|
1202
|
+
"description": "Logo Thumbnail URL of the organization that invited the user"
|
|
1203
|
+
},
|
|
1204
|
+
"invitee_user_id": {
|
|
1205
|
+
"type": "string",
|
|
1206
|
+
"description": "User ID of the invited user"
|
|
1207
|
+
},
|
|
1208
|
+
"invitee_primary_org_id": {
|
|
1209
|
+
"type": "string",
|
|
1210
|
+
"description": "Organization ID of the primary organization of the user (when inviting an existing epilot user)"
|
|
1211
|
+
}
|
|
1212
|
+
},
|
|
1213
|
+
"required": [
|
|
1214
|
+
"invitee_user_id",
|
|
1215
|
+
"invitation_org_id",
|
|
1216
|
+
"invitation_org_name"
|
|
1217
|
+
]
|
|
1218
|
+
}
|
|
1219
|
+
}
|
|
1220
|
+
}
|
|
1221
|
+
},
|
|
1222
|
+
"404": {
|
|
1223
|
+
"description": "Token not found"
|
|
1224
|
+
}
|
|
1225
|
+
}
|
|
1226
|
+
}
|
|
1227
|
+
},
|
|
1228
|
+
"/v2/users/public/activate": {
|
|
1229
|
+
"post": {
|
|
1230
|
+
"operationId": "activateUser",
|
|
1231
|
+
"summary": "activateUser",
|
|
1232
|
+
"description": "Activate user using an invite token",
|
|
1233
|
+
"security": [],
|
|
1234
|
+
"tags": [
|
|
1235
|
+
"User V2"
|
|
1236
|
+
],
|
|
1237
|
+
"parameters": [
|
|
1238
|
+
{
|
|
1239
|
+
"in": "query",
|
|
1240
|
+
"name": "token",
|
|
1241
|
+
"schema": {
|
|
1242
|
+
"$ref": "#/components/schemas/InviteToken"
|
|
1243
|
+
},
|
|
1244
|
+
"required": true,
|
|
1245
|
+
"description": "Invite Token"
|
|
1246
|
+
}
|
|
1247
|
+
],
|
|
1248
|
+
"requestBody": {
|
|
1249
|
+
"content": {
|
|
1250
|
+
"application/json": {
|
|
1251
|
+
"schema": {
|
|
1252
|
+
"$ref": "#/components/schemas/UserActivationPayload"
|
|
1253
|
+
}
|
|
1254
|
+
}
|
|
1255
|
+
}
|
|
1256
|
+
},
|
|
1257
|
+
"responses": {
|
|
1258
|
+
"200": {
|
|
1259
|
+
"description": "Activated successfully"
|
|
1260
|
+
},
|
|
1261
|
+
"400": {
|
|
1262
|
+
"description": "Invalid payload"
|
|
1263
|
+
},
|
|
1264
|
+
"404": {
|
|
1265
|
+
"description": "Token not found for the user"
|
|
1266
|
+
}
|
|
1267
|
+
}
|
|
1268
|
+
}
|
|
1269
|
+
},
|
|
1270
|
+
"/v2/users/public/reject": {
|
|
1271
|
+
"delete": {
|
|
1272
|
+
"operationId": "rejectInvite",
|
|
1273
|
+
"summary": "rejectInvite",
|
|
1274
|
+
"description": "Reject an invite",
|
|
1275
|
+
"security": [],
|
|
1276
|
+
"tags": [
|
|
1277
|
+
"User V2"
|
|
1278
|
+
],
|
|
1279
|
+
"parameters": [
|
|
1280
|
+
{
|
|
1281
|
+
"in": "query",
|
|
1282
|
+
"name": "token",
|
|
1283
|
+
"schema": {
|
|
1284
|
+
"$ref": "#/components/schemas/InviteToken"
|
|
1285
|
+
},
|
|
1286
|
+
"required": true,
|
|
1287
|
+
"description": "Invite Token"
|
|
1288
|
+
}
|
|
1289
|
+
],
|
|
1290
|
+
"responses": {
|
|
1291
|
+
"200": {
|
|
1292
|
+
"description": "Rejected invite successfully",
|
|
1293
|
+
"content": {
|
|
1294
|
+
"application/json": {
|
|
1295
|
+
"schema": {
|
|
1296
|
+
"type": "object",
|
|
1297
|
+
"properties": {
|
|
1298
|
+
"success": {
|
|
1299
|
+
"type": "boolean",
|
|
1300
|
+
"example": true
|
|
1301
|
+
}
|
|
1302
|
+
}
|
|
1303
|
+
}
|
|
1304
|
+
}
|
|
1305
|
+
}
|
|
1306
|
+
},
|
|
1307
|
+
"404": {
|
|
1308
|
+
"description": "Token not found for the user"
|
|
1309
|
+
}
|
|
1310
|
+
}
|
|
1311
|
+
}
|
|
1312
|
+
},
|
|
1313
|
+
"/v2/users/public/username/{username}:getLoginParameters": {
|
|
1314
|
+
"get": {
|
|
1315
|
+
"operationId": "getUserLoginParametersV2",
|
|
1316
|
+
"summary": "getUserLoginParametersV2",
|
|
1317
|
+
"description": "Get user organization login parameters by username\n\nThe first item in the list corresponds to the user's primary organization and must be used for initial login.\n",
|
|
1318
|
+
"security": [],
|
|
1319
|
+
"parameters": [
|
|
1320
|
+
{
|
|
1321
|
+
"name": "username",
|
|
1322
|
+
"in": "path",
|
|
1323
|
+
"description": "Username",
|
|
1324
|
+
"required": true,
|
|
1325
|
+
"schema": {
|
|
1326
|
+
"$ref": "#/components/schemas/Username"
|
|
1327
|
+
}
|
|
1328
|
+
}
|
|
1329
|
+
],
|
|
1330
|
+
"tags": [
|
|
1331
|
+
"User V2"
|
|
1332
|
+
],
|
|
1333
|
+
"responses": {
|
|
1334
|
+
"200": {
|
|
1335
|
+
"description": "User",
|
|
1336
|
+
"content": {
|
|
1337
|
+
"application/json": {
|
|
1338
|
+
"schema": {
|
|
1339
|
+
"type": "object",
|
|
1340
|
+
"properties": {
|
|
1341
|
+
"login_parameters": {
|
|
1342
|
+
"type": "array",
|
|
1343
|
+
"items": {
|
|
1344
|
+
"$ref": "#/components/schemas/LoginParameters"
|
|
1345
|
+
}
|
|
1346
|
+
}
|
|
1347
|
+
}
|
|
1348
|
+
}
|
|
1349
|
+
}
|
|
1350
|
+
}
|
|
1351
|
+
}
|
|
1352
|
+
}
|
|
1353
|
+
}
|
|
1354
|
+
},
|
|
1355
|
+
"/v2/users/public/passkeys:authenticateBegin": {
|
|
1356
|
+
"post": {
|
|
1357
|
+
"operationId": "beginPasskeyAuthentication",
|
|
1358
|
+
"summary": "beginPasskeyAuthentication",
|
|
1359
|
+
"description": "Begin passkey authentication flow. Returns WebAuthn options and a signed challenge token.",
|
|
1360
|
+
"security": [],
|
|
1361
|
+
"tags": [
|
|
1362
|
+
"User V2"
|
|
1363
|
+
],
|
|
1364
|
+
"requestBody": {
|
|
1365
|
+
"content": {
|
|
1366
|
+
"application/json": {
|
|
1367
|
+
"schema": {
|
|
1368
|
+
"type": "object",
|
|
1369
|
+
"properties": {
|
|
1370
|
+
"email": {
|
|
1371
|
+
"type": "string",
|
|
1372
|
+
"format": "email"
|
|
1373
|
+
}
|
|
1374
|
+
},
|
|
1375
|
+
"required": [
|
|
1376
|
+
"email"
|
|
1377
|
+
]
|
|
1378
|
+
}
|
|
1379
|
+
}
|
|
1380
|
+
}
|
|
1381
|
+
},
|
|
1382
|
+
"responses": {
|
|
1383
|
+
"200": {
|
|
1384
|
+
"description": "WebAuthn authentication options",
|
|
1385
|
+
"content": {
|
|
1386
|
+
"application/json": {
|
|
1387
|
+
"schema": {
|
|
1388
|
+
"$ref": "#/components/schemas/PasskeyAuthenticationOptions"
|
|
1389
|
+
}
|
|
1390
|
+
}
|
|
1391
|
+
}
|
|
1392
|
+
},
|
|
1393
|
+
"404": {
|
|
1394
|
+
"description": "User not found or no passkeys registered"
|
|
1395
|
+
}
|
|
1396
|
+
}
|
|
1397
|
+
}
|
|
1398
|
+
},
|
|
1399
|
+
"/v2/users/public/passkeys:authenticateBeginDiscoverable": {
|
|
1400
|
+
"post": {
|
|
1401
|
+
"operationId": "beginDiscoverablePasskeyAuthentication",
|
|
1402
|
+
"summary": "beginDiscoverablePasskeyAuthentication",
|
|
1403
|
+
"description": "Begin discoverable passkey authentication flow (no email required). Returns WebAuthn options with empty allowCredentials for the browser credential picker.",
|
|
1404
|
+
"security": [],
|
|
1405
|
+
"tags": [
|
|
1406
|
+
"User V2"
|
|
1407
|
+
],
|
|
1408
|
+
"responses": {
|
|
1409
|
+
"200": {
|
|
1410
|
+
"description": "WebAuthn discoverable authentication options",
|
|
1411
|
+
"content": {
|
|
1412
|
+
"application/json": {
|
|
1413
|
+
"schema": {
|
|
1414
|
+
"$ref": "#/components/schemas/PasskeyAuthenticationOptions"
|
|
1415
|
+
}
|
|
1416
|
+
}
|
|
1417
|
+
}
|
|
1418
|
+
}
|
|
1419
|
+
}
|
|
1420
|
+
}
|
|
1421
|
+
},
|
|
1422
|
+
"/v2/users/public/passkeys:resolveCredential": {
|
|
1423
|
+
"post": {
|
|
1424
|
+
"operationId": "resolveDiscoverableCredential",
|
|
1425
|
+
"summary": "resolveDiscoverableCredential",
|
|
1426
|
+
"description": "Resolve user identity from a discoverable passkey assertion. Returns the user's email and login parameters.",
|
|
1427
|
+
"security": [],
|
|
1428
|
+
"tags": [
|
|
1429
|
+
"User V2"
|
|
1430
|
+
],
|
|
1431
|
+
"requestBody": {
|
|
1432
|
+
"content": {
|
|
1433
|
+
"application/json": {
|
|
1434
|
+
"schema": {
|
|
1435
|
+
"type": "object",
|
|
1436
|
+
"properties": {
|
|
1437
|
+
"challenge_token": {
|
|
1438
|
+
"type": "string",
|
|
1439
|
+
"description": "The challenge token from authenticateBeginDiscoverable"
|
|
1440
|
+
},
|
|
1441
|
+
"assertion_response": {
|
|
1442
|
+
"type": "object",
|
|
1443
|
+
"description": "WebAuthn AuthenticatorAssertionResponse JSON"
|
|
1444
|
+
}
|
|
1445
|
+
},
|
|
1446
|
+
"required": [
|
|
1447
|
+
"challenge_token",
|
|
1448
|
+
"assertion_response"
|
|
1449
|
+
]
|
|
1450
|
+
}
|
|
1451
|
+
}
|
|
1452
|
+
}
|
|
1453
|
+
},
|
|
1454
|
+
"responses": {
|
|
1455
|
+
"200": {
|
|
1456
|
+
"description": "Resolved user identity and login parameters",
|
|
1457
|
+
"content": {
|
|
1458
|
+
"application/json": {
|
|
1459
|
+
"schema": {
|
|
1460
|
+
"type": "object",
|
|
1461
|
+
"properties": {
|
|
1462
|
+
"email": {
|
|
1463
|
+
"type": "string",
|
|
1464
|
+
"format": "email"
|
|
1465
|
+
},
|
|
1466
|
+
"organization_id": {
|
|
1467
|
+
"type": "string"
|
|
1468
|
+
},
|
|
1469
|
+
"user_id": {
|
|
1470
|
+
"type": "string"
|
|
1471
|
+
},
|
|
1472
|
+
"login_parameters": {
|
|
1473
|
+
"type": "array",
|
|
1474
|
+
"items": {
|
|
1475
|
+
"$ref": "#/components/schemas/LoginParameters"
|
|
1476
|
+
}
|
|
1477
|
+
}
|
|
1478
|
+
}
|
|
1479
|
+
}
|
|
1480
|
+
}
|
|
1481
|
+
}
|
|
1482
|
+
},
|
|
1483
|
+
"404": {
|
|
1484
|
+
"description": "Credential not found"
|
|
1485
|
+
}
|
|
1486
|
+
}
|
|
1487
|
+
}
|
|
1488
|
+
},
|
|
1489
|
+
"/v2/users/me/passkeys:registerBegin": {
|
|
1490
|
+
"post": {
|
|
1491
|
+
"operationId": "beginPasskeyRegistration",
|
|
1492
|
+
"summary": "beginPasskeyRegistration",
|
|
1493
|
+
"description": "Begin passkey registration flow for the authenticated user.",
|
|
1494
|
+
"tags": [
|
|
1495
|
+
"User V2"
|
|
1496
|
+
],
|
|
1497
|
+
"requestBody": {
|
|
1498
|
+
"content": {
|
|
1499
|
+
"application/json": {
|
|
1500
|
+
"schema": {
|
|
1501
|
+
"type": "object",
|
|
1502
|
+
"properties": {
|
|
1503
|
+
"friendly_name": {
|
|
1504
|
+
"type": "string",
|
|
1505
|
+
"example": "My Laptop"
|
|
1506
|
+
}
|
|
1507
|
+
}
|
|
1508
|
+
}
|
|
1509
|
+
}
|
|
1510
|
+
}
|
|
1511
|
+
},
|
|
1512
|
+
"responses": {
|
|
1513
|
+
"200": {
|
|
1514
|
+
"description": "WebAuthn registration options",
|
|
1515
|
+
"content": {
|
|
1516
|
+
"application/json": {
|
|
1517
|
+
"schema": {
|
|
1518
|
+
"$ref": "#/components/schemas/PasskeyRegistrationOptions"
|
|
1519
|
+
}
|
|
1520
|
+
}
|
|
1521
|
+
}
|
|
1522
|
+
}
|
|
1523
|
+
}
|
|
1524
|
+
}
|
|
1525
|
+
},
|
|
1526
|
+
"/v2/users/me/passkeys:registerComplete": {
|
|
1527
|
+
"post": {
|
|
1528
|
+
"operationId": "completePasskeyRegistration",
|
|
1529
|
+
"summary": "completePasskeyRegistration",
|
|
1530
|
+
"description": "Complete passkey registration by verifying the attestation response.",
|
|
1531
|
+
"tags": [
|
|
1532
|
+
"User V2"
|
|
1533
|
+
],
|
|
1534
|
+
"requestBody": {
|
|
1535
|
+
"content": {
|
|
1536
|
+
"application/json": {
|
|
1537
|
+
"schema": {
|
|
1538
|
+
"$ref": "#/components/schemas/PasskeyRegistrationResponse"
|
|
1539
|
+
}
|
|
1540
|
+
}
|
|
1541
|
+
}
|
|
1542
|
+
},
|
|
1543
|
+
"responses": {
|
|
1544
|
+
"200": {
|
|
1545
|
+
"description": "Passkey registered successfully",
|
|
1546
|
+
"content": {
|
|
1547
|
+
"application/json": {
|
|
1548
|
+
"schema": {
|
|
1549
|
+
"$ref": "#/components/schemas/Passkey"
|
|
1550
|
+
}
|
|
1551
|
+
}
|
|
1552
|
+
}
|
|
1553
|
+
}
|
|
1554
|
+
}
|
|
1555
|
+
}
|
|
1556
|
+
},
|
|
1557
|
+
"/v2/users/me/passkeys": {
|
|
1558
|
+
"get": {
|
|
1559
|
+
"operationId": "listPasskeys",
|
|
1560
|
+
"summary": "listPasskeys",
|
|
1561
|
+
"description": "List all passkeys registered for the authenticated user.",
|
|
1562
|
+
"tags": [
|
|
1563
|
+
"User V2"
|
|
1564
|
+
],
|
|
1565
|
+
"responses": {
|
|
1566
|
+
"200": {
|
|
1567
|
+
"description": "List of passkeys",
|
|
1568
|
+
"content": {
|
|
1569
|
+
"application/json": {
|
|
1570
|
+
"schema": {
|
|
1571
|
+
"type": "object",
|
|
1572
|
+
"properties": {
|
|
1573
|
+
"passkeys": {
|
|
1574
|
+
"type": "array",
|
|
1575
|
+
"items": {
|
|
1576
|
+
"$ref": "#/components/schemas/Passkey"
|
|
1577
|
+
}
|
|
1578
|
+
}
|
|
1579
|
+
}
|
|
1580
|
+
}
|
|
1581
|
+
}
|
|
1582
|
+
}
|
|
1583
|
+
}
|
|
1584
|
+
}
|
|
1585
|
+
}
|
|
1586
|
+
},
|
|
1587
|
+
"/v2/users/me/passkeys/{credentialId}": {
|
|
1588
|
+
"delete": {
|
|
1589
|
+
"operationId": "deletePasskey",
|
|
1590
|
+
"summary": "deletePasskey",
|
|
1591
|
+
"description": "Delete a passkey by credential ID.",
|
|
1592
|
+
"tags": [
|
|
1593
|
+
"User V2"
|
|
1594
|
+
],
|
|
1595
|
+
"parameters": [
|
|
1596
|
+
{
|
|
1597
|
+
"name": "credentialId",
|
|
1598
|
+
"in": "path",
|
|
1599
|
+
"required": true,
|
|
1600
|
+
"schema": {
|
|
1601
|
+
"type": "string"
|
|
1602
|
+
}
|
|
1603
|
+
}
|
|
1604
|
+
],
|
|
1605
|
+
"responses": {
|
|
1606
|
+
"204": {
|
|
1607
|
+
"description": "Passkey deleted successfully"
|
|
1608
|
+
},
|
|
1609
|
+
"404": {
|
|
1610
|
+
"description": "Passkey not found"
|
|
1611
|
+
}
|
|
1612
|
+
}
|
|
1613
|
+
}
|
|
1614
|
+
},
|
|
1615
|
+
"/v2/users/switchOrganization": {
|
|
1616
|
+
"post": {
|
|
1617
|
+
"operationId": "switchOrganization",
|
|
1618
|
+
"summary": "switchOrganization",
|
|
1619
|
+
"description": "Switch to another organization the user is part of",
|
|
1620
|
+
"tags": [
|
|
1621
|
+
"User V2"
|
|
1622
|
+
],
|
|
1623
|
+
"requestBody": {
|
|
1624
|
+
"content": {
|
|
1625
|
+
"application/json": {
|
|
1626
|
+
"schema": {
|
|
1627
|
+
"type": "object",
|
|
1628
|
+
"properties": {
|
|
1629
|
+
"org_id": {
|
|
1630
|
+
"$ref": "#/components/schemas/OrganizationId"
|
|
1631
|
+
}
|
|
1632
|
+
},
|
|
1633
|
+
"required": [
|
|
1634
|
+
"org_id"
|
|
1635
|
+
]
|
|
1636
|
+
}
|
|
1637
|
+
}
|
|
1638
|
+
}
|
|
1639
|
+
},
|
|
1640
|
+
"responses": {
|
|
1641
|
+
"200": {
|
|
1642
|
+
"description": "A login token for the new organization to be used with CUSTOM_AUTH flow",
|
|
1643
|
+
"content": {
|
|
1644
|
+
"application/json": {
|
|
1645
|
+
"schema": {
|
|
1646
|
+
"type": "object",
|
|
1647
|
+
"properties": {
|
|
1648
|
+
"login_token": {
|
|
1649
|
+
"type": "string",
|
|
1650
|
+
"description": "A login token for the new organization to be used with CUSTOM_AUTH flow against login parameters"
|
|
1651
|
+
}
|
|
1652
|
+
},
|
|
1653
|
+
"required": [
|
|
1654
|
+
"login_token"
|
|
1655
|
+
]
|
|
1656
|
+
}
|
|
1657
|
+
}
|
|
1658
|
+
}
|
|
1659
|
+
}
|
|
1660
|
+
}
|
|
1661
|
+
}
|
|
1662
|
+
},
|
|
1663
|
+
"/v1/users/me": {
|
|
1664
|
+
"get": {
|
|
1665
|
+
"operationId": "getMe",
|
|
1666
|
+
"summary": "getMe",
|
|
1667
|
+
"description": "Get currently logged in user",
|
|
1668
|
+
"tags": [
|
|
1669
|
+
"User V1"
|
|
1670
|
+
],
|
|
1671
|
+
"responses": {
|
|
1672
|
+
"200": {
|
|
1673
|
+
"description": "Currently logged in user",
|
|
1674
|
+
"content": {
|
|
1675
|
+
"application/json": {
|
|
1676
|
+
"schema": {
|
|
1677
|
+
"$ref": "#/components/schemas/User"
|
|
1678
|
+
}
|
|
1679
|
+
}
|
|
1680
|
+
}
|
|
1681
|
+
}
|
|
1682
|
+
}
|
|
1683
|
+
}
|
|
1684
|
+
},
|
|
1685
|
+
"/v1/users": {
|
|
1686
|
+
"get": {
|
|
1687
|
+
"operationId": "listUsers",
|
|
1688
|
+
"summary": "listUsers",
|
|
1689
|
+
"description": "Lists users in organizations you have access to",
|
|
1690
|
+
"parameters": [
|
|
1691
|
+
{
|
|
1692
|
+
"name": "org_ids",
|
|
1693
|
+
"in": "query",
|
|
1694
|
+
"description": "Comma-separated list of organization ids to filter by",
|
|
1695
|
+
"style": "form",
|
|
1696
|
+
"explode": false,
|
|
1697
|
+
"schema": {
|
|
1698
|
+
"type": "array",
|
|
1699
|
+
"items": {
|
|
1700
|
+
"$ref": "#/components/schemas/OrganizationId"
|
|
1701
|
+
}
|
|
1702
|
+
}
|
|
1703
|
+
},
|
|
1704
|
+
{
|
|
1705
|
+
"name": "query",
|
|
1706
|
+
"in": "query",
|
|
1707
|
+
"description": "Query text to filter by",
|
|
1708
|
+
"required": false,
|
|
1709
|
+
"schema": {
|
|
1710
|
+
"$ref": "#/components/schemas/Query"
|
|
1711
|
+
}
|
|
1712
|
+
},
|
|
1713
|
+
{
|
|
1714
|
+
"name": "limit",
|
|
1715
|
+
"in": "query",
|
|
1716
|
+
"description": "Limit the results size",
|
|
1717
|
+
"required": false,
|
|
1718
|
+
"schema": {
|
|
1719
|
+
"$ref": "#/components/schemas/Limit"
|
|
1720
|
+
}
|
|
1721
|
+
},
|
|
1722
|
+
{
|
|
1723
|
+
"name": "offset",
|
|
1724
|
+
"in": "query",
|
|
1725
|
+
"description": "Specify the offset",
|
|
1726
|
+
"required": false,
|
|
1727
|
+
"schema": {
|
|
1728
|
+
"$ref": "#/components/schemas/Offset"
|
|
1729
|
+
}
|
|
1730
|
+
}
|
|
1731
|
+
],
|
|
1732
|
+
"tags": [
|
|
1733
|
+
"User V1"
|
|
1734
|
+
],
|
|
1735
|
+
"responses": {
|
|
1736
|
+
"200": {
|
|
1737
|
+
"description": "List of users",
|
|
1738
|
+
"content": {
|
|
1739
|
+
"application/json": {
|
|
1740
|
+
"schema": {
|
|
1741
|
+
"type": "object",
|
|
1742
|
+
"properties": {
|
|
1743
|
+
"users": {
|
|
1744
|
+
"type": "array",
|
|
1745
|
+
"items": {
|
|
1746
|
+
"$ref": "#/components/schemas/User"
|
|
1747
|
+
}
|
|
1748
|
+
}
|
|
1749
|
+
}
|
|
1750
|
+
}
|
|
1751
|
+
}
|
|
1752
|
+
}
|
|
1753
|
+
}
|
|
1754
|
+
}
|
|
1755
|
+
}
|
|
1756
|
+
},
|
|
1757
|
+
"/v1/users/{id}": {
|
|
1758
|
+
"get": {
|
|
1759
|
+
"operationId": "getUser",
|
|
1760
|
+
"summary": "getUser",
|
|
1761
|
+
"description": "Get user by id",
|
|
1762
|
+
"parameters": [
|
|
1763
|
+
{
|
|
1764
|
+
"name": "id",
|
|
1765
|
+
"in": "path",
|
|
1766
|
+
"description": "User id",
|
|
1767
|
+
"required": true,
|
|
1768
|
+
"schema": {
|
|
1769
|
+
"$ref": "#/components/schemas/UserId"
|
|
1770
|
+
}
|
|
1771
|
+
}
|
|
1772
|
+
],
|
|
1773
|
+
"tags": [
|
|
1774
|
+
"User V1"
|
|
1775
|
+
],
|
|
1776
|
+
"responses": {
|
|
1777
|
+
"200": {
|
|
1778
|
+
"description": "User",
|
|
1779
|
+
"content": {
|
|
1780
|
+
"application/json": {
|
|
1781
|
+
"schema": {
|
|
1782
|
+
"$ref": "#/components/schemas/User"
|
|
1783
|
+
}
|
|
1784
|
+
}
|
|
1785
|
+
}
|
|
1786
|
+
}
|
|
1787
|
+
}
|
|
1788
|
+
}
|
|
1789
|
+
},
|
|
1790
|
+
"/v1/users/username/{username}:getLoginParameters": {
|
|
1791
|
+
"get": {
|
|
1792
|
+
"operationId": "getUserLoginParameters",
|
|
1793
|
+
"summary": "getUserLoginParameters",
|
|
1794
|
+
"description": "Get user organization login parameters by username",
|
|
1795
|
+
"security": [],
|
|
1796
|
+
"parameters": [
|
|
1797
|
+
{
|
|
1798
|
+
"name": "username",
|
|
1799
|
+
"in": "path",
|
|
1800
|
+
"description": "Username",
|
|
1801
|
+
"required": true,
|
|
1802
|
+
"schema": {
|
|
1803
|
+
"$ref": "#/components/schemas/Username"
|
|
1804
|
+
}
|
|
1805
|
+
}
|
|
1806
|
+
],
|
|
1807
|
+
"tags": [
|
|
1808
|
+
"User V1"
|
|
1809
|
+
],
|
|
1810
|
+
"responses": {
|
|
1811
|
+
"200": {
|
|
1812
|
+
"description": "User",
|
|
1813
|
+
"content": {
|
|
1814
|
+
"application/json": {
|
|
1815
|
+
"schema": {
|
|
1816
|
+
"type": "object",
|
|
1817
|
+
"properties": {
|
|
1818
|
+
"login_parameters": {
|
|
1819
|
+
"type": "array",
|
|
1820
|
+
"items": {
|
|
1821
|
+
"$ref": "#/components/schemas/LoginParameters"
|
|
1822
|
+
}
|
|
1823
|
+
}
|
|
1824
|
+
}
|
|
1825
|
+
}
|
|
1826
|
+
}
|
|
1827
|
+
}
|
|
1828
|
+
}
|
|
1829
|
+
}
|
|
1830
|
+
}
|
|
1831
|
+
}
|
|
1832
|
+
},
|
|
1833
|
+
"components": {
|
|
1834
|
+
"securitySchemes": {
|
|
1835
|
+
"EpilotAuth": {
|
|
1836
|
+
"type": "http",
|
|
1837
|
+
"scheme": "bearer",
|
|
1838
|
+
"description": "Authorization header with epilot OAuth2 bearer token",
|
|
1839
|
+
"bearerFormat": "JWT"
|
|
1840
|
+
}
|
|
1841
|
+
},
|
|
1842
|
+
"schemas": {
|
|
1843
|
+
"NavigationId": {
|
|
1844
|
+
"description": "Navigation unique identifier - a hash of the normalized navigation payload (name + configuration). Identical navigations across orgs will have the same ID.",
|
|
1845
|
+
"type": "string",
|
|
1846
|
+
"example": "5gbe4nkp6jsfq",
|
|
1847
|
+
"nullable": true
|
|
1848
|
+
},
|
|
1849
|
+
"Navigation": {
|
|
1850
|
+
"type": "object",
|
|
1851
|
+
"description": "A customized workplace navigation configuration. The ID is a content-hash, so identical configurations will have the same ID.",
|
|
1852
|
+
"required": [
|
|
1853
|
+
"id",
|
|
1854
|
+
"name",
|
|
1855
|
+
"configuration"
|
|
1856
|
+
],
|
|
1857
|
+
"properties": {
|
|
1858
|
+
"id": {
|
|
1859
|
+
"$ref": "#/components/schemas/NavigationId"
|
|
1860
|
+
},
|
|
1861
|
+
"name": {
|
|
1862
|
+
"type": "string",
|
|
1863
|
+
"description": "Human-readable name for the navigation configuration",
|
|
1864
|
+
"example": "Sales Team Navigation"
|
|
1865
|
+
},
|
|
1866
|
+
"configuration": {
|
|
1867
|
+
"$ref": "#/components/schemas/NavigationConfiguration"
|
|
1868
|
+
}
|
|
1869
|
+
}
|
|
1870
|
+
},
|
|
1871
|
+
"NavigationCreateRequest": {
|
|
1872
|
+
"type": "object",
|
|
1873
|
+
"description": "Request payload to create a new navigation configuration",
|
|
1874
|
+
"required": [
|
|
1875
|
+
"name",
|
|
1876
|
+
"configuration"
|
|
1877
|
+
],
|
|
1878
|
+
"properties": {
|
|
1879
|
+
"name": {
|
|
1880
|
+
"type": "string",
|
|
1881
|
+
"description": "Human-readable name for the navigation configuration",
|
|
1882
|
+
"example": "Sales Team Navigation"
|
|
1883
|
+
},
|
|
1884
|
+
"configuration": {
|
|
1885
|
+
"$ref": "#/components/schemas/NavigationConfiguration"
|
|
1886
|
+
}
|
|
1887
|
+
}
|
|
1888
|
+
},
|
|
1889
|
+
"NavigationConfiguration": {
|
|
1890
|
+
"type": "object",
|
|
1891
|
+
"description": "Navigation configuration organized by sections. Each section contains an array of navigation items.\n",
|
|
1892
|
+
"additionalProperties": {
|
|
1893
|
+
"type": "array",
|
|
1894
|
+
"items": {
|
|
1895
|
+
"$ref": "#/components/schemas/NavigationItem"
|
|
1896
|
+
}
|
|
1897
|
+
},
|
|
1898
|
+
"example": {
|
|
1899
|
+
"customer_relations": [
|
|
1900
|
+
{
|
|
1901
|
+
"key": "dashboard"
|
|
1902
|
+
},
|
|
1903
|
+
{
|
|
1904
|
+
"key": "contact"
|
|
1905
|
+
}
|
|
1906
|
+
],
|
|
1907
|
+
"configurations": [
|
|
1908
|
+
{
|
|
1909
|
+
"name": "Product Catalog",
|
|
1910
|
+
"subItems": [
|
|
1911
|
+
{
|
|
1912
|
+
"key": "product"
|
|
1913
|
+
},
|
|
1914
|
+
{
|
|
1915
|
+
"key": "price"
|
|
1916
|
+
}
|
|
1917
|
+
]
|
|
1918
|
+
},
|
|
1919
|
+
{
|
|
1920
|
+
"key": "journey"
|
|
1921
|
+
}
|
|
1922
|
+
]
|
|
1923
|
+
}
|
|
1924
|
+
},
|
|
1925
|
+
"NavigationItem": {
|
|
1926
|
+
"description": "A navigation item - either a simple key item or a group with sub-items",
|
|
1927
|
+
"oneOf": [
|
|
1928
|
+
{
|
|
1929
|
+
"$ref": "#/components/schemas/NavigationKeyItem"
|
|
1930
|
+
},
|
|
1931
|
+
{
|
|
1932
|
+
"$ref": "#/components/schemas/NavigationGroupItem"
|
|
1933
|
+
}
|
|
1934
|
+
]
|
|
1935
|
+
},
|
|
1936
|
+
"NavigationKeyItem": {
|
|
1937
|
+
"type": "object",
|
|
1938
|
+
"description": "A simple navigation item with a key",
|
|
1939
|
+
"required": [
|
|
1940
|
+
"key"
|
|
1941
|
+
],
|
|
1942
|
+
"properties": {
|
|
1943
|
+
"key": {
|
|
1944
|
+
"type": "string",
|
|
1945
|
+
"description": "The unique key identifier for the navigation item",
|
|
1946
|
+
"example": "dashboard"
|
|
1947
|
+
}
|
|
1948
|
+
}
|
|
1949
|
+
},
|
|
1950
|
+
"NavigationGroupItem": {
|
|
1951
|
+
"type": "object",
|
|
1952
|
+
"description": "A navigation group containing sub-items",
|
|
1953
|
+
"required": [
|
|
1954
|
+
"name",
|
|
1955
|
+
"subItems"
|
|
1956
|
+
],
|
|
1957
|
+
"properties": {
|
|
1958
|
+
"name": {
|
|
1959
|
+
"type": "string",
|
|
1960
|
+
"description": "The display name of the navigation group",
|
|
1961
|
+
"example": "Product Catalog"
|
|
1962
|
+
},
|
|
1963
|
+
"subItems": {
|
|
1964
|
+
"type": "array",
|
|
1965
|
+
"description": "The list of navigation items within this group",
|
|
1966
|
+
"items": {
|
|
1967
|
+
"$ref": "#/components/schemas/NavigationKeyItem"
|
|
1968
|
+
}
|
|
1969
|
+
}
|
|
1970
|
+
}
|
|
1971
|
+
},
|
|
1972
|
+
"InviteToken": {
|
|
1973
|
+
"description": "Token used to invite a user to epilot",
|
|
1974
|
+
"type": "string"
|
|
1975
|
+
},
|
|
1976
|
+
"PartnerInvitationToken": {
|
|
1977
|
+
"description": "Token used to invite a partner user to epilot",
|
|
1978
|
+
"type": "string"
|
|
1979
|
+
},
|
|
1980
|
+
"VerificationToken": {
|
|
1981
|
+
"type": "string"
|
|
1982
|
+
},
|
|
1983
|
+
"GroupId": {
|
|
1984
|
+
"description": "Group unique identifier",
|
|
1985
|
+
"type": "string",
|
|
1986
|
+
"readOnly": true
|
|
1987
|
+
},
|
|
1988
|
+
"UserId": {
|
|
1989
|
+
"description": "User's unique identifier",
|
|
1990
|
+
"type": "string",
|
|
1991
|
+
"readOnly": true
|
|
1992
|
+
},
|
|
1993
|
+
"Query": {
|
|
1994
|
+
"type": "string"
|
|
1995
|
+
},
|
|
1996
|
+
"OrganizationId": {
|
|
1997
|
+
"type": "string"
|
|
1998
|
+
},
|
|
1999
|
+
"Limit": {
|
|
2000
|
+
"type": "number"
|
|
2001
|
+
},
|
|
2002
|
+
"Offset": {
|
|
2003
|
+
"type": "number"
|
|
2004
|
+
},
|
|
2005
|
+
"Hydrate": {
|
|
2006
|
+
"type": "boolean"
|
|
2007
|
+
},
|
|
2008
|
+
"Username": {
|
|
2009
|
+
"type": "string"
|
|
2010
|
+
},
|
|
2011
|
+
"UserInvitationPayload": {
|
|
2012
|
+
"type": "object",
|
|
2013
|
+
"properties": {
|
|
2014
|
+
"email": {
|
|
2015
|
+
"type": "string",
|
|
2016
|
+
"description": "Email address of the address",
|
|
2017
|
+
"example": "test@example.com"
|
|
2018
|
+
},
|
|
2019
|
+
"language": {
|
|
2020
|
+
"type": "string",
|
|
2021
|
+
"description": "Language for user invitation email",
|
|
2022
|
+
"enum": [
|
|
2023
|
+
"en",
|
|
2024
|
+
"de"
|
|
2025
|
+
],
|
|
2026
|
+
"default": "en"
|
|
2027
|
+
},
|
|
2028
|
+
"roles": {
|
|
2029
|
+
"type": "array",
|
|
2030
|
+
"items": {
|
|
2031
|
+
"type": "string",
|
|
2032
|
+
"description": "Role IDs for the user",
|
|
2033
|
+
"example": "123:owner"
|
|
2034
|
+
}
|
|
2035
|
+
}
|
|
2036
|
+
}
|
|
2037
|
+
},
|
|
2038
|
+
"UserActivationPayload": {
|
|
2039
|
+
"type": "object",
|
|
2040
|
+
"properties": {
|
|
2041
|
+
"display_name": {
|
|
2042
|
+
"type": "string",
|
|
2043
|
+
"description": "User's display name (default: email address)",
|
|
2044
|
+
"example": "Example User"
|
|
2045
|
+
},
|
|
2046
|
+
"password": {
|
|
2047
|
+
"type": "string",
|
|
2048
|
+
"description": "User's password",
|
|
2049
|
+
"example": "AKjhdakjsdh@!34"
|
|
2050
|
+
}
|
|
2051
|
+
}
|
|
2052
|
+
},
|
|
2053
|
+
"UserVerificationPayload": {
|
|
2054
|
+
"type": "object",
|
|
2055
|
+
"properties": {
|
|
2056
|
+
"password": {
|
|
2057
|
+
"type": "string",
|
|
2058
|
+
"description": "User's password",
|
|
2059
|
+
"example": "AKjhdakjsdh@!34"
|
|
2060
|
+
}
|
|
2061
|
+
}
|
|
2062
|
+
},
|
|
2063
|
+
"UserV2": {
|
|
2064
|
+
"type": "object",
|
|
2065
|
+
"properties": {
|
|
2066
|
+
"id": {
|
|
2067
|
+
"$ref": "#/components/schemas/UserId"
|
|
2068
|
+
},
|
|
2069
|
+
"organization_id": {
|
|
2070
|
+
"$ref": "#/components/schemas/OrganizationId"
|
|
2071
|
+
},
|
|
2072
|
+
"created_at": {
|
|
2073
|
+
"type": "string",
|
|
2074
|
+
"format": "date-time"
|
|
2075
|
+
},
|
|
2076
|
+
"activated_at": {
|
|
2077
|
+
"type": "string",
|
|
2078
|
+
"format": "date-time"
|
|
2079
|
+
},
|
|
2080
|
+
"display_name": {
|
|
2081
|
+
"type": "string",
|
|
2082
|
+
"description": "User's display name (default: email address)",
|
|
2083
|
+
"example": "Example User"
|
|
2084
|
+
},
|
|
2085
|
+
"status": {
|
|
2086
|
+
"type": "string",
|
|
2087
|
+
"enum": [
|
|
2088
|
+
"Active",
|
|
2089
|
+
"Pending",
|
|
2090
|
+
"Deactivated",
|
|
2091
|
+
"Deleted"
|
|
2092
|
+
]
|
|
2093
|
+
},
|
|
2094
|
+
"email": {
|
|
2095
|
+
"description": "User's email address",
|
|
2096
|
+
"type": "string",
|
|
2097
|
+
"format": "email"
|
|
2098
|
+
},
|
|
2099
|
+
"draft_email": {
|
|
2100
|
+
"description": "User's pending email address",
|
|
2101
|
+
"type": "string",
|
|
2102
|
+
"nullable": true,
|
|
2103
|
+
"format": "email"
|
|
2104
|
+
},
|
|
2105
|
+
"draft_email_expires_at": {
|
|
2106
|
+
"description": "Server-set expiry for the pending email change verification link (ISO 8601). Read-only.",
|
|
2107
|
+
"type": "string",
|
|
2108
|
+
"nullable": true,
|
|
2109
|
+
"format": "date-time",
|
|
2110
|
+
"readOnly": true
|
|
2111
|
+
},
|
|
2112
|
+
"password_reset_token_hash": {
|
|
2113
|
+
"description": "Internal: sha256 hash of the active password-reset token. Server-set, never returned in responses.",
|
|
2114
|
+
"type": "string",
|
|
2115
|
+
"nullable": true,
|
|
2116
|
+
"readOnly": true
|
|
2117
|
+
},
|
|
2118
|
+
"password_reset_token_expires_at": {
|
|
2119
|
+
"description": "Internal: expiry for the active password-reset token (ISO 8601). Server-set, never returned in responses.",
|
|
2120
|
+
"type": "string",
|
|
2121
|
+
"nullable": true,
|
|
2122
|
+
"format": "date-time",
|
|
2123
|
+
"readOnly": true
|
|
2124
|
+
},
|
|
2125
|
+
"department": {
|
|
2126
|
+
"type": "string",
|
|
2127
|
+
"description": "User's department",
|
|
2128
|
+
"nullable": true,
|
|
2129
|
+
"example": "Sales"
|
|
2130
|
+
},
|
|
2131
|
+
"phone": {
|
|
2132
|
+
"description": "User's phone number",
|
|
2133
|
+
"type": "string",
|
|
2134
|
+
"nullable": true,
|
|
2135
|
+
"example": 1234567890
|
|
2136
|
+
},
|
|
2137
|
+
"secondary_phone": {
|
|
2138
|
+
"description": "User's secondary phone number, preferred for communication",
|
|
2139
|
+
"type": "string",
|
|
2140
|
+
"nullable": true,
|
|
2141
|
+
"example": 1234567890
|
|
2142
|
+
},
|
|
2143
|
+
"mfa_enabled": {
|
|
2144
|
+
"description": "User's multi-factor authentication status",
|
|
2145
|
+
"type": "boolean",
|
|
2146
|
+
"example": false
|
|
2147
|
+
},
|
|
2148
|
+
"has_passkeys": {
|
|
2149
|
+
"description": "Whether the user has any registered passkeys",
|
|
2150
|
+
"type": "boolean",
|
|
2151
|
+
"example": false
|
|
2152
|
+
},
|
|
2153
|
+
"phone_verified": {
|
|
2154
|
+
"description": "User's phone number verification status",
|
|
2155
|
+
"type": "boolean",
|
|
2156
|
+
"example": true
|
|
2157
|
+
},
|
|
2158
|
+
"token": {
|
|
2159
|
+
"$ref": "#/components/schemas/InviteToken"
|
|
2160
|
+
},
|
|
2161
|
+
"signature": {
|
|
2162
|
+
"description": "User's email signature",
|
|
2163
|
+
"type": "string",
|
|
2164
|
+
"example": "<p>Thanks</p>",
|
|
2165
|
+
"nullable": true
|
|
2166
|
+
},
|
|
2167
|
+
"is_signature_enabled": {
|
|
2168
|
+
"description": "Whether the user's signature is enabled",
|
|
2169
|
+
"type": "boolean",
|
|
2170
|
+
"example": true,
|
|
2171
|
+
"nullable": true
|
|
2172
|
+
},
|
|
2173
|
+
"preferred_language": {
|
|
2174
|
+
"description": "User's preferred language",
|
|
2175
|
+
"type": "string",
|
|
2176
|
+
"example": "de"
|
|
2177
|
+
},
|
|
2178
|
+
"custom_start_page": {
|
|
2179
|
+
"description": "User's start page after login",
|
|
2180
|
+
"type": "string",
|
|
2181
|
+
"pattern": "^/app/*",
|
|
2182
|
+
"default": "/app/dashboard",
|
|
2183
|
+
"nullable": true
|
|
2184
|
+
},
|
|
2185
|
+
"custom_navigation": {
|
|
2186
|
+
"$ref": "#/components/schemas/NavigationId"
|
|
2187
|
+
},
|
|
2188
|
+
"override_release_channel": {
|
|
2189
|
+
"description": "This field is used to override the release channel for the user.",
|
|
2190
|
+
"type": "string",
|
|
2191
|
+
"nullable": true,
|
|
2192
|
+
"enum": [
|
|
2193
|
+
"canary",
|
|
2194
|
+
"rc",
|
|
2195
|
+
"stable",
|
|
2196
|
+
null
|
|
2197
|
+
]
|
|
2198
|
+
},
|
|
2199
|
+
"feature_preferences": {
|
|
2200
|
+
"description": "User's feature preferences",
|
|
2201
|
+
"type": "object",
|
|
2202
|
+
"nullable": true,
|
|
2203
|
+
"additionalProperties": true,
|
|
2204
|
+
"example": {
|
|
2205
|
+
"feature_name": true
|
|
2206
|
+
}
|
|
2207
|
+
},
|
|
2208
|
+
"image_uri": {
|
|
2209
|
+
"type": "object",
|
|
2210
|
+
"description": "User's custom profile image",
|
|
2211
|
+
"additionalProperties": true,
|
|
2212
|
+
"properties": {
|
|
2213
|
+
"original": {
|
|
2214
|
+
"type": "string",
|
|
2215
|
+
"format": "uri"
|
|
2216
|
+
},
|
|
2217
|
+
"thumbnail_32": {
|
|
2218
|
+
"type": "string",
|
|
2219
|
+
"format": "uri"
|
|
2220
|
+
}
|
|
2221
|
+
},
|
|
2222
|
+
"nullable": true,
|
|
2223
|
+
"example": {
|
|
2224
|
+
"original": "https://account-profile-images.epilot.cloud/1/avatar.png",
|
|
2225
|
+
"thumbnail_32": "https://account-profile-images.epilot.cloud/1/avatar_32x32.png"
|
|
2226
|
+
}
|
|
2227
|
+
},
|
|
2228
|
+
"favorites": {
|
|
2229
|
+
"type": "object",
|
|
2230
|
+
"additionalProperties": true,
|
|
2231
|
+
"example": {
|
|
2232
|
+
"entity_views": {
|
|
2233
|
+
"opportunity": "891a5409850abf8b92bd2cb7bdd2844d32ce6bec",
|
|
2234
|
+
"order": "628aee91-7c2f-4047-ab0d-433582a19c49"
|
|
2235
|
+
},
|
|
2236
|
+
"dashboard": "751ff121-9ac2-4511-a2e6-851f11287380"
|
|
2237
|
+
}
|
|
2238
|
+
},
|
|
2239
|
+
"email_notification_setting": {
|
|
2240
|
+
"type": "object",
|
|
2241
|
+
"additionalProperties": true,
|
|
2242
|
+
"example": {
|
|
2243
|
+
"added_participant_opportunity": true,
|
|
2244
|
+
"assigned_opportunity": true,
|
|
2245
|
+
"assigned_task": true,
|
|
2246
|
+
"comment_opportunity": true,
|
|
2247
|
+
"deleted_task": true,
|
|
2248
|
+
"escalated_task": true,
|
|
2249
|
+
"message_receive_opportunity": true,
|
|
2250
|
+
"message_send_opportunity": true,
|
|
2251
|
+
"created_task": true,
|
|
2252
|
+
"created_opportunity_manual": true,
|
|
2253
|
+
"created_opportunity_auto": true,
|
|
2254
|
+
"deleted_opportunity": true
|
|
2255
|
+
}
|
|
2256
|
+
},
|
|
2257
|
+
"in_app_notification_setting": {
|
|
2258
|
+
"type": "object",
|
|
2259
|
+
"additionalProperties": true,
|
|
2260
|
+
"description": "Per-notification-type in-app delivery preferences (notification type key -> enabled). Written by the my-account notification settings UI and honored by svc-notification-api at delivery time. Absent or partial keys fall back to each notification type's configured default. Mirrors email_notification_setting for the in-app channel.",
|
|
2261
|
+
"example": {
|
|
2262
|
+
"integration_critical_error": true,
|
|
2263
|
+
"integration_error_threshold": true,
|
|
2264
|
+
"assigned_opportunity": true,
|
|
2265
|
+
"assigned_task": true
|
|
2266
|
+
}
|
|
2267
|
+
},
|
|
2268
|
+
"properties": {
|
|
2269
|
+
"type": "array",
|
|
2270
|
+
"items": {
|
|
2271
|
+
"type": "object",
|
|
2272
|
+
"properties": {
|
|
2273
|
+
"name": {
|
|
2274
|
+
"type": "string",
|
|
2275
|
+
"example": "profileImageName"
|
|
2276
|
+
},
|
|
2277
|
+
"value": {
|
|
2278
|
+
"type": "string",
|
|
2279
|
+
"example": "avatar.png"
|
|
2280
|
+
}
|
|
2281
|
+
},
|
|
2282
|
+
"required": [
|
|
2283
|
+
"name",
|
|
2284
|
+
"value"
|
|
2285
|
+
]
|
|
2286
|
+
}
|
|
2287
|
+
},
|
|
2288
|
+
"tags": {
|
|
2289
|
+
"type": "array",
|
|
2290
|
+
"description": "User tags/labels assigned for classification (e.g. label slugs)",
|
|
2291
|
+
"nullable": true,
|
|
2292
|
+
"items": {
|
|
2293
|
+
"type": "string"
|
|
2294
|
+
},
|
|
2295
|
+
"example": [
|
|
2296
|
+
"non-billable"
|
|
2297
|
+
]
|
|
2298
|
+
}
|
|
2299
|
+
}
|
|
2300
|
+
},
|
|
2301
|
+
"User": {
|
|
2302
|
+
"type": "object",
|
|
2303
|
+
"properties": {
|
|
2304
|
+
"id": {
|
|
2305
|
+
"$ref": "#/components/schemas/UserId"
|
|
2306
|
+
},
|
|
2307
|
+
"organization_id": {
|
|
2308
|
+
"$ref": "#/components/schemas/OrganizationId"
|
|
2309
|
+
},
|
|
2310
|
+
"email": {
|
|
2311
|
+
"type": "string",
|
|
2312
|
+
"format": "email"
|
|
2313
|
+
},
|
|
2314
|
+
"display_name": {
|
|
2315
|
+
"type": "string",
|
|
2316
|
+
"example": "Example user",
|
|
2317
|
+
"deprecated": true
|
|
2318
|
+
},
|
|
2319
|
+
"name": {
|
|
2320
|
+
"type": "string",
|
|
2321
|
+
"example": "Example user",
|
|
2322
|
+
"deprecated": true
|
|
2323
|
+
},
|
|
2324
|
+
"preferred_language": {
|
|
2325
|
+
"type": "string",
|
|
2326
|
+
"example": "de"
|
|
2327
|
+
},
|
|
2328
|
+
"signature": {
|
|
2329
|
+
"type": "string",
|
|
2330
|
+
"example": "<p>Thanks</p>"
|
|
2331
|
+
},
|
|
2332
|
+
"custom_navigation": {
|
|
2333
|
+
"$ref": "#/components/schemas/NavigationId"
|
|
2334
|
+
},
|
|
2335
|
+
"roles": {
|
|
2336
|
+
"type": "array",
|
|
2337
|
+
"items": {
|
|
2338
|
+
"type": "string",
|
|
2339
|
+
"example": "Owner"
|
|
2340
|
+
},
|
|
2341
|
+
"deprecated": true,
|
|
2342
|
+
"description": "Deprecated! Please use Permissions API instead"
|
|
2343
|
+
},
|
|
2344
|
+
"image_uri": {
|
|
2345
|
+
"type": "object",
|
|
2346
|
+
"additionalProperties": true,
|
|
2347
|
+
"properties": {
|
|
2348
|
+
"original": {
|
|
2349
|
+
"type": "string",
|
|
2350
|
+
"format": "uri",
|
|
2351
|
+
"example": "https://account-profile-images.epilot.cloud/1/avatar.png"
|
|
2352
|
+
},
|
|
2353
|
+
"thumbnail_32": {
|
|
2354
|
+
"type": "string",
|
|
2355
|
+
"format": "uri",
|
|
2356
|
+
"example": "https://account-profile-images.epilot.cloud/1/avatar_32x32.png"
|
|
2357
|
+
}
|
|
2358
|
+
},
|
|
2359
|
+
"nullable": true
|
|
2360
|
+
},
|
|
2361
|
+
"properties": {
|
|
2362
|
+
"type": "array",
|
|
2363
|
+
"items": {
|
|
2364
|
+
"type": "object",
|
|
2365
|
+
"properties": {
|
|
2366
|
+
"name": {
|
|
2367
|
+
"type": "string",
|
|
2368
|
+
"example": "profileImageName"
|
|
2369
|
+
},
|
|
2370
|
+
"value": {
|
|
2371
|
+
"type": "string",
|
|
2372
|
+
"example": "avatar.png"
|
|
2373
|
+
}
|
|
2374
|
+
},
|
|
2375
|
+
"required": [
|
|
2376
|
+
"name",
|
|
2377
|
+
"value"
|
|
2378
|
+
]
|
|
2379
|
+
}
|
|
2380
|
+
}
|
|
2381
|
+
},
|
|
2382
|
+
"required": [
|
|
2383
|
+
"id",
|
|
2384
|
+
"organization_id",
|
|
2385
|
+
"email",
|
|
2386
|
+
"name",
|
|
2387
|
+
"preferred_language",
|
|
2388
|
+
"roles",
|
|
2389
|
+
"properties"
|
|
2390
|
+
]
|
|
2391
|
+
},
|
|
2392
|
+
"LoginParameters": {
|
|
2393
|
+
"type": "object",
|
|
2394
|
+
"properties": {
|
|
2395
|
+
"organization_id": {
|
|
2396
|
+
"type": "string",
|
|
2397
|
+
"example": "123"
|
|
2398
|
+
},
|
|
2399
|
+
"organization_name": {
|
|
2400
|
+
"type": "string",
|
|
2401
|
+
"example": "epilot GmbH"
|
|
2402
|
+
},
|
|
2403
|
+
"organization_type": {
|
|
2404
|
+
"type": "string",
|
|
2405
|
+
"example": "Vendor"
|
|
2406
|
+
},
|
|
2407
|
+
"organization_use": {
|
|
2408
|
+
"type": "string",
|
|
2409
|
+
"example": "Production"
|
|
2410
|
+
},
|
|
2411
|
+
"cognito_region": {
|
|
2412
|
+
"type": "string",
|
|
2413
|
+
"example": "eu-central-1"
|
|
2414
|
+
},
|
|
2415
|
+
"cognito_user_pool_id": {
|
|
2416
|
+
"type": "string",
|
|
2417
|
+
"example": "eu-central-sample"
|
|
2418
|
+
},
|
|
2419
|
+
"cognito_user_pool_client_id": {
|
|
2420
|
+
"type": "string",
|
|
2421
|
+
"example": "asbkh213ehkquwhdi"
|
|
2422
|
+
},
|
|
2423
|
+
"cognito_oauth_domain": {
|
|
2424
|
+
"type": "string",
|
|
2425
|
+
"example": "epilot-org-123"
|
|
2426
|
+
},
|
|
2427
|
+
"cognito_oauth_scopes": {
|
|
2428
|
+
"type": "array",
|
|
2429
|
+
"items": {
|
|
2430
|
+
"type": "string"
|
|
2431
|
+
},
|
|
2432
|
+
"example": [
|
|
2433
|
+
"openid"
|
|
2434
|
+
]
|
|
2435
|
+
},
|
|
2436
|
+
"oauth_response_type": {
|
|
2437
|
+
"type": "string",
|
|
2438
|
+
"enum": [
|
|
2439
|
+
"code",
|
|
2440
|
+
"token"
|
|
2441
|
+
]
|
|
2442
|
+
},
|
|
2443
|
+
"passkey_enabled": {
|
|
2444
|
+
"type": "boolean",
|
|
2445
|
+
"description": "Whether passkey login is enabled for this organization"
|
|
2446
|
+
},
|
|
2447
|
+
"passkeys_registered": {
|
|
2448
|
+
"type": "boolean",
|
|
2449
|
+
"description": "Whether the user has at least one passkey registered. Lets the login\nUI offer passkey authentication as an alternative to an MFA code.\nDiscloses nothing that :beginPasskeyAuthentication doesn't already\nreveal for a known email address.\n"
|
|
2450
|
+
}
|
|
2451
|
+
}
|
|
2452
|
+
},
|
|
2453
|
+
"GroupImageUri": {
|
|
2454
|
+
"description": "Group's profile image or gradient colors. Supports uploaded image URLs and generated gradient avatars.",
|
|
2455
|
+
"type": "object",
|
|
2456
|
+
"additionalProperties": true,
|
|
2457
|
+
"nullable": true,
|
|
2458
|
+
"properties": {
|
|
2459
|
+
"original": {
|
|
2460
|
+
"type": "string",
|
|
2461
|
+
"format": "uri",
|
|
2462
|
+
"example": "https://account-profile-images.epilot.cloud/org/group-avatar.png"
|
|
2463
|
+
},
|
|
2464
|
+
"thumbnail_32": {
|
|
2465
|
+
"type": "string",
|
|
2466
|
+
"format": "uri",
|
|
2467
|
+
"example": "https://account-profile-images.epilot.cloud/org/group-avatar_32x32.png"
|
|
2468
|
+
},
|
|
2469
|
+
"thumbnail_64": {
|
|
2470
|
+
"type": "string",
|
|
2471
|
+
"format": "uri",
|
|
2472
|
+
"example": "https://account-profile-images.epilot.cloud/org/group-avatar_64x64.png"
|
|
2473
|
+
},
|
|
2474
|
+
"gradient_colors": {
|
|
2475
|
+
"type": "array",
|
|
2476
|
+
"description": "Two hex color strings [base_color, accent_color] for mesh gradient avatar.",
|
|
2477
|
+
"items": {
|
|
2478
|
+
"type": "string",
|
|
2479
|
+
"pattern": "^#[0-9a-fA-F]{6}$"
|
|
2480
|
+
},
|
|
2481
|
+
"minItems": 2,
|
|
2482
|
+
"maxItems": 2,
|
|
2483
|
+
"example": [
|
|
2484
|
+
"#0588f0",
|
|
2485
|
+
"#3358d4"
|
|
2486
|
+
]
|
|
2487
|
+
}
|
|
2488
|
+
},
|
|
2489
|
+
"example": {
|
|
2490
|
+
"gradient_colors": [
|
|
2491
|
+
"#0588f0",
|
|
2492
|
+
"#3358d4"
|
|
2493
|
+
]
|
|
2494
|
+
}
|
|
2495
|
+
},
|
|
2496
|
+
"CreateGroupReq": {
|
|
2497
|
+
"type": "object",
|
|
2498
|
+
"properties": {
|
|
2499
|
+
"name": {
|
|
2500
|
+
"description": "The name of the group. Could be a department or a team.",
|
|
2501
|
+
"type": "string",
|
|
2502
|
+
"example": "Finance"
|
|
2503
|
+
},
|
|
2504
|
+
"user_ids": {
|
|
2505
|
+
"description": "The list of user ids in the group.",
|
|
2506
|
+
"type": "array",
|
|
2507
|
+
"items": {
|
|
2508
|
+
"$ref": "#/components/schemas/UserId"
|
|
2509
|
+
},
|
|
2510
|
+
"example": [
|
|
2511
|
+
"123",
|
|
2512
|
+
"456"
|
|
2513
|
+
]
|
|
2514
|
+
},
|
|
2515
|
+
"image_uri": {
|
|
2516
|
+
"$ref": "#/components/schemas/GroupImageUri"
|
|
2517
|
+
},
|
|
2518
|
+
"abbreviation": {
|
|
2519
|
+
"description": "A short abbreviation for the group, up to 2 characters.",
|
|
2520
|
+
"type": "string",
|
|
2521
|
+
"maxLength": 2,
|
|
2522
|
+
"nullable": true,
|
|
2523
|
+
"example": "FN"
|
|
2524
|
+
}
|
|
2525
|
+
},
|
|
2526
|
+
"required": [
|
|
2527
|
+
"name"
|
|
2528
|
+
]
|
|
2529
|
+
},
|
|
2530
|
+
"UpdateGroupReq": {
|
|
2531
|
+
"type": "object",
|
|
2532
|
+
"properties": {
|
|
2533
|
+
"name": {
|
|
2534
|
+
"description": "The name of the group. Could be a department or a team.",
|
|
2535
|
+
"type": "string",
|
|
2536
|
+
"example": "Finance"
|
|
2537
|
+
},
|
|
2538
|
+
"user_ids": {
|
|
2539
|
+
"description": "The list of user ids in the group.",
|
|
2540
|
+
"type": "array",
|
|
2541
|
+
"items": {
|
|
2542
|
+
"$ref": "#/components/schemas/UserId"
|
|
2543
|
+
},
|
|
2544
|
+
"example": [
|
|
2545
|
+
"123",
|
|
2546
|
+
"456"
|
|
2547
|
+
]
|
|
2548
|
+
},
|
|
2549
|
+
"image_uri": {
|
|
2550
|
+
"$ref": "#/components/schemas/GroupImageUri"
|
|
2551
|
+
},
|
|
2552
|
+
"abbreviation": {
|
|
2553
|
+
"description": "A short abbreviation for the group, up to 2 characters.",
|
|
2554
|
+
"type": "string",
|
|
2555
|
+
"maxLength": 2,
|
|
2556
|
+
"nullable": true,
|
|
2557
|
+
"example": "FN"
|
|
2558
|
+
}
|
|
2559
|
+
}
|
|
2560
|
+
},
|
|
2561
|
+
"Group": {
|
|
2562
|
+
"type": "object",
|
|
2563
|
+
"properties": {
|
|
2564
|
+
"id": {
|
|
2565
|
+
"$ref": "#/components/schemas/GroupId"
|
|
2566
|
+
},
|
|
2567
|
+
"org_id": {
|
|
2568
|
+
"$ref": "#/components/schemas/OrganizationId"
|
|
2569
|
+
},
|
|
2570
|
+
"name": {
|
|
2571
|
+
"description": "The name of the group. Could be a department or a team.",
|
|
2572
|
+
"type": "string",
|
|
2573
|
+
"example": "Finance"
|
|
2574
|
+
},
|
|
2575
|
+
"created_at": {
|
|
2576
|
+
"type": "string",
|
|
2577
|
+
"example": "2024-02-08T04:44:32.246Z"
|
|
2578
|
+
},
|
|
2579
|
+
"updated_at": {
|
|
2580
|
+
"type": "string",
|
|
2581
|
+
"example": "2024-02-08T04:44:32.246Z"
|
|
2582
|
+
},
|
|
2583
|
+
"created_by": {
|
|
2584
|
+
"description": "The user id of the user that created the group.",
|
|
2585
|
+
"type": "string",
|
|
2586
|
+
"example": "123"
|
|
2587
|
+
},
|
|
2588
|
+
"crt_assignee": {
|
|
2589
|
+
"description": "The current user assignee of the group. This is the user, from within the group, that has last been assigned to a workflow task.",
|
|
2590
|
+
"allOf": [
|
|
2591
|
+
{
|
|
2592
|
+
"$ref": "#/components/schemas/UserV2"
|
|
2593
|
+
},
|
|
2594
|
+
{
|
|
2595
|
+
"type": "object",
|
|
2596
|
+
"properties": {
|
|
2597
|
+
"crt_index": {
|
|
2598
|
+
"description": "The index of the current assignee in the group's user list.",
|
|
2599
|
+
"type": "number",
|
|
2600
|
+
"example": 3
|
|
2601
|
+
}
|
|
2602
|
+
}
|
|
2603
|
+
}
|
|
2604
|
+
]
|
|
2605
|
+
},
|
|
2606
|
+
"users": {
|
|
2607
|
+
"description": "The list of users in the group. Only contains the full user when respective endpoint is called with a flag. Otherwise only contains the user id.",
|
|
2608
|
+
"type": "array",
|
|
2609
|
+
"items": {
|
|
2610
|
+
"$ref": "#/components/schemas/UserV2"
|
|
2611
|
+
}
|
|
2612
|
+
},
|
|
2613
|
+
"image_uri": {
|
|
2614
|
+
"$ref": "#/components/schemas/GroupImageUri"
|
|
2615
|
+
},
|
|
2616
|
+
"abbreviation": {
|
|
2617
|
+
"description": "A short abbreviation for the group, up to 2 characters.",
|
|
2618
|
+
"type": "string",
|
|
2619
|
+
"maxLength": 2,
|
|
2620
|
+
"nullable": true,
|
|
2621
|
+
"example": "FN"
|
|
2622
|
+
}
|
|
2623
|
+
},
|
|
2624
|
+
"required": [
|
|
2625
|
+
"id",
|
|
2626
|
+
"org_id",
|
|
2627
|
+
"name",
|
|
2628
|
+
"created_at",
|
|
2629
|
+
"updated_at"
|
|
2630
|
+
]
|
|
2631
|
+
},
|
|
2632
|
+
"SignupUserPayload": {
|
|
2633
|
+
"type": "object",
|
|
2634
|
+
"properties": {
|
|
2635
|
+
"organization_detail": {
|
|
2636
|
+
"$ref": "#/components/schemas/OrganizationDetail"
|
|
2637
|
+
},
|
|
2638
|
+
"user_detail": {
|
|
2639
|
+
"$ref": "#/components/schemas/UserDetail"
|
|
2640
|
+
},
|
|
2641
|
+
"language": {
|
|
2642
|
+
"type": "string",
|
|
2643
|
+
"description": "Language for user invitation email",
|
|
2644
|
+
"enum": [
|
|
2645
|
+
"en",
|
|
2646
|
+
"de"
|
|
2647
|
+
],
|
|
2648
|
+
"default": "en"
|
|
2649
|
+
}
|
|
2650
|
+
}
|
|
2651
|
+
},
|
|
2652
|
+
"OrganizationDetail": {
|
|
2653
|
+
"additionalProperties": true,
|
|
2654
|
+
"type": "object",
|
|
2655
|
+
"properties": {
|
|
2656
|
+
"type": {
|
|
2657
|
+
"type": "string",
|
|
2658
|
+
"enum": [
|
|
2659
|
+
"Vendor",
|
|
2660
|
+
"Partner"
|
|
2661
|
+
]
|
|
2662
|
+
},
|
|
2663
|
+
"name": {
|
|
2664
|
+
"type": "string",
|
|
2665
|
+
"example": "Epilot"
|
|
2666
|
+
},
|
|
2667
|
+
"pricing_tier": {
|
|
2668
|
+
"type": "string",
|
|
2669
|
+
"example": "professional"
|
|
2670
|
+
},
|
|
2671
|
+
"email": {
|
|
2672
|
+
"type": "string"
|
|
2673
|
+
},
|
|
2674
|
+
"phone": {
|
|
2675
|
+
"type": "string"
|
|
2676
|
+
},
|
|
2677
|
+
"website": {
|
|
2678
|
+
"type": "string"
|
|
2679
|
+
},
|
|
2680
|
+
"is_privacy_policy_checked": {
|
|
2681
|
+
"type": "boolean",
|
|
2682
|
+
"example": false,
|
|
2683
|
+
"nullable": true
|
|
2684
|
+
},
|
|
2685
|
+
"is_terms_and_conditions_checked": {
|
|
2686
|
+
"type": "boolean",
|
|
2687
|
+
"example": false,
|
|
2688
|
+
"nullable": true
|
|
2689
|
+
}
|
|
2690
|
+
},
|
|
2691
|
+
"required": [
|
|
2692
|
+
"type",
|
|
2693
|
+
"name",
|
|
2694
|
+
"pricing_tier",
|
|
2695
|
+
"email"
|
|
2696
|
+
]
|
|
2697
|
+
},
|
|
2698
|
+
"CognitoDetails": {
|
|
2699
|
+
"type": "object",
|
|
2700
|
+
"properties": {
|
|
2701
|
+
"cognito_region": {
|
|
2702
|
+
"type": "string",
|
|
2703
|
+
"example": "eu-central-1"
|
|
2704
|
+
},
|
|
2705
|
+
"cognito_user_pool_id": {
|
|
2706
|
+
"type": "string",
|
|
2707
|
+
"example": "eu-central-sample"
|
|
2708
|
+
},
|
|
2709
|
+
"cognito_user_pool_client_id": {
|
|
2710
|
+
"type": "string",
|
|
2711
|
+
"example": "asbkh213ehkquwhdi"
|
|
2712
|
+
},
|
|
2713
|
+
"cognito_user_pool_arn": {
|
|
2714
|
+
"type": "string",
|
|
2715
|
+
"example": "arn:aws:cognito-idp:eu-central-1:123456789012:userpool/eu-central-sample"
|
|
2716
|
+
}
|
|
2717
|
+
}
|
|
2718
|
+
},
|
|
2719
|
+
"UserDetail": {
|
|
2720
|
+
"type": "object",
|
|
2721
|
+
"properties": {
|
|
2722
|
+
"full_name": {
|
|
2723
|
+
"type": "string",
|
|
2724
|
+
"example": "Example user"
|
|
2725
|
+
},
|
|
2726
|
+
"email": {
|
|
2727
|
+
"type": "string",
|
|
2728
|
+
"format": "email"
|
|
2729
|
+
},
|
|
2730
|
+
"password": {
|
|
2731
|
+
"type": "string",
|
|
2732
|
+
"description": "User's password",
|
|
2733
|
+
"example": "AKjhdakjsdh@!34"
|
|
2734
|
+
}
|
|
2735
|
+
},
|
|
2736
|
+
"required": [
|
|
2737
|
+
"full_name",
|
|
2738
|
+
"email",
|
|
2739
|
+
"password"
|
|
2740
|
+
]
|
|
2741
|
+
},
|
|
2742
|
+
"Organization": {
|
|
2743
|
+
"type": "object",
|
|
2744
|
+
"properties": {
|
|
2745
|
+
"id": {
|
|
2746
|
+
"$ref": "#/components/schemas/OrganizationId"
|
|
2747
|
+
},
|
|
2748
|
+
"type": {
|
|
2749
|
+
"type": "string",
|
|
2750
|
+
"enum": [
|
|
2751
|
+
"Vendor",
|
|
2752
|
+
"Partner"
|
|
2753
|
+
],
|
|
2754
|
+
"nullable": true
|
|
2755
|
+
},
|
|
2756
|
+
"name": {
|
|
2757
|
+
"type": "string",
|
|
2758
|
+
"example": "Epilot",
|
|
2759
|
+
"nullable": true
|
|
2760
|
+
},
|
|
2761
|
+
"signature": {
|
|
2762
|
+
"type": "string",
|
|
2763
|
+
"example": "<p>Thanks</p>",
|
|
2764
|
+
"nullable": true
|
|
2765
|
+
},
|
|
2766
|
+
"symbol": {
|
|
2767
|
+
"type": "string",
|
|
2768
|
+
"example": "EPI",
|
|
2769
|
+
"nullable": true
|
|
2770
|
+
},
|
|
2771
|
+
"pricing_tier": {
|
|
2772
|
+
"type": "string",
|
|
2773
|
+
"example": "professional",
|
|
2774
|
+
"nullable": true
|
|
2775
|
+
},
|
|
2776
|
+
"email": {
|
|
2777
|
+
"type": "string",
|
|
2778
|
+
"example": "someone@epilot.cloud",
|
|
2779
|
+
"nullable": true
|
|
2780
|
+
},
|
|
2781
|
+
"phone": {
|
|
2782
|
+
"type": "string",
|
|
2783
|
+
"example": 49123123123,
|
|
2784
|
+
"nullable": true
|
|
2785
|
+
},
|
|
2786
|
+
"website": {
|
|
2787
|
+
"type": "string",
|
|
2788
|
+
"example": "https://epilot.cloud",
|
|
2789
|
+
"nullable": true
|
|
2790
|
+
},
|
|
2791
|
+
"address": {
|
|
2792
|
+
"type": "object",
|
|
2793
|
+
"properties": {
|
|
2794
|
+
"country": {
|
|
2795
|
+
"type": "string",
|
|
2796
|
+
"nullable": true
|
|
2797
|
+
},
|
|
2798
|
+
"city": {
|
|
2799
|
+
"type": "string",
|
|
2800
|
+
"nullable": true
|
|
2801
|
+
},
|
|
2802
|
+
"postal_code": {
|
|
2803
|
+
"type": "string",
|
|
2804
|
+
"nullable": true
|
|
2805
|
+
},
|
|
2806
|
+
"street": {
|
|
2807
|
+
"type": "string",
|
|
2808
|
+
"nullable": true
|
|
2809
|
+
},
|
|
2810
|
+
"street_number": {
|
|
2811
|
+
"type": "string",
|
|
2812
|
+
"nullable": true
|
|
2813
|
+
}
|
|
2814
|
+
}
|
|
2815
|
+
},
|
|
2816
|
+
"logo_url": {
|
|
2817
|
+
"type": "string",
|
|
2818
|
+
"example": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",
|
|
2819
|
+
"nullable": true
|
|
2820
|
+
},
|
|
2821
|
+
"logo_thumbnail_url": {
|
|
2822
|
+
"type": "string",
|
|
2823
|
+
"example": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",
|
|
2824
|
+
"nullable": true
|
|
2825
|
+
},
|
|
2826
|
+
"is_unlicensed_org": {
|
|
2827
|
+
"type": "boolean",
|
|
2828
|
+
"example": false,
|
|
2829
|
+
"nullable": true
|
|
2830
|
+
},
|
|
2831
|
+
"cognito_details": {
|
|
2832
|
+
"$ref": "#/components/schemas/CognitoDetails"
|
|
2833
|
+
}
|
|
2834
|
+
}
|
|
2835
|
+
},
|
|
2836
|
+
"DataPointsResponse": {
|
|
2837
|
+
"type": "array",
|
|
2838
|
+
"items": {
|
|
2839
|
+
"$ref": "#/components/schemas/DataPoint"
|
|
2840
|
+
}
|
|
2841
|
+
},
|
|
2842
|
+
"DataPoint": {
|
|
2843
|
+
"type": "object",
|
|
2844
|
+
"properties": {
|
|
2845
|
+
"id": {
|
|
2846
|
+
"description": "Organization id",
|
|
2847
|
+
"type": "number",
|
|
2848
|
+
"example": 206801
|
|
2849
|
+
},
|
|
2850
|
+
"actual_users": {
|
|
2851
|
+
"description": "Number of current user",
|
|
2852
|
+
"type": "number",
|
|
2853
|
+
"example": 10
|
|
2854
|
+
},
|
|
2855
|
+
"max_users_last_month": {
|
|
2856
|
+
"description": "Max user last month",
|
|
2857
|
+
"type": "number",
|
|
2858
|
+
"example": 10
|
|
2859
|
+
},
|
|
2860
|
+
"non_billable_users_last_month": {
|
|
2861
|
+
"description": "Max non-billable user last month",
|
|
2862
|
+
"type": "number",
|
|
2863
|
+
"example": 10
|
|
2864
|
+
}
|
|
2865
|
+
}
|
|
2866
|
+
},
|
|
2867
|
+
"UserSettingScope": {
|
|
2868
|
+
"type": "string",
|
|
2869
|
+
"description": "User setting scope. Values are limited to 64 characters.",
|
|
2870
|
+
"minLength": 1,
|
|
2871
|
+
"maxLength": 64,
|
|
2872
|
+
"example": "calendar"
|
|
2873
|
+
},
|
|
2874
|
+
"UserSettingKey": {
|
|
2875
|
+
"type": "string",
|
|
2876
|
+
"description": "User setting key. Values are limited to 128 characters.",
|
|
2877
|
+
"minLength": 1,
|
|
2878
|
+
"maxLength": 128,
|
|
2879
|
+
"example": "visible_calendars"
|
|
2880
|
+
},
|
|
2881
|
+
"UserSettingValue": {
|
|
2882
|
+
"description": "The JSON value of a user setting. Objects are recommended for extensibility, but any JSON value is accepted up to 64 KiB when serialized as JSON.",
|
|
2883
|
+
"x-maxSerializedBytes": 65536
|
|
2884
|
+
},
|
|
2885
|
+
"UserSetting": {
|
|
2886
|
+
"type": "object",
|
|
2887
|
+
"properties": {
|
|
2888
|
+
"scope": {
|
|
2889
|
+
"$ref": "#/components/schemas/UserSettingScope"
|
|
2890
|
+
},
|
|
2891
|
+
"key": {
|
|
2892
|
+
"$ref": "#/components/schemas/UserSettingKey"
|
|
2893
|
+
},
|
|
2894
|
+
"value": {
|
|
2895
|
+
"$ref": "#/components/schemas/UserSettingValue"
|
|
2896
|
+
},
|
|
2897
|
+
"created_at": {
|
|
2898
|
+
"type": "string",
|
|
2899
|
+
"format": "date-time"
|
|
2900
|
+
},
|
|
2901
|
+
"updated_at": {
|
|
2902
|
+
"type": "string",
|
|
2903
|
+
"format": "date-time"
|
|
2904
|
+
}
|
|
2905
|
+
},
|
|
2906
|
+
"required": [
|
|
2907
|
+
"scope",
|
|
2908
|
+
"key",
|
|
2909
|
+
"value",
|
|
2910
|
+
"created_at",
|
|
2911
|
+
"updated_at"
|
|
2912
|
+
]
|
|
2913
|
+
},
|
|
2914
|
+
"UserSettingsListResponse": {
|
|
2915
|
+
"type": "object",
|
|
2916
|
+
"properties": {
|
|
2917
|
+
"results": {
|
|
2918
|
+
"type": "array",
|
|
2919
|
+
"items": {
|
|
2920
|
+
"type": "object",
|
|
2921
|
+
"properties": {
|
|
2922
|
+
"scope": {
|
|
2923
|
+
"$ref": "#/components/schemas/UserSettingScope"
|
|
2924
|
+
},
|
|
2925
|
+
"keys": {
|
|
2926
|
+
"type": "array",
|
|
2927
|
+
"items": {
|
|
2928
|
+
"$ref": "#/components/schemas/UserSettingKey"
|
|
2929
|
+
},
|
|
2930
|
+
"example": [
|
|
2931
|
+
"visible_calendars"
|
|
2932
|
+
]
|
|
2933
|
+
}
|
|
2934
|
+
},
|
|
2935
|
+
"required": [
|
|
2936
|
+
"scope",
|
|
2937
|
+
"keys"
|
|
2938
|
+
]
|
|
2939
|
+
}
|
|
2940
|
+
}
|
|
2941
|
+
},
|
|
2942
|
+
"required": [
|
|
2943
|
+
"results"
|
|
2944
|
+
]
|
|
2945
|
+
},
|
|
2946
|
+
"UserSettingsScopeResponse": {
|
|
2947
|
+
"type": "object",
|
|
2948
|
+
"properties": {
|
|
2949
|
+
"scope": {
|
|
2950
|
+
"$ref": "#/components/schemas/UserSettingScope"
|
|
2951
|
+
},
|
|
2952
|
+
"settings": {
|
|
2953
|
+
"type": "object",
|
|
2954
|
+
"additionalProperties": {
|
|
2955
|
+
"$ref": "#/components/schemas/UserSettingValue"
|
|
2956
|
+
},
|
|
2957
|
+
"example": {
|
|
2958
|
+
"visible_calendars": {
|
|
2959
|
+
"calendar_ids": [
|
|
2960
|
+
"holidays"
|
|
2961
|
+
]
|
|
2962
|
+
}
|
|
2963
|
+
}
|
|
2964
|
+
}
|
|
2965
|
+
},
|
|
2966
|
+
"required": [
|
|
2967
|
+
"scope",
|
|
2968
|
+
"settings"
|
|
2969
|
+
]
|
|
2970
|
+
},
|
|
2971
|
+
"Passkey": {
|
|
2972
|
+
"type": "object",
|
|
2973
|
+
"properties": {
|
|
2974
|
+
"credential_id": {
|
|
2975
|
+
"type": "string",
|
|
2976
|
+
"description": "Base64url-encoded credential ID"
|
|
2977
|
+
},
|
|
2978
|
+
"friendly_name": {
|
|
2979
|
+
"type": "string",
|
|
2980
|
+
"example": "My Laptop"
|
|
2981
|
+
},
|
|
2982
|
+
"created_at": {
|
|
2983
|
+
"type": "string",
|
|
2984
|
+
"format": "date-time"
|
|
2985
|
+
},
|
|
2986
|
+
"transports": {
|
|
2987
|
+
"type": "array",
|
|
2988
|
+
"items": {
|
|
2989
|
+
"type": "string"
|
|
2990
|
+
}
|
|
2991
|
+
},
|
|
2992
|
+
"aaguid": {
|
|
2993
|
+
"type": "string"
|
|
2994
|
+
}
|
|
2995
|
+
}
|
|
2996
|
+
},
|
|
2997
|
+
"PasskeyAuthenticationOptions": {
|
|
2998
|
+
"type": "object",
|
|
2999
|
+
"properties": {
|
|
3000
|
+
"options": {
|
|
3001
|
+
"type": "object",
|
|
3002
|
+
"description": "WebAuthn PublicKeyCredentialRequestOptions"
|
|
3003
|
+
},
|
|
3004
|
+
"challenge_token": {
|
|
3005
|
+
"type": "string",
|
|
3006
|
+
"description": "Signed JWT containing the challenge"
|
|
3007
|
+
}
|
|
3008
|
+
}
|
|
3009
|
+
},
|
|
3010
|
+
"PasskeyRegistrationOptions": {
|
|
3011
|
+
"type": "object",
|
|
3012
|
+
"properties": {
|
|
3013
|
+
"options": {
|
|
3014
|
+
"type": "object",
|
|
3015
|
+
"description": "WebAuthn PublicKeyCredentialCreationOptions"
|
|
3016
|
+
},
|
|
3017
|
+
"challenge_token": {
|
|
3018
|
+
"type": "string",
|
|
3019
|
+
"description": "Signed JWT containing the challenge"
|
|
3020
|
+
}
|
|
3021
|
+
}
|
|
3022
|
+
},
|
|
3023
|
+
"PasskeyRegistrationResponse": {
|
|
3024
|
+
"type": "object",
|
|
3025
|
+
"properties": {
|
|
3026
|
+
"challenge_token": {
|
|
3027
|
+
"type": "string",
|
|
3028
|
+
"description": "The challenge token from registerBegin"
|
|
3029
|
+
},
|
|
3030
|
+
"registration_response": {
|
|
3031
|
+
"type": "object",
|
|
3032
|
+
"description": "WebAuthn AuthenticatorAttestationResponse"
|
|
3033
|
+
},
|
|
3034
|
+
"friendly_name": {
|
|
3035
|
+
"type": "string",
|
|
3036
|
+
"example": "My Laptop"
|
|
3037
|
+
}
|
|
3038
|
+
},
|
|
3039
|
+
"required": [
|
|
3040
|
+
"challenge_token",
|
|
3041
|
+
"registration_response"
|
|
3042
|
+
]
|
|
3043
|
+
}
|
|
3044
|
+
}
|
|
3045
|
+
},
|
|
3046
|
+
"servers": [
|
|
3047
|
+
{
|
|
3048
|
+
"url": "https://user.sls.epilot.io"
|
|
3049
|
+
}
|
|
3050
|
+
]
|
|
3051
|
+
}
|