@epilot/cli 0.1.12 → 0.1.16

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.
@@ -0,0 +1,609 @@
1
+ {
2
+ "openapi": "3.0.3",
3
+ "info": {
4
+ "title": "Target API",
5
+ "version": "1.0.0",
6
+ "description": "This API allows managing targets.",
7
+ "contact": {
8
+ "name": "Support",
9
+ "email": "info@epilot.cloud",
10
+ "url": "https://help.epilot.cloud"
11
+ }
12
+ },
13
+ "tags": [
14
+ {
15
+ "name": "Target",
16
+ "description": "Target operations"
17
+ },
18
+ {
19
+ "name": "target_schema",
20
+ "x-displayName": "Target",
21
+ "description": "<SchemaDefinition schemaRef=\"#/components/schemas/Target\" />\n"
22
+ }
23
+ ],
24
+ "x-tagGroups": [
25
+ {
26
+ "name": "APIs",
27
+ "tags": [
28
+ "Target"
29
+ ]
30
+ },
31
+ {
32
+ "name": "Schemas",
33
+ "tags": [
34
+ "target_schema"
35
+ ]
36
+ }
37
+ ],
38
+ "security": [
39
+ {
40
+ "EpilotAuth": []
41
+ },
42
+ {
43
+ "EpilotOrg": []
44
+ }
45
+ ],
46
+ "servers": [
47
+ {
48
+ "url": "https://target.sls.epilot.io"
49
+ }
50
+ ],
51
+ "paths": {
52
+ "/v1/target": {
53
+ "post": {
54
+ "operationId": "createTarget",
55
+ "summary": "createTarget",
56
+ "description": "Create a new target entity",
57
+ "tags": [
58
+ "Target"
59
+ ],
60
+ "requestBody": {
61
+ "$ref": "#/components/requestBodies/TargetCreateRequest"
62
+ },
63
+ "responses": {
64
+ "201": {
65
+ "$ref": "#/components/responses/TargetResponse"
66
+ },
67
+ "400": {
68
+ "$ref": "#/components/responses/ClientErrorResponse"
69
+ },
70
+ "500": {
71
+ "$ref": "#/components/responses/ServerErrorResponse"
72
+ }
73
+ }
74
+ }
75
+ },
76
+ "/v1/target/{targetId}": {
77
+ "get": {
78
+ "operationId": "getTarget",
79
+ "summary": "getTarget",
80
+ "description": "Read a specific target entity by a given id",
81
+ "tags": [
82
+ "Target"
83
+ ],
84
+ "parameters": [
85
+ {
86
+ "$ref": "#/components/parameters/TargetIdPathParam"
87
+ },
88
+ {
89
+ "$ref": "#/components/parameters/HydrateQueryParam"
90
+ },
91
+ {
92
+ "$ref": "#/components/parameters/StrictQueryParam"
93
+ }
94
+ ],
95
+ "responses": {
96
+ "200": {
97
+ "$ref": "#/components/responses/TargetResponse"
98
+ },
99
+ "400": {
100
+ "$ref": "#/components/responses/ClientErrorResponse"
101
+ },
102
+ "500": {
103
+ "$ref": "#/components/responses/ServerErrorResponse"
104
+ }
105
+ }
106
+ },
107
+ "delete": {
108
+ "operationId": "deleteTarget",
109
+ "summary": "deleteTarget",
110
+ "description": "Delete a specific target entity by a given id",
111
+ "tags": [
112
+ "Target"
113
+ ],
114
+ "parameters": [
115
+ {
116
+ "$ref": "#/components/parameters/TargetIdPathParam"
117
+ }
118
+ ],
119
+ "responses": {
120
+ "200": {
121
+ "$ref": "#/components/responses/TargetResponse"
122
+ },
123
+ "400": {
124
+ "$ref": "#/components/responses/ClientErrorResponse"
125
+ },
126
+ "500": {
127
+ "$ref": "#/components/responses/ServerErrorResponse"
128
+ }
129
+ }
130
+ },
131
+ "patch": {
132
+ "operationId": "patchTarget",
133
+ "summary": "patchTarget",
134
+ "description": "Partially update a specific target entity's properties by a given id and a given payload",
135
+ "tags": [
136
+ "Target"
137
+ ],
138
+ "parameters": [
139
+ {
140
+ "$ref": "#/components/parameters/TargetIdPathParam"
141
+ }
142
+ ],
143
+ "requestBody": {
144
+ "$ref": "#/components/requestBodies/TargetPatchRequest"
145
+ },
146
+ "responses": {
147
+ "200": {
148
+ "$ref": "#/components/responses/TargetResponse"
149
+ },
150
+ "400": {
151
+ "$ref": "#/components/responses/ClientErrorResponse"
152
+ },
153
+ "500": {
154
+ "$ref": "#/components/responses/ServerErrorResponse"
155
+ }
156
+ }
157
+ },
158
+ "put": {
159
+ "operationId": "updateTarget",
160
+ "summary": "updateTarget",
161
+ "description": "Completly replace a specific target entity's properties by a given id and a given payload",
162
+ "tags": [
163
+ "Target"
164
+ ],
165
+ "parameters": [
166
+ {
167
+ "$ref": "#/components/parameters/TargetIdPathParam"
168
+ }
169
+ ],
170
+ "requestBody": {
171
+ "$ref": "#/components/requestBodies/TargetUpdateRequest"
172
+ },
173
+ "responses": {
174
+ "200": {
175
+ "$ref": "#/components/responses/TargetResponse"
176
+ },
177
+ "400": {
178
+ "$ref": "#/components/responses/ClientErrorResponse"
179
+ },
180
+ "500": {
181
+ "$ref": "#/components/responses/ServerErrorResponse"
182
+ }
183
+ }
184
+ }
185
+ }
186
+ },
187
+ "components": {
188
+ "securitySchemes": {
189
+ "EpilotAuth": {
190
+ "type": "http",
191
+ "scheme": "bearer",
192
+ "description": "Authorization header with epilot OAuth2 bearer token",
193
+ "bearerFormat": "JWT"
194
+ },
195
+ "EpilotOrg": {
196
+ "description": "Overrides the target organization to allow shared tenantaccess",
197
+ "name": "x-epilot-org-id",
198
+ "in": "header",
199
+ "type": "apiKey"
200
+ }
201
+ },
202
+ "schemas": {
203
+ "BaseError": {
204
+ "type": "object",
205
+ "properties": {
206
+ "status": {
207
+ "type": "integer",
208
+ "example": 404
209
+ },
210
+ "message": {
211
+ "type": "string",
212
+ "example": "Entity not found"
213
+ }
214
+ },
215
+ "required": [
216
+ "status",
217
+ "message"
218
+ ]
219
+ },
220
+ "ServerError": {
221
+ "$ref": "#/components/schemas/BaseError"
222
+ },
223
+ "ClientError": {
224
+ "$ref": "#/components/schemas/BaseError"
225
+ },
226
+ "BaseUUID": {
227
+ "type": "string",
228
+ "format": "uuid",
229
+ "example": "123e4567-e89b-12d3-a456-426614174000"
230
+ },
231
+ "BaseTags": {
232
+ "type": "array",
233
+ "nullable": true,
234
+ "items": {
235
+ "type": "string"
236
+ }
237
+ },
238
+ "BasePurpose": {
239
+ "type": "array",
240
+ "nullable": true,
241
+ "items": {
242
+ "type": "string"
243
+ }
244
+ },
245
+ "BaseRelation": {
246
+ "type": "object",
247
+ "properties": {
248
+ "$relation": {
249
+ "type": "array",
250
+ "items": {
251
+ "type": "object",
252
+ "properties": {
253
+ "entity_id": {
254
+ "$ref": "#/components/schemas/BaseUUID"
255
+ },
256
+ "_tags": {
257
+ "$ref": "#/components/schemas/BaseTags"
258
+ }
259
+ }
260
+ }
261
+ }
262
+ }
263
+ },
264
+ "BaseEntityOwner": {
265
+ "description": "The user / organization owning this entity.\n\nNote: Owner implicitly has access to the entity regardless of ACLs.\n",
266
+ "type": "object",
267
+ "properties": {
268
+ "org_id": {
269
+ "type": "string",
270
+ "example": "123"
271
+ },
272
+ "user_id": {
273
+ "type": "string",
274
+ "example": "123"
275
+ }
276
+ },
277
+ "required": [
278
+ "org_id"
279
+ ]
280
+ },
281
+ "BaseEntityAcl": {
282
+ "type": "object",
283
+ "description": "Access control list (ACL) for an entity. Defines sharing access to external orgs or users.",
284
+ "properties": {
285
+ "view": {
286
+ "type": "array",
287
+ "items": {
288
+ "type": "string",
289
+ "example": "org:456"
290
+ }
291
+ },
292
+ "edit": {
293
+ "type": "array",
294
+ "items": {
295
+ "type": "string",
296
+ "example": "org:456"
297
+ }
298
+ },
299
+ "delete": {
300
+ "type": "array",
301
+ "items": {
302
+ "type": "string",
303
+ "example": "org:456"
304
+ }
305
+ }
306
+ }
307
+ },
308
+ "BaseSystemFields": {
309
+ "type": "object",
310
+ "properties": {
311
+ "_tags": {
312
+ "$ref": "#/components/schemas/BaseTags"
313
+ },
314
+ "_purpose": {
315
+ "$ref": "#/components/schemas/BasePurpose"
316
+ },
317
+ "_files": {
318
+ "$ref": "#/components/schemas/BaseRelation"
319
+ },
320
+ "_manifest": {
321
+ "type": "array",
322
+ "description": "Manifest ID used to create/update the entity",
323
+ "items": {
324
+ "type": "string",
325
+ "format": "uuid",
326
+ "example": "123e4567-e89b-12d3-a456-426614174000"
327
+ }
328
+ },
329
+ "__additional": {
330
+ "type": "object",
331
+ "description": "Additional fields that are not part of the schema",
332
+ "additionalProperties": true,
333
+ "nullable": true,
334
+ "example": {}
335
+ }
336
+ }
337
+ },
338
+ "BaseSystemReadonlyFields": {
339
+ "type": "object",
340
+ "properties": {
341
+ "_id": {
342
+ "$ref": "#/components/schemas/BaseUUID"
343
+ },
344
+ "_schema": {
345
+ "readOnly": true,
346
+ "type": "string"
347
+ },
348
+ "_org": {
349
+ "type": "string",
350
+ "description": "Organization Id the entity belongs to",
351
+ "readOnly": true
352
+ },
353
+ "_tags": {
354
+ "$ref": "#/components/schemas/BaseTags"
355
+ },
356
+ "_files": {
357
+ "$ref": "#/components/schemas/BaseRelation"
358
+ },
359
+ "_owners": {
360
+ "type": "array",
361
+ "readOnly": true,
362
+ "items": {
363
+ "$ref": "#/components/schemas/BaseEntityOwner"
364
+ }
365
+ },
366
+ "_title": {
367
+ "readOnly": true,
368
+ "type": "string"
369
+ },
370
+ "_created_at": {
371
+ "readOnly": true,
372
+ "type": "string",
373
+ "format": "date-time"
374
+ },
375
+ "_updated_at": {
376
+ "readOnly": true,
377
+ "type": "string",
378
+ "format": "date-time"
379
+ },
380
+ "_acl": {
381
+ "$ref": "#/components/schemas/BaseEntityAcl"
382
+ }
383
+ }
384
+ },
385
+ "BaseSystemFieldsRequired": {
386
+ "type": "object",
387
+ "required": [
388
+ "_schema",
389
+ "_org"
390
+ ]
391
+ },
392
+ "BaseTarget": {
393
+ "type": "object",
394
+ "properties": {
395
+ "_schema": {
396
+ "type": "string",
397
+ "enum": [
398
+ "target"
399
+ ]
400
+ },
401
+ "name": {
402
+ "type": "string",
403
+ "description": "The description for the target"
404
+ },
405
+ "description": {
406
+ "type": "string",
407
+ "description": "The description of the target"
408
+ },
409
+ "entity_schema": {
410
+ "type": "string",
411
+ "description": "The schema of the target entities"
412
+ },
413
+ "entity_filters": {
414
+ "type": "object",
415
+ "description": "The filters on the targeted schema",
416
+ "properties": {
417
+ "filter": {
418
+ "type": "object",
419
+ "properties": {
420
+ "items": {
421
+ "type": "array",
422
+ "items": {
423
+ "type": "object",
424
+ "properties": {
425
+ "key": {
426
+ "type": "string",
427
+ "description": "The key of the filter"
428
+ },
429
+ "operator": {
430
+ "type": "string",
431
+ "description": "The operator of the filter"
432
+ },
433
+ "value": {
434
+ "oneOf": [
435
+ {
436
+ "type": "string"
437
+ },
438
+ {
439
+ "type": "array",
440
+ "items": {
441
+ "type": "string",
442
+ "additionalProperties": true
443
+ }
444
+ }
445
+ ]
446
+ }
447
+ }
448
+ },
449
+ "description": "The list of applied filters on targeted schema"
450
+ },
451
+ "combination": {
452
+ "type": "string",
453
+ "description": "The combination of the filters"
454
+ }
455
+ }
456
+ }
457
+ }
458
+ }
459
+ }
460
+ },
461
+ "BaseTargetRequired": {
462
+ "type": "object",
463
+ "required": [
464
+ "name"
465
+ ]
466
+ },
467
+ "Target": {
468
+ "allOf": [
469
+ {
470
+ "$ref": "#/components/schemas/BaseSystemReadonlyFields"
471
+ },
472
+ {
473
+ "$ref": "#/components/schemas/BaseTarget"
474
+ },
475
+ {
476
+ "$ref": "#/components/schemas/BaseTargetRequired"
477
+ },
478
+ {
479
+ "$ref": "#/components/schemas/BaseSystemFields"
480
+ },
481
+ {
482
+ "$ref": "#/components/schemas/BaseSystemFieldsRequired"
483
+ }
484
+ ]
485
+ },
486
+ "TargetCreate": {
487
+ "allOf": [
488
+ {
489
+ "$ref": "#/components/schemas/BaseTarget"
490
+ },
491
+ {
492
+ "$ref": "#/components/schemas/BaseSystemFields"
493
+ },
494
+ {
495
+ "$ref": "#/components/schemas/BaseTargetRequired"
496
+ }
497
+ ]
498
+ },
499
+ "TargetPatch": {
500
+ "allOf": [
501
+ {
502
+ "$ref": "#/components/schemas/BaseTarget"
503
+ },
504
+ {
505
+ "$ref": "#/components/schemas/BaseSystemFields"
506
+ }
507
+ ]
508
+ }
509
+ },
510
+ "parameters": {
511
+ "HydrateQueryParam": {
512
+ "name": "hydrate",
513
+ "in": "query",
514
+ "required": false,
515
+ "description": "Hydrates entities in relations when passed true",
516
+ "schema": {
517
+ "type": "boolean",
518
+ "default": false
519
+ }
520
+ },
521
+ "StrictQueryParam": {
522
+ "name": "strict",
523
+ "in": "query",
524
+ "required": false,
525
+ "description": "When passed true, the response will contain only fields that match the schema, with non-matching fields included in `__additional`",
526
+ "schema": {
527
+ "type": "boolean",
528
+ "default": false
529
+ }
530
+ },
531
+ "TargetIdPathParam": {
532
+ "name": "targetId",
533
+ "description": "The target id",
534
+ "in": "path",
535
+ "required": true,
536
+ "schema": {
537
+ "$ref": "#/components/schemas/BaseUUID"
538
+ }
539
+ }
540
+ },
541
+ "requestBodies": {
542
+ "TargetCreateRequest": {
543
+ "description": "Target to create",
544
+ "required": true,
545
+ "content": {
546
+ "application/json": {
547
+ "schema": {
548
+ "$ref": "#/components/schemas/TargetCreate"
549
+ }
550
+ }
551
+ }
552
+ },
553
+ "TargetPatchRequest": {
554
+ "description": "Target to patch",
555
+ "required": true,
556
+ "content": {
557
+ "application/json": {
558
+ "schema": {
559
+ "$ref": "#/components/schemas/TargetPatch"
560
+ }
561
+ }
562
+ }
563
+ },
564
+ "TargetUpdateRequest": {
565
+ "description": "Target to update",
566
+ "required": true,
567
+ "content": {
568
+ "application/json": {
569
+ "schema": {
570
+ "$ref": "#/components/schemas/TargetCreate"
571
+ }
572
+ }
573
+ }
574
+ }
575
+ },
576
+ "responses": {
577
+ "ClientErrorResponse": {
578
+ "description": "Any error based on client data errors",
579
+ "content": {
580
+ "application/json": {
581
+ "schema": {
582
+ "$ref": "#/components/schemas/ClientError"
583
+ }
584
+ }
585
+ }
586
+ },
587
+ "ServerErrorResponse": {
588
+ "description": "Any error based on the server-side",
589
+ "content": {
590
+ "application/json": {
591
+ "schema": {
592
+ "$ref": "#/components/schemas/ServerError"
593
+ }
594
+ }
595
+ }
596
+ },
597
+ "TargetResponse": {
598
+ "description": "Target entity response",
599
+ "content": {
600
+ "application/json": {
601
+ "schema": {
602
+ "$ref": "#/components/schemas/Target"
603
+ }
604
+ }
605
+ }
606
+ }
607
+ }
608
+ }
609
+ }
@@ -1984,6 +1984,49 @@
1984
1984
  }
