@inneropen/marvin-sdk 4.4.0 → 5.0.0

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.
@@ -11,6 +11,8 @@ interface components {
11
11
  entityType?: string | null;
12
12
  /** Entityid */
13
13
  entityId?: string | null;
14
+ /** Attachments */
15
+ attachments?: string[];
14
16
  /**
15
17
  * History
16
18
  * @default []
@@ -63,6 +65,37 @@ interface components {
63
65
  */
64
66
  source: string;
65
67
  };
68
+ /**
69
+ * AICredentialRead
70
+ * @description One credential a provider type needs. ``api_key`` comes from a secret; ``base_url`` and any option
71
+ * (``api_version``) from the provider row (options in its metadata).
72
+ */
73
+ AICredentialRead: {
74
+ /** Key */
75
+ key: string;
76
+ /**
77
+ * Label
78
+ * @default
79
+ */
80
+ label: string;
81
+ /**
82
+ * Secret
83
+ * @default false
84
+ */
85
+ secret: boolean;
86
+ /**
87
+ * Required
88
+ * @default false
89
+ */
90
+ required: boolean;
91
+ /** Default */
92
+ default?: string | null;
93
+ /**
94
+ * Help
95
+ * @default
96
+ */
97
+ help: string;
98
+ };
66
99
  /** AIExecutionRead */
67
100
  AIExecutionRead: {
68
101
  /**
@@ -318,6 +351,49 @@ interface components {
318
351
  */
319
352
  availableModels: string[];
320
353
  };
354
+ /**
355
+ * AIProviderTypeRead
356
+ * @description An AI provider this platform can use: built into core, or an installed plugin.
357
+ */
358
+ AIProviderTypeRead: {
359
+ /** Slug */
360
+ slug: string;
361
+ /** Name */
362
+ name: string;
363
+ /**
364
+ * Description
365
+ * @default
366
+ */
367
+ description: string;
368
+ /** Source */
369
+ source: string;
370
+ /** Package */
371
+ package?: string | null;
372
+ /** Version */
373
+ version?: string | null;
374
+ /**
375
+ * Capabilities
376
+ * @default []
377
+ */
378
+ capabilities: string[];
379
+ /**
380
+ * Credentials
381
+ * @default []
382
+ */
383
+ credentials: components["schemas"]["AICredentialRead"][];
384
+ /** Defaultmodel */
385
+ defaultModel?: string | null;
386
+ /**
387
+ * Suggestedmodels
388
+ * @default []
389
+ */
390
+ suggestedModels: string[];
391
+ /**
392
+ * Selfhosted
393
+ * @default false
394
+ */
395
+ selfHosted: boolean;
396
+ };
321
397
  /** AIProviderUpdate */
