@inneropen/marvin-sdk 2.0.0-next.1 → 2.0.0-next.11

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.
@@ -560,6 +560,163 @@ interface components {
560
560
  /** Error */
561
561
  error?: string | null;
562
562
  };
563
+ /**
564
+ * EmailTemplateCreate
565
+ * @description Schema for creating a new email template.
566
+ */
567
+ EmailTemplateCreate: {
568
+ /**
569
+ * Templatetype
570
+ * @description Type of email (invitation, password_reset, notification, test)
571
+ */
572
+ templateType: string;
573
+ /**
574
+ * Groupid
575
+ * @description Workspace ID - null for system-wide templates
576
+ */
577
+ groupId?: string | null;
578
+ /**
579
+ * Name
580
+ * @description Human-readable template name
581
+ */
582
+ name: string;
583
+ /**
584
+ * Description
585
+ * @description Description of when this template is used
586
+ */
587
+ description?: string | null;
588
+ /**
589
+ * Subject
590
+ * @description Email subject line - supports Jinja2 variables
591
+ */
592
+ subject: string;
593
+ /**
594
+ * Headertext
595
+ * @description Header text (structured mode with default.html)
596
+ */
597
+ headerText?: string | null;
598
+ /**
599
+ * Messagetop
600
+ * @description Top message (structured mode with default.html)
601
+ */
602
+ messageTop?: string | null;
603
+ /**
604
+ * Messagebottom
605
+ * @description Bottom message (structured mode with default.html)
606
+ */
607
+ messageBottom?: string | null;
608
+ /**
609
+ * Buttontext
610
+ * @description Button text (structured mode with default.html)
611
+ */
612
+ buttonText?: string | null;
613
+ /**
614
+ * Customhtml
615
+ * @description Full custom HTML - if set, overrides structured fields
616
+ */
617
+ customHtml?: string | null;
618
+ /**
619
+ * Availablevariables
620
+ * @description Documentation of available variables
621
+ */
622
+ availableVariables?: {
623
+ [key: string]: unknown;
624
+ } | null;
625
+ /**
626
+ * Enabled
627
+ * @description Whether this template is active
628
+ * @default true
629
+ */
630
+ enabled: boolean;
631
+ };
632
+ /**
633
+ * EmailTemplateRead
634
+ * @description Schema for reading an email template.
635
+ */
636
+ EmailTemplateRead: {
637
+ /**
638
+ * Id
639
+ * Format: uuid4
640
+ */
641
+ id: string;
642
+ /** Templatetype */
643
+ templateType: string;
644
+ /** Groupid */
645
+ groupId: string | null;
646
+ /** Name */
647
+ name: string;
648
+ /** Description */
649
+ description: string | null;
650
+ /** Subject */
651
+ subject: string;
652
+ /** Headertext */
653
+ headerText: string | null;
654
+ /** Messagetop */
655
+ messageTop: string | null;
656
+ /** Messagebottom */
657
+ messageBottom: string | null;
658
+ /** Buttontext */
659
+ buttonText: string | null;
660
+ /** Customhtml */
661
+ customHtml: string | null;
662
+ /** Availablevariables */
663
+ availableVariables: {
664
+ [key: string]: unknown;
665
+ } | null;
666
+ /** Enabled */
667
+ enabled: boolean;
668
+ /** Createdat */
669
+ createdAt: string;
670
+ /** Updateat */
671
+ updateAt: string;
672
+ };
673
+ /**
674
+ * EmailTemplateSummary
675
+ * @description Summary schema for listing email templates.
676
+ */
677
+ EmailTemplateSummary: {
678
+ /**
679
+ * Id
680
+ * Format: uuid4
681
+ */
682
+ id: string;
683
+ /** Templatetype */
684
+ templateType: string;
685
+ /** Name */
686
+ name: string;
687
+ /** Description */
688
+ description: string | null;
689
+ /** Enabled */
690
+ enabled: boolean;
691
+ };
692
+ /**
693
+ * EmailTemplateUpdate
694
+ * @description Schema for updating an email template.
695
+ */
696
+ EmailTemplateUpdate: {
697
+ /** Name */
698
+ name?: string | null;
699
+ /** Description */
700
+ description?: string | null;
701
+ /** Subject */
702
+ subject?: string | null;
703
+ /** Headertext */
704
+ headerText?: string | null;
705
+ /** Messagetop */
706
+ messageTop?: string | null;
707
+ /** Messagebottom */
708
+ messageBottom?: string | null;
709
+ /** Buttontext */
710
+ buttonText?: string | null;
711
+ /** Customhtml */
712
+ customHtml?: string | null;
713
+ /** Availablevariables */
714
+ availableVariables?: {
715
+ [key: string]: unknown;
716
+ } | null;
717
+ /** Enabled */
718
+ enabled?: boolean | null;
719
+ };
563
720
  /**
564
721
  * EmailTest
565
722
  * @description Schema for the request body when sending a test email.
@@ -646,6 +803,9 @@ interface components {
646
803
  /**
647
804
  * EntryCreate
648
805
  * @description Schema for creating an entry.
806
+ *
807
+ * BREAKING CHANGE: content_markdown removed, replaced with data_json.
808
+ * Entry content is now schema-driven based on entry_type.schema_json.
649
809
  */