1985
1985
  }
1986
1986
  },
1987
+ "GroupImageUri": {
1988
+ "description": "Group's profile image or gradient colors. Supports uploaded image URLs and generated gradient avatars.",
1989
+ "type": "object",
1990
+ "additionalProperties": true,
1991
+ "nullable": true,
1992
+ "properties": {
1993
+ "original": {
1994
+ "type": "string",
1995
+ "format": "uri",
1996
+ "example": "https://account-profile-images.epilot.cloud/org/group-avatar.png"
1997
+ },
1998
+ "thumbnail_32": {
1999
+ "type": "string",
2000
+ "format": "uri",
2001
+ "example": "https://account-profile-images.epilot.cloud/org/group-avatar_32x32.png"
2002
+ },
2003
+ "thumbnail_64": {
2004
+ "type": "string",
2005
+ "format": "uri",
2006
+ "example": "https://account-profile-images.epilot.cloud/org/group-avatar_64x64.png"
2007
+ },
2008
+ "gradient_colors": {
2009
+ "type": "array",
2010
+ "description": "Two hex color strings [base_color, accent_color] for mesh gradient avatar.",
2011
+ "items": {
2012
+ "type": "string",
2013
+ "pattern": "^#[0-9a-fA-F]{6}$"
2014
+ },
2015
+ "minItems": 2,
2016
+ "maxItems": 2,
2017
+ "example": [
2018
+ "#0588f0",
2019
+ "#3358d4"
2020
+ ]
2021
+ }
2022
+ },
2023
+ "example": {
2024
+ "gradient_colors": [
2025
+ "#0588f0",
2026
+ "#3358d4"
2027
+ ]
2028
+ }
2029
+ },
1987
2030
  "CreateGroupReq": {
1988
2031
  "type": "object",
1989
2032
  "properties": {
@@ -2002,6 +2045,9 @@
2002
2045
  "123",
2003
2046
  "456"
2004
2047
  ]
2048
+ },
2049
+ "image_uri": {
2050
+ "$ref": "#/components/schemas/GroupImageUri"
2005
2051
  }
2006
2052
  },
2007
2053
  "required": [
@@ -2026,6 +2072,9 @@
2026
2072
  "123",
2027
2073
  "456"
2028
2074
  ]
2075
+ },
2076
+ "image_uri": {
2077
+ "$ref": "#/components/schemas/GroupImageUri"
2029
2078
  }
2030
2079
  }
2031
2080
  },
@@ -2080,6 +2129,9 @@
2080
2129
  "items": {
2081
2130
  "$ref": "#/components/schemas/UserV2"
2082
2131
  }
2132
+ },
2133
+ "image_uri": {
2134
+ "$ref": "#/components/schemas/GroupImageUri"
2083
2135
  }
2084
2136
  },
2085
2137
  "required": [