322
398
  AIProviderUpdate: {
323
399
  /** Name */
@@ -669,6 +745,11 @@ interface components {
669
745
  version: string;
670
746
  /** Demostatus */
671
747
  demoStatus: boolean;
748
+ /**
749
+ * Environmentlabel
750
+ * @default
751
+ */
752
+ environmentLabel: string;
672
753
  /** Allowsignup */
673
754
  allowSignup: boolean;
674
755
  /** Defaultgroupslug */
@@ -1109,6 +1190,11 @@ interface components {
1109
1190
  * @default false
1110
1191
  */
1111
1192
  isSystem: boolean;
1193
+ /**
1194
+ * Toolpolicyoverridden
1195
+ * @default false
1196
+ */
1197
+ toolPolicyOverridden: boolean;
1112
1198
  character?: components["schemas"]["AssistantCharacter"] | null;
1113
1199
  };
1114
1200
  /** AgentToolCategory */
@@ -1155,60 +1241,91 @@ interface components {
1155
1241
  /** Handoffhint */
1156
1242
  handoffHint?: string | null;
1157
1243
  };
1158
- /**
1159
- * AlertRouting
1160
- * @description Where integration alerts go besides the bell (which always gets them).
1161
- */
1162
- AlertRouting: {
1244
+ /** AlertActionInput */
1245
+ AlertActionInput: {
1246
+ /** Key */
1247
+ key: string;
1248
+ /** Label */
1249
+ label: string;
1250
+ /**
1251
+ * Description
1252
+ * @default
1253
+ */
1254
+ description: string;
1163
1255
  /**
1164
- * Emailadmins
1256
+ * Required
1165
1257
  * @default false
1166
1258
  */
1167
- emailAdmins: boolean;
1168
- /** Targets */
1169
- targets?: components["schemas"]["AlertRoutingTarget"][];
1259
+ required: boolean;
1260
+ };
1261
+ /** AlertDelivery */
1262
+ AlertDelivery: {
1170
1263
  /**
1171
- * Reminderhours
1172
- * @default 24
1264
+ * At
1265
+ * Format: date-time
1173
1266
  */
1174
- reminderHours: number;
1267
+ at: string;
1268
+ /**
1269
+ * Outcome
1270
+ * @enum {string}
1271
+ */
1272
+ outcome: "sent" | "failed" | "skipped";
1273
+ /** Detail */
1274
+ detail: string;
1275
+ /** Eventtype */
1276
+ eventType?: string | null;
1277
+ /**
1278
+ * Test
1279
+ * @default false
1280
+ */
1281
+ test: boolean;
1175
1282
  };
1176
- /**
1177
- * AlertRoutingTarget
1178
- * @description A connection that can carry integration alerts (a chat or notification provider).
1179
- */
1180
- AlertRoutingTarget: {
1283
+ /** AlertKindRead */
1284
+ AlertKindRead: {
1285
+ /** Key */
1286
+ key: string;
1287
+ /** Label */
1288
+ label: string;
1289
+ /** Description */
1290
+ description: string;
1291
+ /** Eventtype */
1292
+ eventType: string;
1293
+ /** Enabled */
1294
+ enabled: boolean;
1295
+ /** Default */
1296
+ default: boolean;
1297
+ /**
1298
+ * Push
1299
+ * @default true
1300
+ */
1301
+ push: boolean;
1302
+ };
1303
+ /** AlertTarget */
1304
+ AlertTarget: {
1181
1305
  /**
1182
1306
  * Integrationid
1183
1307
  * Format: uuid4
1184
1308
  */
1185
1309
  integrationId: string;
1186
- /** Name */
1187
- name: string;
1310
+ /** Integrationname */
1311
+ integrationName: string;
1188
1312
  /** Provider */
1189
1313
  provider: string;
1314
+ /** Providername */
1315
+ providerName: string;
1316
+ /** Connectionenabled */
1317
+ connectionEnabled: boolean;
1190
1318
  /** Action */
1191
1319
  action: string;
1192
- /**
1193
- * Enabled
1194
- * @default false
1195
- */
1196
- enabled: boolean;
1320
+ /** Actionlabel */
1321
+ actionLabel: string;
1322
+ /** Inputs */
1323
+ inputs?: components["schemas"]["AlertActionInput"][];
1197
1324
  };
1198
- /** AlertRoutingUpdate */
1199
- AlertRoutingUpdate: {
1200
- /**
1201
- * Emailadmins
1202
- * @default false
1203
- */
1204
- emailAdmins: boolean;
1205
- /** Integrationids */
1206
- integrationIds?: string[];
1207
- /**
1208
- * Reminderhours
1209
- * @default 24
1210
- */
1211
- reminderHours: number;
1325
+ /** AlertTestRequest */
1326
+ AlertTestRequest: {
1327
+ /** Channel */
1328
+ channel: string;
1212
1329
  };
1213
1330
  /**
1214
1331
  * AppInfo
@@ -1398,6 +1515,15 @@ interface components {
1398
1515
  * @default []
1399
1516
  */
1400
1517
  tags: string[];
1518
+ /** Trashedat */
1519
+ trashedAt?: string | null;
1520
+ /** Trashedby */
1521
+ trashedBy?: string | null;
1522
+ /**
1523
+ * Scope
1524
+ * @default library
1525
+ */
1526
+ scope: string;
1401
1527
  /**
1402
1528
  * Suggestionjson
1403
1529
  * @description Pending AI-proposed changes staged for review (write-back)
@@ -1521,6 +1647,8 @@ interface components {
1521
1647
  * @default []
1522
1648
  */
1523
1649
  cleared: string[];
1650
+ /** Builtfrom */
1651
+ builtFrom?: string | null;
1524
1652
  };
1525
1653
  /** AttentionCounts */
1526
1654
  AttentionCounts: {
@@ -1695,6 +1823,8 @@ interface components {
1695
1823
  definition: {
1696
1824
  [key: string]: unknown;
1697
1825
  };
1826
+ /** Sourcerecipe */
1827
+ sourceRecipe?: string | null;
1698
1828
  };
1699
1829
  /**
1700
1830
  * AutomationExecutionDetail
@@ -1950,11 +2080,17 @@ interface components {
1950
2080
  };
1951
2081
  /**
1952
2082
  * AutomationPreviewMatch
1953
- * @description One entity a `target` selector resolved to (dry-run preview).
2083
+ * @description One entity a `target` selector resolved to (dry-run preview): an entry (entry_type, status, title) or an
2084
+ * asset / resource (name, asset_type / resource_type, trashed).
1954
2085
  */
1955
2086
  AutomationPreviewMatch: {
1956
2087
  /** Id */
1957
2088
  id: string;
2089
+ /**
2090
+ * Entity
2091
+ * @default entry
2092
+ */
2093
+ entity: string;
1958
2094
  /** Entrytype */
1959
2095
  entryType?: string | null;
1960
2096
  /** Status */
@@ -1963,6 +2099,14 @@ interface components {
1963
2099
  title?: string | null;
1964
2100
  /** Slug */
1965
2101
  slug?: string | null;
2102
+ /** Name */
2103
+ name?: string | null;
2104
+ /** Assettype */
2105
+ assetType?: string | null;
2106
+ /** Resourcetype */
2107
+ resourceType?: string | null;
2108
+ /** Trashed */
2109
+ trashed?: boolean | null;
1966
2110
  };
1967
2111
  /** AutomationPreviewRequest */
1968
2112
  AutomationPreviewRequest: {
@@ -2045,6 +2189,10 @@ interface components {
2045
2189
  sourceIntegrationId?: string | null;
2046
2190
  /** Sourceblueprint */
2047
2191
  sourceBlueprint?: string | null;
2192
+ /** Sourcerecipe */
2193
+ sourceRecipe?: string | null;
2194
+ /** Sourcerecipeversion */
2195
+ sourceRecipeVersion?: string | null;
2048
2196
  };
2049
2197
  /**
2050
2198
  * AutomationTargetOption
@@ -2103,6 +2251,8 @@ interface components {
2103
2251
  where: string;
2104
2252
  /** Index */
2105
2253
  index?: number | null;
2254
+ /** Path */
2255
+ path?: string | null;
2106
2256
  };
2107
2257
  /**
2108
2258
  * AutomationWebhookOption
@@ -2124,6 +2274,117 @@ interface components {
2124
2274
  */
2125
2275
  method: string;
2126
2276
  };
2277
+ /** BackupHealthRead */
2278
+ BackupHealthRead: {
2279
+ /**
2280
+ * Now
2281
+ * Format: date-time
2282
+ */
2283
+ now: string;
2284
+ /** Targets */
2285
+ targets: components["schemas"]["BackupTargetRead"][];
2286
+ /** Runs */
2287
+ runs: components["schemas"]["BackupRunRead"][];
2288
+ };
2289
+ /** BackupRunRead */
2290
+ BackupRunRead: {
2291
+ /**
2292
+ * Id
2293
+ * Format: uuid4
2294
+ */
2295
+ id: string;
2296
+ /** Targetname */
2297
+ targetName: string;
2298
+ /** Targettype */
2299
+ targetType: string;
2300
+ /** Status */
2301
+ status: string;
2302
+ /**
2303
+ * Startedat
2304
+ * Format: date-time
2305
+ */
2306
+ startedAt: string;
2307
+ /** Finishedat */
2308
+ finishedAt?: string | null;
2309
+ /** Durationseconds */
2310
+ durationSeconds?: number | null;
2311
+ /** Dbengine */
2312
+ dbEngine?: string | null;
2313
+ /** Dbkey */
2314
+ dbKey?: string | null;
2315
+ /** Dbbytes */
2316
+ dbBytes?: number | null;
2317
+ /** Dbgzbytes */
2318
+ dbGzBytes?: number | null;
2319
+ /** Configitems */
2320
+ configItems?: number | null;
2321
+ /** Assetsuploaded */
2322
+ assetsUploaded?: number | null;
2323
+ /** Assetsuploadedbytes */
2324
+ assetsUploadedBytes?: number | null;
2325
+ /** Assetsunchanged */
2326
+ assetsUnchanged?: number | null;
2327
+ /** Pruned */
2328
+ pruned?: number | null;
2329
+ /**
2330
+ * Failures
2331
+ * @default 0
2332
+ */
2333
+ failures: number;
2334
+ /** Errorsummary */
2335
+ errorSummary?: string | null;
2336
+ /** Host */
2337
+ host?: string | null;
2338
+ /** Notifiedat */
2339
+ notifiedAt?: string | null;
2340
+ };
2341
+ /** BackupTargetRead */
2342
+ BackupTargetRead: {
2343
+ /** Name */
2344
+ name: string;
2345
+ /** Type */
2346
+ type: string;
2347
+ /** State */
2348
+ state: string;
2349
+ /** Schedule */
2350
+ schedule?: string | null;
2351
+ /** Timezone */
2352
+ timeZone?: string | null;
2353
+ /** Scheduleerror */
2354
+ scheduleError?: string | null;
2355
+ /** Intervalseconds */
2356
+ intervalSeconds?: number | null;
2357
+ /** Keephourly */
2358
+ keepHourly?: number | null;
2359
+ /** Keepdaily */
2360
+ keepDaily?: number | null;
2361
+ /** Keepweekly */
2362
+ keepWeekly?: number | null;
2363
+ /** Location */
2364
+ location?: string | null;
2365
+ /**
2366
+ * Settings
2367
+ * @default {}
2368
+ */
2369
+ settings: {
2370
+ [key: string]: unknown;
2371
+ };
2372
+ lastRun?: components["schemas"]["BackupRunRead"] | null;
2373
+ lastSuccess?: components["schemas"]["BackupRunRead"] | null;
2374
+ /** Firstseen */
2375
+ firstSeen?: string | null;
2376
+ /** Nextrunat */
2377
+ nextRunAt?: string | null;
2378
+ /** Dueby */
2379
+ dueBy?: string | null;
2380
+ /**
2381
+ * Overdue
2382
+ * @default false
2383
+ */
2384
+ overdue: boolean;
2385
+ /** Overduesince */
2386
+ overdueSince?: string | null;
2387
+ };
2127
2388
  /**
2128
2389
  * BlueprintApplyResult
2129
2390
  * @description What applying one blueprint did.
@@ -2535,6 +2796,8 @@ interface components {
2535
2796
  * @default []
2536
2797
  */
2537
2798
  cleared: string[];
2799
+ /** Builtfrom */
2800
+ builtFrom?: string | null;
2538
2801
  /** Id */
2539
2802
  id: string;
2540
2803
  /** Slug */
@@ -3119,6 +3382,15 @@ interface components {
3119
3382
  * @default []
3120
3383
  */
3121
3384
  tags: string[];
3385
+ /** Trashedat */
3386
+ trashedAt?: string | null;
3387
+ /** Trashedby */
3388
+ trashedBy?: string | null;
3389
+ /**
3390
+ * Scope
3391
+ * @default library
3392
+ */
3393
+ scope: string;
3122
3394
  /**
3123
3395
  * Suggestionjson
3124
3396
  * @description Pending AI-proposed changes staged for review (write-back)
@@ -3640,6 +3912,10 @@ interface components {
3640
3912
  EventConnectionCounts: {
3641
3913
  /** Eventtype */
3642
3914
  eventType: string;
3915
+ /** Name */
3916
+ name: string;
3917
+ /** Category */
3918
+ category: string;
3643
3919
  /** Senders */
3644
3920
  senders: number;
3645
3921
  /** Reactions */
@@ -3712,11 +3988,8 @@ interface components {
3712
3988
  * Format: date-time
3713
3989
  */
3714
3990
  occurredAt: string;
3715
- /**
3716
- * Workspaceid
3717
- * Format: uuid4
3718
- */
3719
- workspaceId: string;
3991
+ /** Workspaceid */
3992
+ workspaceId?: string | null;
3720
3993
  /** Userid */
3721
3994
  userId?: string | null;
3722
3995
  /** Entityid */
@@ -3831,11 +4104,8 @@ interface components {
3831
4104
  * Format: date-time
3832
4105
  */
3833
4106
  occurredAt: string;
3834
- /**
3835
- * Workspaceid
3836
- * Format: uuid4
3837
- */
3838
- workspaceId: string;
4107
+ /** Workspaceid */
4108
+ workspaceId?: string | null;
3839
4109
  /** Userid */
3840
4110
  userId?: string | null;
3841
4111
  /** Entityid */
@@ -4093,6 +4363,8 @@ interface components {
4093
4363
  * Format: uuid4
4094
4364
  */
4095
4365
  id: string;
4366
+ /** Slug */
4367
+ slug?: string | null;
4096
4368
  preferences?: components["schemas"]["GroupPreferencesUpdate"] | null;
4097
4369
  };
4098
4370
  /**
@@ -4204,6 +4476,8 @@ interface components {
4204
4476
  * @default false
4205
4477
  */
4206
4478
  scheduledPublishRequiresApproval: boolean;
4479
+ /** Trashautoemptydays */
4480
+ trashAutoEmptyDays?: number | null;
4207
4481
  };
4208
4482
  /**
4209
4483
  * GroupPreferencesUpdate
@@ -4253,12 +4527,16 @@ interface components {
4253
4527
  submissionProtectionJson?: components["schemas"]["SubmissionProtectionOverride"] | null;
4254
4528
  /** Scheduledpublishrequiresapproval */
4255
4529
  scheduledPublishRequiresApproval?: boolean | null;
4530
+ /** Trashautoemptydays */
4531
+ trashAutoEmptyDays?: number | null;
4256
4532
  };
4257
4533
  /**
4258
4534
  * GroupRead
4259
4535
  * @description Schema for representing a group when read from the system, including detailed information.
4260
4536
  * This typically serves as a response model for GET requests.
4261
- * Inherits `id`, `name`, and `webhooks` (as `WebhookRead`) from `GroupUpdate`.
4537
+ * Inherits `id` and `name` from `GroupUpdate`. No webhooks: their URLs, headers and payloads are credentials, and
4538
+ * every member reads their workspace through this schema (/api/self/workspaces); workspace admins read them from
4539
+ * /api/groups/webhooks.
4262
4540
  */
4263
4541
  GroupRead: {
4264
4542
  /** Name */
@@ -4268,13 +4546,13 @@ interface components {
4268
4546
  * Format: uuid4
4269
4547
  */
4270
4548
  id: string;
4271
- /**
4272
- * Webhooks
4273
- * @default []
4274
- */
4275
- webhooks: components["schemas"]["WebhookRead"][];
4276
4549
  /** Slug */
4277
4550
  slug?: string | null;
4551
+ /**
4552
+ * Isplatform
4553
+ * @default false
4554
+ */
4555
+ isPlatform: boolean;
4278
4556
  /** Users */
4279
4557
  users?: components["schemas"]["UserSummary"][] | null;
4280
4558
  preferences?: components["schemas"]["GroupPreferencesRead"] | null;
@@ -4992,6 +5270,11 @@ interface components {
4992
5270
  * @default false
4993
5271
  */
4994
5272
  isDemo: boolean;
5273
+ /**
5274
+ * Environmentlabel
5275
+ * @default
5276
+ */
5277
+ environmentLabel: string;
4995
5278
  };
4996
5279
  /**
4997
5280
  * LongLiveTokenCreate
@@ -5268,45 +5551,357 @@ interface components {
5268
5551
  */
5269
5552
  done: boolean;
5270
5553
  };
5271
- /**
5272
- * OrderByNullPosition
5273
- * @description Enumeration for specifying how NULL values should be positioned in ordered results.
5274
- * @enum {string}
5275
- */
5276
- OrderByNullPosition: "first" | "last";
5277
- /**
5278
- * OrderDirection
5279
- * @description Enumeration for specifying the direction of ordering in queries.
5280
- * @enum {string}
5281
- */
5282
- OrderDirection: "asc" | "desc";
5283
- /**
5284
- * PaginationMeta
5285
- * @description Pagination metadata.
5286
- */
5287
- PaginationMeta: {
5288
- /** Total */
5289
- total: number;
5290
- /** Page */
5291
- page: number;
5292
- /** Limit */
5293
- limit: number;
5294
- /** Offset */
5295
- offset: number;
5296
- };
5297
- /**
5298
- * PasswordResetToken
5299
- * @description Schema representing a password reset token along with the associated email.
5300
- * This might be used when returning token information or in contexts where
5301
- * both email and token are relevant.
5302
- */
5303
- PasswordResetToken: {
5304
- /** Email */
5305
- email: string;
5306
- /** Token */
5307
- token: string;
5554
+ /** NotificationEmailRead */
5555
+ NotificationEmailRead: {
5556
+ /** Enabled */
5557
+ enabled: boolean;
5558
+ /** Recipients */
5559
+ recipients?: string[] | null;
5560
+ /** Kinds */
5561
+ kinds?: string[] | null;
5562
+ /** Adminemails */
5563
+ adminEmails?: string[];
5564
+ /** Smtpready */
5565
+ smtpReady: boolean;
5566
+ lastDelivery?: components["schemas"]["AlertDelivery"] | null;
5308
5567
  };
5309
- /**
5568
+ /** NotificationEmailUpdate */
5569
+ NotificationEmailUpdate: {
5570
+ /**
5571
+ * Enabled
5572
+ * @default true
5573
+ */
5574
+ enabled: boolean;
5575
+ /** Recipients */
5576
+ recipients?: string[] | null;
5577
+ /** Kinds */
5578
+ kinds?: string[] | null;
5579
+ };
5580
+ /** NotificationPushRead */
5581
+ NotificationPushRead: {
5582
+ /** Configured */
5583
+ configured: boolean;
5584
+ /** Enabled */
5585
+ enabled: boolean;
5586
+ /** Kinds */
5587
+ kinds?: string[] | null;
5588
+ /** People */
5589
+ people?: string[];
5590
+ lastDelivery?: components["schemas"]["AlertDelivery"] | null;
5591
+ };
5592
+ /** NotificationPushUpdate */
5593
+ NotificationPushUpdate: {
5594
+ /**
5595
+ * Enabled
5596
+ * @default true
5597
+ */
5598
+ enabled: boolean;
5599
+ /** Kinds */
5600
+ kinds?: string[] | null;
5601
+ };
5602
+ /** NotificationRouteRead */
5603
+ NotificationRouteRead: {
5604
+ /** Id */
5605
+ id: string;
5606
+ /**
5607
+ * Integrationid
5608
+ * Format: uuid4
5609
+ */
5610
+ integrationId: string;
5611
+ /** Action */
5612
+ action: string;
5613
+ /** Args */
5614
+ args?: {
5615
+ [key: string]: unknown;
5616
+ };
5617
+ /** Enabled */
5618
+ enabled: boolean;
5619
+ /** Kinds */
5620
+ kinds?: string[] | null;
5621
+ /** Label */
5622
+ label: string;
5623
+ /** Problem */
5624
+ problem?: string | null;
5625
+ lastDelivery?: components["schemas"]["AlertDelivery"] | null;
5626
+ };
5627
+ /** NotificationRouteUpdate */
5628
+ NotificationRouteUpdate: {
5629
+ /** Id */
5630
+ id?: string | null;
5631
+ /**
5632
+ * Integrationid
5633
+ * Format: uuid4
5634
+ */
5635
+ integrationId: string;
5636
+ /** Action */
5637
+ action: string;
5638
+ /** Args */
5639
+ args?: {
5640
+ [key: string]: unknown;
5641
+ };
5642
+ /**
5643
+ * Enabled
5644
+ * @default true
5645
+ */
5646
+ enabled: boolean;
5647
+ /** Kinds */
5648
+ kinds?: string[] | null;
5649
+ };
5650
+ /** NotificationTestResult */
5651
+ NotificationTestResult: {
5652
+ /** Channel */
5653
+ channel: string;
5654
+ delivery: components["schemas"]["AlertDelivery"];
5655
+ };
5656
+ /**
5657
+ * OrderByNullPosition
5658
+ * @description Enumeration for specifying how NULL values should be positioned in ordered results.
5659
+ * @enum {string}
5660
+ */
5661
+ OrderByNullPosition: "first" | "last";
5662
+ /**
5663
+ * OrderDirection
5664
+ * @description Enumeration for specifying the direction of ordering in queries.
5665
+ * @enum {string}
5666
+ */
5667
+ OrderDirection: "asc" | "desc";
5668
+ /**
5669
+ * PaginationMeta
5670
+ * @description Pagination metadata.
5671
+ */
5672
+ PaginationMeta: {
5673
+ /** Total */
5674
+ total: number;
5675
+ /** Page */
5676
+ page: number;
5677
+ /** Limit */
5678
+ limit: number;
5679
+ /** Offset */
5680
+ offset: number;
5681
+ };
5682
+ /**
5683
+ * PasswordResetToken
5684
+ * @description Schema representing a password reset token along with the associated email.
5685
+ * This might be used when returning token information or in contexts where
5686
+ * both email and token are relevant.
5687
+ */
5688
+ PasswordResetToken: {
5689
+ /** Email */
5690
+ email: string;
5691
+ /** Token */
5692
+ token: string;
5693
+ };
5694
+ /**
5695
+ * PlatformAlertActionInput
5696
+ * @description One of an action's own inputs the admin fills (the message itself is Marvin's).
5697
+ */
5698
+ PlatformAlertActionInput: {
5699
+ /** Key */
5700
+ key: string;
5701
+ /** Label */
5702
+ label: string;
5703
+ /**
5704
+ * Description
5705
+ * @default
5706
+ */
5707
+ description: string;
5708
+ /**
5709
+ * Required
5710
+ * @default false
5711
+ */
5712
+ required: boolean;
5713
+ };
5714
+ /**
5715
+ * PlatformAlertDelivery
5716
+ * @description A channel's last delivery (an alert or a test).
5717
+ */
5718
+ PlatformAlertDelivery: {
5719
+ /**
5720
+ * At
5721
+ * Format: date-time
5722
+ */
5723
+ at: string;
5724
+ /**
5725
+ * Outcome
5726
+ * @enum {string}
5727
+ */
5728
+ outcome: "sent" | "failed" | "skipped";
5729
+ /** Detail */
5730
+ detail: string;
5731
+ /** Eventtype */
5732
+ eventType?: string | null;
5733
+ /**
5734
+ * Test
5735
+ * @default false
5736
+ */
5737
+ test: boolean;
5738
+ };
5739
+ /** PlatformAlertEmailRead */
5740
+ PlatformAlertEmailRead: {
5741
+ /** Enabled */
5742
+ enabled: boolean;
5743
+ /** Recipients */
5744
+ recipients?: string[] | null;
5745
+ /** Superadminemails */
5746
+ superAdminEmails?: string[];
5747
+ /** Smtpready */
5748
+ smtpReady: boolean;
5749
+ lastDelivery?: components["schemas"]["PlatformAlertDelivery"] | null;
5750
+ };
5751
+ /** PlatformAlertEmailUpdate */
5752
+ PlatformAlertEmailUpdate: {
5753
+ /**
5754
+ * Enabled
5755
+ * @default true
5756
+ */
5757
+ enabled: boolean;
5758
+ /** Recipients */
5759
+ recipients?: string[] | null;
5760
+ };
5761
+ /** PlatformAlertKindRead */
5762
+ PlatformAlertKindRead: {
5763
+ /** Key */
5764
+ key: string;
5765
+ /** Label */
5766
+ label: string;
5767
+ /** Description */
5768
+ description: string;
5769
+ /** Eventtype */
5770
+ eventType: string;
5771
+ /** Enabled */
5772
+ enabled: boolean;
5773
+ /** Default */
5774
+ default: boolean;
5775
+ /**
5776
+ * Push
5777
+ * @default true
5778
+ */
5779
+ push: boolean;
5780
+ };
5781
+ /** PlatformAlertPushRead */
5782
+ PlatformAlertPushRead: {
5783
+ /** Configured */
5784
+ configured: boolean;
5785
+ /** Enabled */
5786
+ enabled: boolean;
5787
+ /** People */
5788
+ people?: string[];
5789
+ lastDelivery?: components["schemas"]["PlatformAlertDelivery"] | null;
5790
+ };
5791
+ /** PlatformAlertPushUpdate */
5792
+ PlatformAlertPushUpdate: {
5793
+ /**
5794
+ * Enabled
5795
+ * @default true
5796
+ */
5797
+ enabled: boolean;
5798
+ };
5799
+ /** PlatformAlertRouteRead */
5800
+ PlatformAlertRouteRead: {
5801
+ /** Id */
5802
+ id: string;
5803
+ /**
5804
+ * Integrationid
5805
+ * Format: uuid4
5806
+ */
5807
+ integrationId: string;
5808
+ /** Action */
5809
+ action: string;
5810
+ /** Args */
5811
+ args?: {
5812
+ [key: string]: unknown;
5813
+ };
5814
+ /** Enabled */
5815
+ enabled: boolean;
5816
+ /** Label */
5817
+ label: string;
5818
+ /** Problem */
5819
+ problem?: string | null;
5820
+ lastDelivery?: components["schemas"]["PlatformAlertDelivery"] | null;
5821
+ };
5822
+ /** PlatformAlertRouteUpdate */
5823
+ PlatformAlertRouteUpdate: {
5824
+ /** Id */
5825
+ id?: string | null;
5826
+ /**
5827
+ * Integrationid
5828
+ * Format: uuid4
5829
+ */
5830
+ integrationId: string;
5831
+ /** Action */
5832
+ action: string;
5833
+ /** Args */
5834
+ args?: {
5835
+ [key: string]: unknown;
5836
+ };
5837
+ /**
5838
+ * Enabled
5839
+ * @default true
5840
+ */
5841
+ enabled: boolean;
5842
+ };
5843
+ /**
5844
+ * PlatformAlertTarget
5845
+ * @description A message-capable action on a connection in the platform workspace.
5846
+ */
5847
+ PlatformAlertTarget: {
5848
+ /**
5849
+ * Integrationid
5850
+ * Format: uuid4
5851
+ */
5852
+ integrationId: string;
5853
+ /** Integrationname */
5854
+ integrationName: string;
5855
+ /** Provider */
5856
+ provider: string;
5857
+ /** Providername */
5858
+ providerName: string;
5859
+ /** Connectionenabled */
5860
+ connectionEnabled: boolean;
5861
+ /** Action */
5862
+ action: string;
5863
+ /** Actionlabel */
5864
+ actionLabel: string;
5865
+ /** Inputs */
5866
+ inputs?: components["schemas"]["PlatformAlertActionInput"][];
5867
+ };
5868
+ /** PlatformAlertTestRequest */
5869
+ PlatformAlertTestRequest: {
5870
+ /** Channel */
5871
+ channel: string;
5872
+ };
5873
+ /** PlatformAlertTestResult */
5874
+ PlatformAlertTestResult: {
5875
+ /** Channel */
5876
+ channel: string;
5877
+ delivery: components["schemas"]["PlatformAlertDelivery"];
5878
+ };
5879
+ /** PlatformAlertsRead */
5880
+ PlatformAlertsRead: {
5881
+ /** Types */
5882
+ types: components["schemas"]["PlatformAlertKindRead"][];
5883
+ email: components["schemas"]["PlatformAlertEmailRead"];
5884
+ push: components["schemas"]["PlatformAlertPushRead"];
5885
+ /** Routes */
5886
+ routes: components["schemas"]["PlatformAlertRouteRead"][];
5887
+ /** Targets */
5888
+ targets: components["schemas"]["PlatformAlertTarget"][];
5889
+ platformWorkspace?: components["schemas"]["PlatformWorkspaceRef"] | null;
5890
+ /** Integrationsavailable */
5891
+ integrationsAvailable: boolean;
5892
+ };
5893
+ /** PlatformAlertsUpdate */
5894
+ PlatformAlertsUpdate: {
5895
+ /** Types */
5896
+ types?: {
5897
+ [key: string]: boolean;
5898
+ };
5899
+ email?: components["schemas"]["PlatformAlertEmailUpdate"];
5900
+ push?: components["schemas"]["PlatformAlertPushUpdate"] | null;
5901
+ /** Routes */
5902
+ routes?: components["schemas"]["PlatformAlertRouteUpdate"][];
5903
+ };
5904
+ /**
5310
5905
  * PlatformRole
5311
5906
  * @description Platform-level roles for Marvin.
5312
5907
  *
@@ -5315,6 +5910,18 @@ interface components {
5315
5910
  * @enum {string}
5316
5911
  */
5317
5912
  PlatformRole: "NONE" | "SUPER_ADMIN";
5913
+ /** PlatformWorkspaceRef */
5914
+ PlatformWorkspaceRef: {
5915
+ /**
5916
+ * Id
5917
+ * Format: uuid4
5918
+ */
5919
+ id: string;
5920
+ /** Name */
5921
+ name: string;
5922
+ /** Slug */
5923
+ slug?: string | null;
5924
+ };
5318
5925
  /**
5319
5926
  * PluginProviderRead
5320
5927
  * @description One provider a plugin registers, and how many workspaces have connected it.
@@ -5349,6 +5956,10 @@ interface components {
5349
5956
  * @default 0
5350
5957
  */
5351
5958
  workspaces: number;
5959
+ /** Provides */
5960
+ provides?: string[];
5961
+ /** Inuse */
5962
+ inUse?: string[];
5352
5963
  };
5353
5964
  /**
5354
5965
  * PluginRead
@@ -5365,7 +5976,7 @@ interface components {
5365
5976
  * Kind
5366
5977
  * @enum {string}
5367
5978
  */
5368
- kind: "integration" | "ai_provider";
5979
+ kind: "integration" | "storage" | "ai_provider";
5369
5980
  /** Ok */
5370
5981
  ok: boolean;
5371
5982
  /** Error */
@@ -5973,6 +6584,117 @@ interface components {
5973
6584
  data: components["schemas"]["PublishedResourceSummary"][];
5974
6585
  meta: components["schemas"]["PaginationMeta"];
5975
6586
  };
6587
+ /** PushApprovalAction */
6588
+ PushApprovalAction: {
6589
+ /** Token */
6590
+ token: string;
6591
+ };
6592
+ /** PushApprovalResult */
6593
+ PushApprovalResult: {
6594
+ /** Decision */
6595
+ decision: string;
6596
+ /** Message */
6597
+ message: string;
6598
+ /** Url */
6599
+ url: string;
6600
+ /** Badge */
6601
+ badge?: number | null;
6602
+ /** Workspace */
6603
+ workspace?: string | null;
6604
+ };
6605
+ /**
6606
+ * PushBadgeRead
6607
+ * @description The installed app's icon count and what it's made of.
6608
+ */
6609
+ PushBadgeRead: {
6610
+ /** Inbox */
6611
+ inbox: number;
6612
+ /** Approvals */
6613
+ approvals: number;
6614
+ /** Count */
6615
+ count: number;
6616
+ };
6617
+ /** PushCategoryRead */
6618
+ PushCategoryRead: {
6619
+ /** Key */
6620
+ key: string;
6621
+ /** Label */
6622
+ label: string;
6623
+ /** Description */
6624
+ description: string;
6625
+ /** Enabled */
6626
+ enabled: boolean;
6627
+ };
6628
+ /** PushDeviceRead */
6629
+ PushDeviceRead: {
6630
+ /**
6631
+ * Id
6632
+ * Format: uuid4
6633
+ */
6634
+ id: string;
6635
+ /** Label */
6636
+ label?: string | null;
6637
+ /** Endpoint */
6638
+ endpoint: string;
6639
+ /** Useragent */
6640
+ userAgent?: string | null;
6641
+ /** Createdat */
6642
+ createdAt?: string | null;
6643
+ /** Lastusedat */
6644
+ lastUsedAt?: string | null;
6645
+ /** Lastsuccessat */
6646
+ lastSuccessAt?: string | null;
6647
+ /**
6648
+ * Failurecount
6649
+ * @default 0
6650
+ */
6651
+ failureCount: number;
6652
+ };
6653
+ /** PushPreferencesUpdate */
6654
+ PushPreferencesUpdate: {
6655
+ /** Categories */
6656
+ categories: {
6657
+ [key: string]: boolean;
6658
+ };
6659
+ };
6660
+ /** PushSettingsRead */
6661
+ PushSettingsRead: {
6662
+ /** Enabled */
6663
+ enabled: boolean;
6664
+ /** Publickey */
6665
+ publicKey?: string | null;
6666
+ /** Categories */
6667
+ categories?: components["schemas"]["PushCategoryRead"][];
6668
+ /** Devices */
6669
+ devices?: components["schemas"]["PushDeviceRead"][];
6670
+ };
6671
+ /**
6672
+ * PushSubscriptionCreate
6673
+ * @description A browser's PushSubscription (``subscription.toJSON()``) plus what to call the device.
6674
+ */
6675
+ PushSubscriptionCreate: {
6676
+ /** Endpoint */
6677
+ endpoint: string;
6678
+ keys: components["schemas"]["PushSubscriptionKeys"];
6679
+ /** Useragent */
6680
+ userAgent?: string | null;
6681
+ /** Label */
6682
+ label?: string | null;
6683
+ /** Replaces */
6684
+ replaces?: string | null;
6685
+ };
6686
+ /** PushSubscriptionKeys */
6687
+ PushSubscriptionKeys: {
6688
+ /** P256Dh */
6689
+ p256dh: string;
6690
+ /** Auth */
6691
+ auth: string;
6692
+ };
6693
+ /** PushTestResult */
6694
+ PushTestResult: {
6695
+ /** Devices */
6696
+ devices: number;
6697
+ };
5976
6698
  /** RecentEvent */
5977
6699
  RecentEvent: {
5978
6700
  /** Eventtype */
@@ -5986,6 +6708,33 @@ interface components {
5986
6708
  /** Occurredat */
5987
6709
  occurredAt?: string | null;
5988
6710
  };
6711
+ /** RecipeConfigureRequest */
6712
+ RecipeConfigureRequest: {
6713
+ /**
6714
+ * Vars
6715
+ * @default {}
6716
+ */
6717
+ vars: {
6718
+ [key: string]: unknown;
6719
+ };
6720
+ };
6721
+ /**
6722
+ * RecipeConfigureResult
6723
+ * @description A recipe filled in for this workspace — not saved. `issues` are what the builder would flag (shown, not blocking).
6724
+ */
6725
+ RecipeConfigureResult: {
6726
+ /** Name */
6727
+ name: string;
6728
+ /** Definition */
6729
+ definition: {
6730
+ [key: string]: unknown;
6731
+ };
6732
+ /**
6733
+ * Issues
6734
+ * @default []
6735
+ */
6736
+ issues: components["schemas"]["AutomationValidationIssue"][];
6737
+ };
5989
6738
  /**
5990
6739
  * RecipientType
5991
6740
  * @enum {string}
@@ -6121,6 +6870,10 @@ interface components {
6121
6870
  * @default []
6122
6871
  */
6123
6872
  tags: string[];
6873
+ /** Trashedat */
6874
+ trashedAt?: string | null;
6875
+ /** Trashedby */
6876
+ trashedBy?: string | null;
6124
6877
  /**
6125
6878
  * Suggestionjson
6126
6879
  * @description Pending AI-proposed changes staged for review (write-back)
@@ -6810,6 +7563,197 @@ interface components {
6810
7563
  */
6811
7564
  limit: number;
6812
7565
  };
7566
+ /**
7567
+ * StorageBackupTarget
7568
+ * @description A backup target as its runs report it. The backend doesn't have the targets' environment (each
7569
+ * CronJob has its own), so this is what the latest run recorded: never a key.
7570
+ */
7571
+ StorageBackupTarget: {
7572
+ /** Name */
7573
+ name: string;
7574
+ /** Type */
7575
+ type: string;
7576
+ /** Location */
7577
+ location?: string | null;
7578
+ /**
7579
+ * Settings
7580
+ * @default []
7581
+ */
7582
+ settings: components["schemas"]["StorageSettingValue"][];
7583
+ /** State */
7584
+ state: string;
7585
+ /** Lastrunat */
7586
+ lastRunAt?: string | null;
7587
+ };
7588
+ /**
7589
+ * StorageCheckResult
7590
+ * @description Test connection: a tiny object listed, written, read back and deleted under `_marvin-healthcheck/`.
7591
+ */
7592
+ StorageCheckResult: {
7593
+ /** Provider */
7594
+ provider: string;
7595
+ /** Ok */
7596
+ ok: boolean;
7597
+ /** Key */
7598
+ key: string;
7599
+ /** Location */
7600
+ location?: string | null;
7601
+ /**
7602
+ * Checkedat
7603
+ * Format: date-time
7604
+ */
7605
+ checkedAt: string;
7606
+ /** Steps */
7607
+ steps: components["schemas"]["StorageCheckStep"][];
7608
+ };
7609
+ /** StorageCheckStep */
7610
+ StorageCheckStep: {
7611
+ /** Name */
7612
+ name: string;
7613
+ /** Ok */
7614
+ ok: boolean;
7615
+ /** Ms */
7616
+ ms: number;
7617
+ /** Error */
7618
+ error?: string | null;
7619
+ /** Code */
7620
+ code?: string | null;
7621
+ };
7622
+ /**
7623
+ * StorageProviderOption
7624
+ * @description An asset storage provider: whether it can take uploads now, and what is stored on it.
7625
+ */
7626
+ StorageProviderOption: {
7627
+ /** Slug */
7628
+ slug: string;
7629
+ /** Name */
7630
+ name: string;
7631
+ /** Source */
7632
+ source: string;
7633
+ /** Available */
7634
+ available: boolean;
7635
+ /** Error */
7636
+ error?: string | null;
7637
+ /**
7638
+ * Assets
7639
+ * @default 0
7640
+ */
7641
+ assets: number;
7642
+ /**
7643
+ * Bytes
7644
+ * @default 0
7645
+ */
7646
+ bytes: number;
7647
+ /**
7648
+ * Libraryfiles
7649
+ * @default 0
7650
+ */
7651
+ libraryFiles: number;
7652
+ /**
7653
+ * Settings
7654
+ * @default []
7655
+ */
7656
+ settings: components["schemas"]["StorageSettingValue"][];
7657
+ };
7658
+ /**
7659
+ * StorageSettingValue
7660
+ * @description One setting a provider or target reads, as it is in effect: secrets masked (`****`), key ids cut to
7661
+ * their last four characters. Read-only: settings come from the environment (the chart), not from here.
7662
+ */
7663
+ StorageSettingValue: {
7664
+ /** Env */
7665
+ env: string;
7666
+ /**
7667
+ * Label
7668
+ * @default
7669
+ */
7670
+ label: string;
7671
+ /** Value */
7672
+ value?: string | null;
7673
+ /**
7674
+ * Isset
7675
+ * @default false
7676
+ */
7677
+ isSet: boolean;
7678
+ /**
7679
+ * Secret
7680
+ * @default false
7681
+ */
7682
+ secret: boolean;
7683
+ /**
7684
+ * Help
7685
+ * @default
7686
+ */
7687
+ help: string;
7688
+ };
7689
+ /**
7690
+ * StorageSettingsRead
7691
+ * @description Where new uploads go. Existing files stay on the provider each row names; moving them is
7692
+ * `python -m marvin.scripts.storage_migrate`.
7693
+ */
7694
+ StorageSettingsRead: {
7695
+ /** Envdefault */
7696
+ envDefault: string;
7697
+ /** Uploadprovider */
7698
+ uploadProvider?: string | null;
7699
+ /** Effectiveprovider */
7700
+ effectiveProvider: string;
7701
+ /** Warning */
7702
+ warning?: string | null;
7703
+ /** Providers */
7704
+ providers: components["schemas"]["StorageProviderOption"][];
7705
+ /** Workspaces */
7706
+ workspaces: components["schemas"]["StorageWorkspaceUsage"][];
7707
+ /**
7708
+ * Workspacesettings
7709
+ * @default []
7710
+ */
7711
+ workspaceSettings: components["schemas"]["StorageWorkspaceSettings"][];
7712
+ /** Remotepublicbaseurl */
7713
+ remotePublicBaseUrl?: string | null;
7714
+ /**
7715
+ * Backuptargets
7716
+ * @default []
7717
+ */
7718
+ backupTargets: components["schemas"]["StorageBackupTarget"][];
7719
+ };
7720
+ /** StorageSettingsUpdate */
7721
+ StorageSettingsUpdate: {
7722
+ /** Uploadprovider */
7723
+ uploadProvider?: string | null;
7724
+ };
7725
+ /**
7726
+ * StorageWorkspaceSettings
7727
+ * @description A workspace's storage settings (platform admin).
7728
+ */
7729
+ StorageWorkspaceSettings: {
7730
+ /** Workspaceid */
7731
+ workspaceId: string;
7732
+ /** Workspace */
7733
+ workspace: string;
7734
+ /** Storagecode */
7735
+ storageCode?: string | null;
7736
+ /** Assetpublicbaseurl */
7737
+ assetPublicBaseUrl?: string | null;
7738
+ };
7739
+ /** StorageWorkspaceUpdate */
7740
+ StorageWorkspaceUpdate: {
7741
+ /** Assetpublicbaseurl */
7742
+ assetPublicBaseUrl?: string | null;
7743
+ };
7744
+ /** StorageWorkspaceUsage */
7745
+ StorageWorkspaceUsage: {
7746
+ /** Workspaceid */
7747
+ workspaceId: string;
7748
+ /** Workspace */
7749
+ workspace: string;
7750
+ /** Provider */
7751
+ provider: string;
7752
+ /** Assets */
7753
+ assets: number;
7754
+ /** Bytes */
7755
+ bytes: number;
7756
+ };
6813
7757
  /**
6814
7758
  * SubmissionProtectionOverride
6815
7759
  * @description Workspace-level override: every field optional, ``None`` inherits the platform default.
@@ -6897,6 +7841,53 @@ interface components {
6897
7841
  */
6898
7842
  error: boolean;
6899
7843
  };
7844
+ /**
7845
+ * SystemEmailRead
7846
+ * @description One of Marvin's own emails (welcome, password reset, invitation) that a workspace template of the same type
7847
+ * can replace: `GET /api/platform/workspaces/{group_id}/email-templates/system-emails`.
7848
+ */
7849
+ SystemEmailRead: {
7850
+ /** Templatetype */
7851
+ templateType: string;
7852
+ /** Label */
7853
+ label: string;
7854
+ /** Eventtype */
7855
+ eventType: string;
7856
+ /** Eventname */
7857
+ eventName: string;
7858
+ /** Recipienttype */
7859
+ recipientType: string;
7860
+ /** Recipientfield */
7861
+ recipientField?: string | null;
7862
+ /** Systemtemplateid */
7863
+ systemTemplateId?: string | null;
7864
+ /** Systemsends */
7865
+ systemSends: boolean;
7866
+ /**
7867
+ * Replacedby
7868
+ * @default []
7869
+ */
7870
+ replacedBy: string[];
7871
+ /**
7872
+ * Variables
7873
+ * @default []
7874
+ */
7875
+ variables: components["schemas"]["SystemEmailVariable"][];
7876
+ };
7877
+ /**
7878
+ * SystemEmailVariable
7879
+ * @description A {{ variable }} the replaced email's event provides (from the event catalog).
7880
+ */
7881
+ SystemEmailVariable: {
7882
+ /** Slug */
7883
+ slug: string;
7884
+ /** Description */
7885
+ description: string;
7886
+ /** Example */
7887
+ example: string;
7888
+ /** Type */
7889
+ type: string;
7890
+ };
6900
7891
  /**
6901
7892
  * SystemStats
6902
7893
  * @description System statistics response model.
@@ -7180,6 +8171,11 @@ interface components {
7180
8171
  /** Defaulttone */
7181
8172
  defaultTone?: string | null;
7182
8173
  };
8174
+ /** TrashSettings */
8175
+ TrashSettings: {
8176
+ /** Auto Empty Days */
8177
+ auto_empty_days: number;
8178
+ };
7183
8179
  /**
7184
8180
  * UnlockResults
7185
8181
  * @description Schema for the response when an operation to unlock user accounts is performed.
@@ -7223,14 +8219,12 @@ interface components {
7223
8219
  };
7224
8220
  /**
7225
8221
  * UserCreate
7226
- * @description Schema for creating a new user.
7227
- * Includes essential user details, authentication method, admin status,
7228
- * group assignment, permissions, and password.
8222
+ * @description Schema for creating a new user: the shared user fields plus a plaintext password.
8223
+ * Input only — never use it (or anything derived from it) as a response model.
7229
8224
  * @example {
7230
8225
  * "admin": false,
7231
8226
  * "email": "newuser@example.com",
7232
8227
  * "fullName": "New User Name",
7233
- * "group": "Default",
7234
8228
  * "password": "aSecurePassword123",
7235
8229
  * "username": "NewUser"
7236
8230
  * }
@@ -7265,8 +8259,6 @@ interface components {
7265
8259
  * @default false
7266
8260
  */
7267
8261
  advanced: boolean;
7268
- /** Password */
7269
- password: string;
7270
8262
  /**
7271
8263
  * Caninvite
7272
8264
  * @default false
@@ -7282,6 +8274,8 @@ interface components {
7282
8274
  * @default false
7283
8275
  */
7284
8276
  canOrganize: boolean;
8277
+ /** Password */
8278
+ password: string;
7285
8279
  };
7286
8280
  /**
7287
8281
  * UserPagination
@@ -7332,22 +8326,11 @@ interface components {
7332
8326
  };
7333
8327
  /**
7334
8328
  * UserRead
7335
- * @description Schema for representing a user when read from the system.
7336
- * Extends `UserCreate` (which includes password), and adds system-generated fields
7337
- * like `id`, group details, and `cache_key`.
8329
+ * @description Schema for representing a user when read from the system — the shape API responses use.
8330
+ * Adds system-generated fields like `id`, group details, and `cache_key` to the shared user fields.
7338
8331
  *
7339
- * NOTE: Inheriting from `UserCreate` means this schema will include `password`.
7340
- * For public user representations, `password` should typically be excluded.
7341
- * Consider having a different base or explicitly excluding password here if this
7342
- * is for general-purpose reading. `PrivateUser` below handles sensitive data.
7343
- * @example {
7344
- * "admin": false,
7345
- * "email": "newuser@example.com",
7346
- * "fullName": "New User Name",
7347
- * "group": "Default",
7348
- * "password": "aSecurePassword123",
7349
- * "username": "NewUser"
7350
- * }
8332
+ * It has no `password`: it builds on `_UserBase`, not `UserCreate`. The stored hash lives only on
8333
+ * `PrivateUser`, which must never be a response model.
7351
8334
  */
7352
8335
  UserRead: {
7353
8336
  /**
@@ -7381,8 +8364,6 @@ interface components {
7381
8364
  * @default false
7382
8365
  */
7383
8366
  advanced: boolean;
7384
- /** Password */
7385
- password: string;
7386
8367
  /**
7387
8368
  * Caninvite
7388
8369
  * @default false
@@ -7646,6 +8627,288 @@ interface components {
7646
8627
  */
7647
8628
  id: string;
7648
8629
  };
8630
+ /** WorkflowCapability */
8631
+ WorkflowCapability: {
8632
+ /** Name */
8633
+ name: string;
8634
+ /**
8635
+ * Priority
8636
+ * @default
8637
+ */
8638
+ priority: string;
8639
+ /**
8640
+ * Acceptance
8641
+ * @default
8642
+ */
8643
+ acceptance: string;
8644
+ };
8645
+ /** WorkflowLibraryEntryType */
8646
+ WorkflowLibraryEntryType: {
8647
+ /** Slug */
8648
+ slug: string;
8649
+ /** Name */
8650
+ name: string;
8651
+ /**
8652
+ * Fields
8653
+ * @default []
8654
+ */
8655
+ fields: string[];
8656
+ };
8657
+ /** WorkflowLibraryIntegration */
8658
+ WorkflowLibraryIntegration: {
8659
+ /** Slug */
8660
+ slug: string;
8661
+ /** Name */
8662
+ name: string;
8663
+ /** Provider */
8664
+ provider: string;
8665
+ /**
8666
+ * Enabled
8667
+ * @default false
8668
+ */
8669
+ enabled: boolean;
8670
+ /**
8671
+ * Capabilities
8672
+ * @default []
8673
+ */
8674
+ capabilities: string[];
8675
+ };
8676
+ /** WorkflowLibraryRead */
8677
+ WorkflowLibraryRead: {
8678
+ /**
8679
+ * Recipes
8680
+ * @default []
8681
+ */
8682
+ recipes: components["schemas"]["WorkflowRecipe"][];
8683
+ /**
8684
+ * Capabilities
8685
+ * @default {}
8686
+ */
8687
+ capabilities: {
8688
+ [key: string]: components["schemas"]["WorkflowCapability"];
8689
+ };
8690
+ /**
8691
+ * @default {
8692
+ * "entryTypes": [],
8693
+ * "integrations": [],
8694
+ * "collections": [],
8695
+ * "outgoingWebhooks": [],
8696
+ * "incomingWebhooks": [],
8697
+ * "statuses": []
8698
+ * }
8699
+ */
8700
+ refs: components["schemas"]["WorkflowLibraryRefs"];
8701
+ };
8702
+ /**
8703
+ * WorkflowLibraryRef
8704
+ * @description A collection, an outgoing webhook (`id`) or an incoming one (`slug`) — what a picker offers.
8705
+ */
8706
+ WorkflowLibraryRef: {
8707
+ /** Id */
8708
+ id?: string | null;
8709
+ /** Slug */
8710
+ slug?: string | null;
8711
+ /** Name */
8712
+ name: string;
8713
+ /** Enabled */
8714
+ enabled?: boolean | null;
8715
+ };
8716
+ /**
8717
+ * WorkflowLibraryRefs
8718
+ * @description The workspace's names every setup picker draws from, in one fetch.
8719
+ */
8720
+ WorkflowLibraryRefs: {
8721
+ /**
8722
+ * Entrytypes
8723
+ * @default []
8724
+ */
8725
+ entryTypes: components["schemas"]["WorkflowLibraryEntryType"][];
8726
+ /**
8727
+ * Integrations
8728
+ * @default []
8729
+ */
8730
+ integrations: components["schemas"]["WorkflowLibraryIntegration"][];
8731
+ /**
8732
+ * Collections
8733
+ * @default []
8734
+ */
8735
+ collections: components["schemas"]["WorkflowLibraryRef"][];
8736
+ /**
8737
+ * Outgoingwebhooks
8738
+ * @default []
8739
+ */
8740
+ outgoingWebhooks: components["schemas"]["WorkflowLibraryRef"][];
8741
+ /**
8742
+ * Incomingwebhooks
8743
+ * @default []
8744
+ */
8745
+ incomingWebhooks: components["schemas"]["WorkflowLibraryRef"][];
8746
+ /**
8747
+ * Statuses
8748
+ * @default []
8749
+ */
8750
+ statuses: string[];
8751
+ };
8752
+ /**
8753
+ * WorkflowRecipe
8754
+ * @description One catalogue entry, and whether this workspace can use it: `missing` empty → ready here.
8755
+ */
8756
+ WorkflowRecipe: {
8757
+ /** Id */
8758
+ id: string;
8759
+ /** Title */
8760
+ title: string;
8761
+ /** Outcome */
8762
+ outcome: string;
8763
+ /** Category */
8764
+ category: string;
8765
+ /** Categoryslug */
8766
+ categorySlug: string;
8767
+ /**
8768
+ * Tags
8769
+ * @default []
8770
+ */
8771
+ tags: string[];
8772
+ trigger: components["schemas"]["WorkflowRecipeTrigger"];
8773
+ /** Status */
8774
+ status: string;
8775
+ /** Shape */
8776
+ shape: string;
8777
+ /**
8778
+ * Providers
8779
+ * @default []
8780
+ */
8781
+ providers: string[];
8782
+ /**
8783
+ * Capabilities
8784
+ * @default []
8785
+ */
8786
+ capabilities: string[];
8787
+ /**
8788
+ * Inuse
8789
+ * @default []
8790
+ */
8791
+ inUse: components["schemas"]["WorkflowRecipeUse"][];
8792
+ /**
8793
+ * Sideeffects
8794
+ * @default []
8795
+ */
8796
+ sideEffects: components["schemas"]["WorkflowRecipeSideEffect"][];
8797
+ /**
8798
+ * Setupvariables
8799
+ * @default []
8800
+ */
8801
+ setupVariables: components["schemas"]["WorkflowRecipeVariable"][];
8802
+ /**
8803
+ * Supportingobjects
8804
+ * @default []
8805
+ */
8806
+ supportingObjects: components["schemas"]["WorkflowRecipeSupportingObject"][];
8807
+ /**
8808
+ * Dependencies
8809
+ * @default []
8810
+ */
8811
+ dependencies: components["schemas"]["WorkflowRecipeDependency"][];
8812
+ /**
8813
+ * Missing
8814
+ * @default []
8815
+ */
8816
+ missing: string[];
8817
+ };
8818
+ /**
8819
+ * WorkflowRecipeDependency
8820
+ * @description An idea's gap: the capability it waits on (a key of `WorkflowLibraryRead.capabilities`) and why.
8821
+ */
8822
+ WorkflowRecipeDependency: {
8823
+ /** Capability */
8824
+ capability: string;
8825
+ /**
8826
+ * Why
8827
+ * @default
8828
+ */
8829
+ why: string;
8830
+ };
8831
+ /** WorkflowRecipeSideEffect */
8832
+ WorkflowRecipeSideEffect: {
8833
+ /** Kind */
8834
+ kind: string;
8835
+ /**
8836
+ * Description
8837
+ * @default
8838
+ */
8839
+ description: string;
8840
+ };
8841
+ /**
8842
+ * WorkflowRecipeSupportingObject
8843
+ * @description Something set up alongside the recipe — for a configuration recipe, the whole of it.
8844
+ */
8845
+ WorkflowRecipeSupportingObject: {
8846
+ /** Kind */
8847
+ kind: string;
8848
+ /**
8849
+ * Name
8850
+ * @default
8851
+ */
8852
+ name: string;
8853
+ /**
8854
+ * Purpose
8855
+ * @default
8856
+ */
8857
+ purpose: string;
8858
+ /**
8859
+ * Required
8860
+ * @default false
8861
+ */
8862
+ required: boolean;
8863
+ };
8864
+ /** WorkflowRecipeTrigger */
8865
+ WorkflowRecipeTrigger: {
8866
+ /** Type */
8867
+ type: string;
8868
+ /** Event */
8869
+ event?: string | null;
8870
+ /** Note */
8871
+ note?: string | null;
8872
+ };
8873
+ /**
8874
+ * WorkflowRecipeUse
8875
+ * @description A workflow in this workspace made from a recipe.
8876
+ */
8877
+ WorkflowRecipeUse: {
8878
+ /**
8879
+ * Id
8880
+ * Format: uuid4
8881
+ */
8882
+ id: string;
8883
+ /** Name */
8884
+ name: string;
8885
+ /** Slug */
8886
+ slug: string;
8887
+ /** Enabled */
8888
+ enabled: boolean;
8889
+ /**
8890
+ * Outdated
8891
+ * @default false
8892
+ */
8893
+ outdated: boolean;
8894
+ };
8895
+ /**
8896
+ * WorkflowRecipeVariable
8897
+ * @description A setup placeholder the person fills: its `type` says which picker (entry_type_slug, field_key, webhook_id…).
8898
+ */
8899
+ WorkflowRecipeVariable: {
8900
+ /** Name */
8901
+ name: string;
8902
+ /** Type */
8903
+ type: string;
8904
+ /**
8905
+ * Description
8906
+ * @default
8907
+ */
8908
+ description: string;
8909
+ /** Example */
8910
+ example?: unknown;
8911
+ };
7649
8912
  /** WorkspaceAISettingsRead */
7650
8913
  WorkspaceAISettingsRead: {
7651
8914
  /**
@@ -7743,6 +9006,15 @@ interface components {
7743
9006
  [key: string]: string;
7744
9007
  };
7745
9008
  };
9009
+ /**
9010
+ * Characterinsets
9011
+ * @default {}
9012
+ */
9013
+ characterInsets: {
9014
+ [key: string]: {
9015
+ [key: string]: number;
9016
+ };
9017
+ };
7746
9018
  };
7747
9019
  /** WorkspaceAISettingsUpdate */
7748
9020
  WorkspaceAISettingsUpdate: {
@@ -7920,6 +9192,34 @@ interface components {
7920
9192
  groupId: string;
7921
9193
  workspaceRole: components["schemas"]["WorkspaceRole"];
7922
9194
  };
9195
+ /** WorkspaceNotificationsRead */
9196
+ WorkspaceNotificationsRead: {
9197
+ /** Types */
9198
+ types: components["schemas"]["AlertKindRead"][];
9199
+ email: components["schemas"]["NotificationEmailRead"];
9200
+ push: components["schemas"]["NotificationPushRead"];
9201
+ /** Routes */
9202
+ routes: components["schemas"]["NotificationRouteRead"][];
9203
+ /** Targets */
9204
+ targets: components["schemas"]["AlertTarget"][];
9205
+ /** Integrationsavailable */
9206
+ integrationsAvailable: boolean;
9207
+ /** Integrationreminderhours */
9208
+ integrationReminderHours: number;
9209
+ };
9210
+ /** WorkspaceNotificationsUpdate */
9211
+ WorkspaceNotificationsUpdate: {
9212
+ /** Types */
9213
+ types?: {
9214
+ [key: string]: boolean;
9215
+ };
9216
+ email?: components["schemas"]["NotificationEmailUpdate"];
9217
+ push?: components["schemas"]["NotificationPushUpdate"] | null;
9218
+ /** Routes */
9219
+ routes?: components["schemas"]["NotificationRouteUpdate"][];
9220
+ /** Integrationreminderhours */
9221
+ integrationReminderHours?: number | null;
9222
+ };
7923
9223
  /**
7924
9224
  * WorkspaceRole
7925
9225
  * @description Workspace-level roles for workspace members.