650
810
  EntryCreate: {
651
811
  /**
@@ -661,8 +821,13 @@ interface components {
661
821
  summary?: string | null;
662
822
  /** Description */
663
823
  description?: string | null;
664
- /** Contentmarkdown */
665
- contentMarkdown?: string | null;
824
+ /**
825
+ * Datajson
826
+ * @description Schema-driven content data (validated against entry_type.schema_json)
827
+ */
828
+ dataJson?: {
829
+ [key: string]: unknown;
830
+ };
666
831
  /**
667
832
  * Status
668
833
  * @default inbox
@@ -670,7 +835,14 @@ interface components {
670
835
  status: string;
671
836
  /** Publishedat */
672
837
  publishedAt?: string | null;
673
- /** Metadatajson */
838
+ /** Publishat */
839
+ publishAt?: string | null;
840
+ /** Expireat */
841
+ expireAt?: string | null;
842
+ /**
843
+ * Metadatajson
844
+ * @description Custom non-schema metadata (API keys, external IDs, etc.)
845
+ */
674
846
  metadataJson?: {
675
847
  [key: string]: unknown;
676
848
  } | null;
@@ -697,6 +869,9 @@ interface components {
697
869
  /**
698
870
  * EntryRead
699
871
  * @description Schema for reading an entry.
872
+ *
873
+ * BREAKING CHANGE: content_markdown removed, replaced with data_json.
874
+ * Entry content is now schema-driven based on entry_type.schema_json.
700
875
  */
701
876
  EntryRead: {
702
877
  /**
@@ -722,13 +897,25 @@ interface components {
722
897
  summary?: string | null;
723
898
  /** Description */
724
899
  description?: string | null;
725
- /** Contentmarkdown */
726
- contentMarkdown?: string | null;
900
+ /**
901
+ * Datajson
902
+ * @description Schema-driven content data
903
+ */
904
+ dataJson?: {
905
+ [key: string]: unknown;
906
+ };
727
907
  /** Status */
728
908
  status: string;
729
909
  /** Publishedat */
730
910
  publishedAt?: string | null;
731
- /** Metadatajson */
911
+ /** Publishat */
912
+ publishAt?: string | null;
913
+ /** Expireat */
914
+ expireAt?: string | null;
915
+ /**
916
+ * Metadatajson
917
+ * @description Custom non-schema metadata
918
+ */
732
919
  metadataJson?: {
733
920
  [key: string]: unknown;
734
921
  } | null;
@@ -781,10 +968,20 @@ interface components {
781
968
  * @default false
782
969
  */
783
970
  isSystem: boolean;
971
+ /**
972
+ * Schema Json
973
+ * @description Entry type schema definition (EntryTypeSchemaDefinition)
974
+ */
975
+ schema_json?: {
976
+ [key: string]: unknown;
977
+ } | null;
784
978
  };
785
979
  /**
786
980
  * EntryTypeRead
787
981
  * @description Schema for reading an entry type.
982
+ *
983
+ * System entry types have group_id=None and are globally available to all workspaces.
984
+ * Workspace-scoped entry types have a specific group_id.
788
985
  */
789
986
  EntryTypeRead: {
790
987
  /**
@@ -792,11 +989,8 @@ interface components {
792
989
  * Format: uuid4
793
990
  */
794
991
  id: string;
795
- /**
796
- * Groupid
797
- * Format: uuid4
798
- */
799
- groupId: string;
992
+ /** Groupid */
993
+ groupId: string | null;
800
994
  /** Name */
801
995
  name: string;
802
996
  /** Slug */
@@ -811,6 +1005,13 @@ interface components {
811
1005
  sortOrder: number;
812
1006
  /** Issystem */
813
1007
  isSystem: boolean;
1008
+ /**
1009
+ * Schemajson
1010
+ * @description Entry type schema definition (EntryTypeSchemaDefinition)
1011
+ */
1012
+ schemaJson?: {
1013
+ [key: string]: unknown;
1014
+ } | null;
814
1015
  /** Createdat */
815
1016
  createdAt?: string | null;
816
1017
  /** Updateat */
@@ -835,10 +1036,20 @@ interface components {
835
1036
  sortOrder?: number | null;
836
1037
  /** Issystem */
837
1038
  isSystem?: boolean | null;
1039
+ /**
1040
+ * Schema Json
1041
+ * @description Entry type schema definition (EntryTypeSchemaDefinition)
1042
+ */
1043
+ schema_json?: {
1044
+ [key: string]: unknown;
1045
+ } | null;
838
1046
  };
839
1047
  /**
840
1048
  * EntryUpdate
841
1049
  * @description Schema for patching an entry.
1050
+ *
1051
+ * BREAKING CHANGE: content_markdown removed, replaced with data_json.
1052
+ * Entry content is now schema-driven based on entry_type.schema_json.
842
1053
  */
843
1054
  EntryUpdate: {
844
1055
  /** Entry Type Id */
@@ -851,14 +1062,26 @@ interface components {
851
1062
  summary?: string | null;
852
1063
  /** Description */
853
1064
  description?: string | null;
854
- /** Content Markdown */
855
- content_markdown?: string | null;
1065
+ /**
1066
+ * Datajson
1067
+ * @description Schema-driven content data (validated against entry_type.schema_json)
1068
+ */
1069
+ dataJson?: {
1070
+ [key: string]: unknown;
1071
+ } | null;
856
1072
  /** Status */
857
1073
  status?: string | null;
858
- /** Published At */
859
- published_at?: string | null;
860
- /** Metadata Json */
861
- metadata_json?: {
1074
+ /** Publishedat */
1075
+ publishedAt?: string | null;
1076
+ /** Publishat */
1077
+ publishAt?: string | null;
1078
+ /** Expireat */
1079
+ expireAt?: string | null;
1080
+ /**
1081
+ * Metadatajson
1082
+ * @description Custom non-schema metadata (API keys, external IDs, etc.)
1083
+ */
1084
+ metadataJson?: {
862
1085
  [key: string]: unknown;
863
1086
  } | null;
864
1087
  /** Collection Ids */
@@ -874,7 +1097,7 @@ interface components {
874
1097
  * Helps listeners understand the nature of `EventDocumentDataBase` content.
875
1098
  * @enum {string}
876
1099
  */
877
- EventDocumentType: "generic" | "user" | "workspace" | "entry" | "collection" | "asset" | "webhook" | "member" | "invitation" | "api_token" | "api_client" | "entry_type" | "resource" | "deployment";
1100
+ EventDocumentType: "generic" | "user" | "workspace" | "entry" | "form" | "form_submission" | "collection" | "asset" | "webhook" | "member" | "invitation" | "api_token" | "api_client" | "entry_type" | "resource" | "deployment";
878
1101
  /**
879
1102
  * EventLogRead
880
1103
  * @description Schema for reading an event log entry.
@@ -1024,6 +1247,165 @@ interface components {
1024
1247
  /** Email */
1025
1248
  email: string;
1026
1249
  };
1250
+ /**
1251
+ * FormCreate
1252
+ * @description Schema for creating a form.
1253
+ */
1254
+ FormCreate: {
1255
+ /** Name */
1256
+ name: string;
1257
+ /** Slug */
1258
+ slug?: string | null;
1259
+ /** Description */
1260
+ description?: string | null;
1261
+ /**
1262
+ * Status
1263
+ * @default draft
1264
+ */
1265
+ status: string;
1266
+ /** Formschema */
1267
+ formSchema?: {
1268
+ [key: string]: unknown;
1269
+ };
1270
+ /** Settingsjson */
1271
+ settingsJson?: {
1272
+ [key: string]: unknown;
1273
+ } | null;
1274
+ /** Metadatajson */
1275
+ metadataJson?: {
1276
+ [key: string]: unknown;
1277
+ } | null;
1278
+ };
1279
+ /**
1280
+ * FormRead
1281
+ * @description Schema for reading a form.
1282
+ */
1283
+ FormRead: {
1284
+ /**
1285
+ * Id
1286
+ * Format: uuid4
1287
+ */
1288
+ id: string;
1289
+ /**
1290
+ * Groupid
1291
+ * Format: uuid4
1292
+ */
1293
+ groupId: string;
1294
+ /** Slug */
1295
+ slug: string;
1296
+ /** Name */
1297
+ name: string;
1298
+ /** Description */
1299
+ description: string | null;
1300
+ /** Schemajson */
1301
+ schemaJson: {
1302
+ [key: string]: unknown;
1303
+ };
1304
+ /** Settingsjson */
1305
+ settingsJson: {
1306
+ [key: string]: unknown;
1307
+ } | null;
1308
+ /** Metadatajson */
1309
+ metadataJson: {
1310
+ [key: string]: unknown;
1311
+ } | null;
1312
+ /** Status */
1313
+ status: string;
1314
+ /** Submissionscount */
1315
+ submissionsCount: number;
1316
+ /** Lastsubmissionat */
1317
+ lastSubmissionAt: string | null;
1318
+ /** Createdat */
1319
+ createdAt: string | null;
1320
+ /** Updateat */
1321
+ updateAt: string | null;
1322
+ };
1323
+ /**
1324
+ * FormSubmissionRead
1325
+ * @description Schema for reading a form submission.
1326
+ */
1327
+ FormSubmissionRead: {
1328
+ /**
1329
+ * Id
1330
+ * Format: uuid4
1331
+ */
1332
+ id: string;
1333
+ /**
1334
+ * Formid
1335
+ * Format: uuid4
1336
+ */
1337
+ formId: string;
1338
+ /**
1339
+ * Groupid
1340
+ * Format: uuid4
1341
+ */
1342
+ groupId: string;
1343
+ /** Datajson */
1344
+ dataJson: {
1345
+ [key: string]: unknown;
1346
+ };
1347
+ /** Metadatajson */
1348
+ metadataJson: {
1349
+ [key: string]: unknown;
1350
+ } | null;
1351
+ /** Status */
1352
+ status: string;
1353
+ /** Ipaddress */
1354
+ ipAddress: string | null;
1355
+ /** Useragent */
1356
+ userAgent: string | null;
1357
+ /** Referrer */
1358
+ referrer: string | null;
1359
+ /**
1360
+ * Submittedat
1361
+ * Format: date-time
1362
+ */
1363
+ submittedAt: string;
1364
+ /** Processedat */
1365
+ processedAt: string | null;
1366
+ };
1367
+ /**
1368
+ * FormSubmissionResponse
1369
+ * @description Response after form submission.
1370
+ *
1371
+ * Indicates success/failure and optionally provides redirect URL.
1372
+ */
1373
+ FormSubmissionResponse: {
1374
+ /** Success */
1375
+ success: boolean;
1376
+ /** Message */
1377
+ message: string;
1378
+ /** Submissionid */
1379
+ submissionId?: string | null;
1380
+ /** Redirecturl */
1381
+ redirectUrl?: string | null;
1382
+ };
1383
+ /**
1384
+ * FormUpdate
1385
+ * @description Schema for updating a form.
1386
+ */
1387
+ FormUpdate: {
1388
+ /** Name */
1389
+ name?: string | null;
1390
+ /** Slug */
1391
+ slug?: string | null;
1392
+ /** Description */
1393
+ description?: string | null;
1394
+ /** Status */
1395
+ status?: string | null;
1396
+ /** Formschema */
1397
+ formSchema?: {
1398
+ [key: string]: unknown;
1399
+ } | null;
1400
+ /** Settingsjson */
1401
+ settingsJson?: {
1402
+ [key: string]: unknown;
1403
+ } | null;
1404
+ /** Metadatajson */
1405
+ metadataJson?: {
1406
+ [key: string]: unknown;
1407
+ } | null;
1408
+ };
1027
1409
  /**
1028
1410
  * GroupAdminUpdate
1029
1411
  * @description Schema for administrators to update a group.
@@ -1618,15 +2000,10 @@ interface components {
1618
2000
  description?: string | null;
1619
2001
  /** Publicurl */
1620
2002
  publicUrl: string;
1621
- /** Metadata */
1622
- metadata?: {
2003
+ /** Metadatajson */
2004
+ metadataJson?: {
1623
2005
  [key: string]: unknown;
1624
2006
  } | null;
1625
- /**
1626
- * Entries
1627
- * @default []
1628
- */
1629
- entries: string[];
1630
2007
  };
1631
2008
  /**
1632
2009
  * PublishedAssetsResponse
@@ -1659,8 +2036,8 @@ interface components {
1659
2036
  smartRules?: {
1660
2037
  [key: string]: unknown;
1661
2038
  } | null;
1662
- /** Metadata */
1663
- metadata?: {
2039
+ /** Metadatajson */
2040
+ metadataJson?: {
1664
2041
  [key: string]: unknown;
1665
2042
  } | null;
1666
2043
  /** Entrycount */
@@ -1671,35 +2048,21 @@ interface components {
1671
2048
  /**
1672
2049
  * PublishedCollectionSummary
1673
2050
  * @description Summary schema for published collections (for listing).
2051
+ *
2052
+ * Minimal collection info for entry contexts - only includes
2053
+ * essential fields for display and ordering.
1674
2054
  */
1675
2055
  PublishedCollectionSummary: {
1676
2056
  /** Slug */
1677
2057
  slug: string;
1678
2058
  /** Name */
1679
2059
  name: string;
1680
- /** Description */
1681
- description?: string | null;
1682
- /**
1683
- * Issmart
1684
- * @default false
1685
- */
1686
- isSmart: boolean;
1687
- /** Smartrules */
1688
- smartRules?: {
1689
- [key: string]: unknown;
1690
- } | null;
1691
- /** Metadata */
1692
- metadata?: {
2060
+ /** Metadatajson */
2061
+ metadataJson?: {
1693
2062
  [key: string]: unknown;
1694
2063
  } | null;
1695
- /** Entrycount */
1696
- entryCount: number;
1697
2064
  /** Sortorder */
1698
2065
  sortOrder: number;
1699
- /** Icon */
1700
- icon?: string | null;
1701
- /** Color */
1702
- color?: string | null;
1703
2066
  };
1704
2067
  /**
1705
2068
  * PublishedCollectionsResponse
@@ -1737,23 +2100,25 @@ interface components {
1737
2100
  summary?: string | null;
1738
2101
  /** Publishedat */
1739
2102
  publishedAt?: string | null;
2103
+ /** Status */
2104
+ status: string;
1740
2105
  /**
1741
2106
  * Collections
1742
2107
  * @default []
1743
2108
  */
1744
2109
  collections: string[];
1745
2110
  /**
1746
- * Assets
2111
+ * Assetslugs
1747
2112
  * @default []
1748
2113
  */
1749
- assets: string[];
1750
- /** Order */
1751
- order?: number | null;
2114
+ assetSlugs: string[];
1752
2115
  /**
1753
- * Resources
2116
+ * Resourceslugs
1754
2117
  * @default []
1755
2118
  */
1756
- resources: string[];
2119
+ resourceSlugs: string[];
2120
+ /** Order */
2121
+ order?: number | null;
1757
2122
  };
1758
2123
  /**
1759
2124
  * PublishedEntryRead
@@ -1761,6 +2126,9 @@ interface components {
1761
2126
  *
1762
2127
  * Only includes public-facing fields. Excludes all admin metadata,
1763
2128
  * internal fields, and user information.
2129
+ *
2130
+ * BREAKING CHANGE: content_markdown removed, replaced with data.
2131
+ * Entry content is now schema-driven based on entry_type.schema_json.
1764
2132
  */
1765
2133
  PublishedEntryRead: {
1766
2134
  /** Slug */
@@ -1771,12 +2139,14 @@ interface components {
1771
2139
  entryType: string;
1772
2140
  /** Summary */
1773
2141
  summary?: string | null;
1774
- /** Contentmarkdown */
1775
- contentMarkdown?: string | null;
2142
+ /** Data */
2143
+ data: {
2144
+ [key: string]: unknown;
2145
+ };
1776
2146
  /** Publishedat */
1777
2147
  publishedAt?: string | null;
1778
- /** Metadata */
1779
- metadata?: {
2148
+ /** Metadatajson */
2149
+ metadataJson?: {
1780
2150
  [key: string]: unknown;
1781
2151
  } | null;
1782
2152
  /**
@@ -1797,6 +2167,29 @@ interface components {
1797
2167
  /** Order */
1798
2168
  order?: number | null;
1799
2169
  };
2170
+ /**
2171
+ * PublishedFormRead
2172
+ * @description Schema for published forms in the publishing API.
2173
+ *
2174
+ * Provides form definition for frontend to render the form.
2175
+ * Does not expose internal fields like submissions_count.
2176
+ */
2177
+ PublishedFormRead: {
2178
+ /** Slug */
2179
+ slug: string;
2180
+ /** Name */
2181
+ name: string;
2182
+ /** Description */
2183
+ description?: string | null;
2184
+ /** Formschema */
2185
+ formSchema: {
2186
+ [key: string]: unknown;
2187
+ };
2188
+ /** Metadata */
2189
+ metadata?: {
2190
+ [key: string]: unknown;
2191
+ } | null;
2192
+ };
1800
2193
  /**
1801
2194
  * PublishedResourceRead
1802
2195
  * @description Schema for published resources in entry context.
@@ -1816,8 +2209,8 @@ interface components {
1816
2209
  url?: string | null;
1817
2210
  /** Externalid */
1818
2211
  externalId?: string | null;
1819
- /** Metadata */
1820
- metadata?: {
2212
+ /** Metadatajson */
2213
+ metadataJson?: {
1821
2214
  [key: string]: unknown;
1822
2215
  } | null;
1823
2216
  /** Role */
@@ -1852,8 +2245,8 @@ interface components {
1852
2245
  url?: string | null;
1853
2246
  /** Externalid */
1854
2247
  externalId?: string | null;
1855
- /** Metadata */
1856
- metadata?: {
2248
+ /** Metadatajson */
2249
+ metadataJson?: {
1857
2250
  [key: string]: unknown;
1858
2251
  } | null;
1859
2252
  /**
@@ -2179,8 +2572,8 @@ interface components {
2179
2572
  social?: {
2180
2573
  [key: string]: unknown;
2181
2574
  } | null;
2182
- /** Metadata */
2183
- metadata?: {
2575
+ /** Metadatajson */
2576
+ metadataJson?: {
2184
2577
  [key: string]: unknown;
2185
2578
  } | null;
2186
2579
  };
@@ -2232,6 +2625,17 @@ interface components {
2232
2625
  /** Data Dir Path */
2233
2626
  data_dir_path: string;
2234
2627
  };
2628
+ /**
2629
+ * TestEmailRequest
2630
+ * @description Request to send a test email.
2631
+ */
2632
+ TestEmailRequest: {
2633
+ /**
2634
+ * Recipient Email
2635
+ * Format: email
2636
+ */
2637
+ recipient_email: string;
2638
+ };
2235
2639
  /**
2236
2640
  * TokenResponseDelete
2237
2641
  * @description Schema for the response after successfully deleting an API token.
@@ -2853,6 +3257,16 @@ type PlatformWorkspaceMemberUpdate = components['schemas']['WorkspaceMemberUpdat
2853
3257
  */
2854
3258
  type EventLogEntry = components['schemas']['EventLogRead'];
2855
3259
  type EventLogSummary = components['schemas']['EventLogSummary'];
3260
+ /**
3261
+ * Forms (Platform API - full CRUD)
3262
+ */
3263
+ type PlatformForm = components['schemas']['FormRead'];
3264
+ type PlatformFormCreate = components['schemas']['FormCreate'];
3265
+ type PlatformFormUpdate = components['schemas']['FormUpdate'];
3266
+ /**
3267
+ * Form Submissions (Platform API - read access)
3268
+ */
3269
+ type PlatformFormSubmission = components['schemas']['FormSubmissionRead'];
2856
3270
 
2857
3271
  /**
2858
3272
  * Entries Module - Platform API
@@ -3784,6 +4198,208 @@ declare class ThemeModule {
3784
4198
  getTheme(): Promise<AppTheme>;
3785
4199
  }
3786
4200
 
4201
+ /**
4202
+ * Email Templates Module - Platform API
4203
+ *
4204
+ * Manage workspace email templates
4205
+ */
4206
+
4207
+ interface EmailTemplateSummary {
4208
+ id: string;
4209
+ template_type: string;
4210
+ group_id: string | null;
4211
+ name: string;
4212
+ description?: string;
4213
+ enabled: boolean;
4214
+ created_at: string;
4215
+ update_at: string;
4216
+ }
4217
+ interface EmailTemplateRead extends EmailTemplateSummary {
4218
+ subject: string;
4219
+ header_text?: string;
4220
+ message_top?: string;
4221
+ message_bottom?: string;
4222
+ button_text?: string;
4223
+ custom_html?: string;
4224
+ available_variables?: Record<string, string>;
4225
+ }
4226
+ interface EmailTemplateCreate {
4227
+ template_type: string;
4228
+ group_id?: string;
4229
+ name: string;
4230
+ description?: string;
4231
+ subject: string;
4232
+ header_text?: string;
4233
+ message_top?: string;
4234
+ message_bottom?: string;
4235
+ button_text?: string;
4236
+ custom_html?: string;
4237
+ available_variables?: Record<string, string>;
4238
+ enabled?: boolean;
4239
+ }
4240
+ interface EmailTemplateUpdate {
4241
+ name?: string;
4242
+ description?: string;
4243
+ subject?: string;
4244
+ header_text?: string;
4245
+ message_top?: string;
4246
+ message_bottom?: string;
4247
+ button_text?: string;
4248
+ custom_html?: string;
4249
+ available_variables?: Record<string, string>;
4250
+ enabled?: boolean;
4251
+ }
4252
+ interface TestEmailRequest {
4253
+ recipient_email: string;
4254
+ }
4255
+ interface TestEmailResponse {
4256
+ message: string;
4257
+ }
4258
+ /**
4259
+ * Email Templates API client for workspace-scoped templates
4260
+ */
4261
+ declare class EmailTemplatesClient {
4262
+ private readonly http;
4263
+ constructor(http: HttpClient);
4264
+ /**
4265
+ * List all email templates for the workspace
4266
+ * @param groupId - Workspace ID
4267
+ */
4268
+ list(groupId: string): Promise<EmailTemplateSummary[]>;
4269
+ /**
4270
+ * Get a specific email template
4271
+ * @param groupId - Workspace ID
4272
+ * @param templateId - Template ID
4273
+ */
4274
+ get(groupId: string, templateId: string): Promise<EmailTemplateRead>;
4275
+ /**
4276
+ * Create a new email template
4277
+ * @param groupId - Workspace ID
4278
+ * @param data - Template data
4279
+ */
4280
+ create(groupId: string, data: EmailTemplateCreate): Promise<EmailTemplateRead>;
4281
+ /**
4282
+ * Update an email template
4283
+ * @param groupId - Workspace ID
4284
+ * @param templateId - Template ID
4285
+ * @param data - Updated template data
4286
+ */
4287
+ update(groupId: string, templateId: string, data: EmailTemplateUpdate): Promise<EmailTemplateRead>;
4288
+ /**
4289
+ * Delete an email template
4290
+ * @param groupId - Workspace ID
4291
+ * @param templateId - Template ID
4292
+ */
4293
+ delete(groupId: string, templateId: string): Promise<void>;
4294
+ /**
4295
+ * Send a test email using a template
4296
+ * @param groupId - Workspace ID
4297
+ * @param templateId - Template ID
4298
+ * @param recipientEmail - Test recipient email address
4299
+ */
4300
+ sendTest(groupId: string, templateId: string, recipientEmail: string): Promise<TestEmailResponse>;
4301
+ }
4302
+
4303
+ /**
4304
+ * Scheduled Tasks Module - Platform API
4305
+ *
4306
+ * Manage workspace scheduled task automation
4307
+ */
4308
+
4309
+ type ScheduledTask = components['schemas']['ScheduledTaskRead'];
4310
+ type ScheduledTaskCreate = components['schemas']['ScheduledTaskCreate'];
4311
+ type ScheduledTaskUpdate = components['schemas']['ScheduledTaskUpdate'];
4312
+ type ScheduledTaskExecutionLog = components['schemas']['ScheduledTaskExecutionLogRead'];
4313
+ interface TaskTypeInfo {
4314
+ task_type: string;
4315
+ name: string;
4316
+ description: string;
4317
+ config_schema?: any;
4318
+ }
4319
+ declare class ScheduledTasksModule {
4320
+ private http;
4321
+ constructor(http: HttpClient);
4322
+ /**
4323
+ * List all scheduled tasks for the current workspace
4324
+ */
4325
+ list(): Promise<ScheduledTask[]>;
4326
+ /**
4327
+ * Get a scheduled task by ID or slug
4328
+ */
4329
+ get(idOrSlug: string): Promise<ScheduledTask>;
4330
+ /**
4331
+ * Create a new scheduled task
4332
+ */
4333
+ create(data: ScheduledTaskCreate): Promise<ScheduledTask>;
4334
+ /**
4335
+ * Update a scheduled task
4336
+ */
4337
+ update(idOrSlug: string, data: ScheduledTaskUpdate): Promise<ScheduledTask>;
4338
+ /**
4339
+ * Delete a scheduled task
4340
+ */
4341
+ delete(idOrSlug: string): Promise<void>;
4342
+ /**
4343
+ * Manually trigger task execution (bypass schedule)
4344
+ */
4345
+ execute(idOrSlug: string): Promise<void>;
4346
+ /**
4347
+ * Get task execution history
4348
+ */
4349
+ history(idOrSlug: string, options?: {
4350
+ limit?: number;
4351
+ }): Promise<ScheduledTaskExecutionLog[]>;
4352
+ /**
4353
+ * Get available task types
4354
+ */
4355
+ taskTypes(options?: {
4356
+ detailed?: boolean;
4357
+ }): Promise<string[] | TaskTypeInfo[]>;
4358
+ }
4359
+
4360
+ /**
4361
+ * Forms Module - Platform API
4362
+ *
4363
+ * CRUD operations for forms and submissions
4364
+ */
4365
+
4366
+ declare class FormsModule {
4367
+ private http;
4368
+ constructor(http: HttpClient);
4369
+ /**
4370
+ * List all forms
4371
+ */
4372
+ list(): Promise<PlatformForm[]>;
4373
+ /**
4374
+ * Get a single form by ID
4375
+ */
4376
+ get(id: string): Promise<PlatformForm>;
4377
+ /**
4378
+ * Create a new form
4379
+ */
4380
+ create(data: PlatformFormCreate): Promise<PlatformForm>;
4381
+ /**
4382
+ * Update a form
4383
+ */
4384
+ update(id: string, data: PlatformFormUpdate): Promise<PlatformForm>;
4385
+ /**
4386
+ * Delete a form
4387
+ */
4388
+ delete(id: string): Promise<void>;
4389
+ /**
4390
+ * Get submissions for a form
4391
+ */
4392
+ getSubmissions(formId: string): Promise<PlatformFormSubmission[]>;
4393
+ /**
4394
+ * Get a published form by slug (Publishing API - public access)
4395
+ */
4396
+ getPublishedForm(slug: string): Promise<PlatformForm>;
4397
+ /**
4398
+ * Submit data to a published form (Publishing API - public access)
4399
+ */
4400
+ submitForm(slug: string, data: Record<string, unknown>): Promise<PlatformFormSubmission>;
4401
+ }
4402
+
3787
4403
  /**
3788
4404
  * Platform API Client
3789
4405
  *
@@ -3812,6 +4428,9 @@ declare class PlatformClient extends HttpClient {
3812
4428
  eventLog: EventLogModule;
3813
4429
  session: AuthModule;
3814
4430
  theme: ThemeModule;
4431
+ emailTemplates: EmailTemplatesClient;
4432
+ scheduledTasks: ScheduledTasksModule;
4433
+ forms: FormsModule;
3815
4434
  adminUsers: AdminUsersModule;
3816
4435
  adminSystem: AdminSystemModule;
3817
4436
  adminMaintenance: AdminMaintenanceModule;
@@ -3822,4 +4441,4 @@ declare class PlatformClient extends HttpClient {
3822
4441
  */
3823
4442
  declare function createPlatformClient(config: PlatformClientConfig): PlatformClient;
3824
4443
 
3825
- export { APIClientsModule, type AdminAboutInfo, AdminMaintenanceModule, AdminSystemModule, AdminUsersModule, type ApiToken, type ApiTokenCreate, type ApiTokenWithToken, type AppTheme, AssetsModule, AuthModule, type AuthToken, CollectionsModule, type EmailInvitationRequest, type EmailSettings, EntriesModule, EntryTypesModule, type EventLogEntry, EventLogModule, type EventLogQueryParams, type EventLogSummary, type EventOption, EventsModule, type InviteTokenCreate, type InviteTokenPagination, type InviteTokenSummary, InvitesModule, type MaintenanceStorageDetails, type MaintenanceSummary, type Notification, type NotificationCreate, type NotificationUpdate, NotificationsModule, type PasswordChange, type PasswordResetTokenRequest, type PasswordResetTokenResponse, type PlatformAPIClient, type PlatformAPIClientCreate, type PlatformAPIClientUpdate, type PlatformAPIClientWithToken, type PlatformAsset, type PlatformAssetUpdate, PlatformClient, type PlatformClientConfig, type PlatformCollection, type PlatformCollectionCreate, type PlatformCollectionUpdate, type PlatformEntry, type PlatformEntryCreate, type PlatformEntryType, type PlatformEntryUpdate, type PlatformResource, type PlatformResourceCreate, type PlatformResourceUpdate, type PlatformWorkspaceMember, type PlatformWorkspaceMemberCreate, type PlatformWorkspaceMemberUpdate, ResourcesModule, type SystemStatistics, ThemeModule, type UnlockUserRequest, type User, type UserCreate, UserModule, type UserPagination, type UserProfile, type UserProfileUpdate, type UserSummary, type UserUpdate, type Webhook, type WebhookCreate, type WebhookMethod, type WebhookPagination, type WebhookUpdate, WebhooksModule, type Workspace, type WorkspaceActivationRequest, type WorkspaceCreate, WorkspaceMembersModule, type WorkspacePreferences, type WorkspacePreferencesUpdate, type WorkspaceUpdate, type WorkspaceWithMembership, WorkspacesModule, createPlatformClient };
4444
+ export { APIClientsModule, type AdminAboutInfo, AdminMaintenanceModule, AdminSystemModule, AdminUsersModule, type ApiToken, type ApiTokenCreate, type ApiTokenWithToken, type AppTheme, AssetsModule, AuthModule, type AuthToken, CollectionsModule, type EmailInvitationRequest, type EmailSettings, type EmailTemplateCreate, type EmailTemplateRead, type EmailTemplateSummary, type EmailTemplateUpdate, EmailTemplatesClient, EntriesModule, EntryTypesModule, type EventLogEntry, EventLogModule, type EventLogQueryParams, type EventLogSummary, type EventOption, EventsModule, FormsModule, type InviteTokenCreate, type InviteTokenPagination, type InviteTokenSummary, InvitesModule, type MaintenanceStorageDetails, type MaintenanceSummary, type Notification, type NotificationCreate, type NotificationUpdate, NotificationsModule, type PasswordChange, type PasswordResetTokenRequest, type PasswordResetTokenResponse, type PlatformAPIClient, type PlatformAPIClientCreate, type PlatformAPIClientUpdate, type PlatformAPIClientWithToken, type PlatformAsset, type PlatformAssetUpdate, PlatformClient, type PlatformClientConfig, type PlatformCollection, type PlatformCollectionCreate, type PlatformCollectionUpdate, type PlatformEntry, type PlatformEntryCreate, type PlatformEntryType, type PlatformEntryUpdate, type PlatformForm, type PlatformFormCreate, type PlatformFormSubmission, type PlatformFormUpdate, type PlatformResource, type PlatformResourceCreate, type PlatformResourceUpdate, type PlatformWorkspaceMember, type PlatformWorkspaceMemberCreate, type PlatformWorkspaceMemberUpdate, ResourcesModule, type ScheduledTask, type ScheduledTaskCreate, type ScheduledTaskExecutionLog, type ScheduledTaskUpdate, ScheduledTasksModule, type SystemStatistics, type TaskTypeInfo, type TestEmailRequest, type TestEmailResponse, ThemeModule, type UnlockUserRequest, type User, type UserCreate, UserModule, type UserPagination, type UserProfile, type UserProfileUpdate, type UserSummary, type UserUpdate, type Webhook, type WebhookCreate, type WebhookMethod, type WebhookPagination, type WebhookUpdate, WebhooksModule, type Workspace, type WorkspaceActivationRequest, type WorkspaceCreate, WorkspaceMembersModule, type WorkspacePreferences, type WorkspacePreferencesUpdate, type WorkspaceUpdate, type WorkspaceWithMembership, WorkspacesModule, createPlatformClient };