@epilot/entity-client 7.2.1 → 7.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/openapi.d.ts CHANGED
@@ -20,6 +20,7 @@ declare namespace Components {
20
20
  * 01F130Q52Q6MWSNS8N2AVXV4JN
21
21
  */
22
22
  Schemas.ActivityId /* ulid ^01[0-9a-zA-Z]{24}$ */ | ("" | null);
23
+ export type AnonymizeQueryParam = boolean;
23
24
  export type ApplyChangesetsQueryParam = boolean;
24
25
  export type AsyncOperationQueryParam = boolean;
25
26
  export type DirectQueryParam = boolean;
@@ -77,6 +78,7 @@ declare namespace Components {
77
78
  ActivityIdPathParam?: Parameters.ActivityIdPathParam;
78
79
  }
79
80
  export interface QueryParameters {
81
+ AnonymizeQueryParam?: Parameters.AnonymizeQueryParam;
80
82
  TaxonomySlugQueryParam?: Parameters.TaxonomySlugQueryParam;
81
83
  TaxonomySlugQueryParamOptional?: Parameters.TaxonomySlugQueryParamOptional;
82
84
  AsyncOperationQueryParam?: Parameters.AsyncOperationQueryParam;
@@ -390,6 +392,13 @@ declare namespace Components {
390
392
  required?: boolean;
391
393
  readonly?: boolean;
392
394
  deprecated?: boolean;
395
+ /**
396
+ * Allow conditional variants of the entity to override this attribute's value.
397
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
398
+ * fixed on the base entity.
399
+ *
400
+ */
401
+ variant_overridable?: boolean;
393
402
  default_value?: any;
394
403
  /**
395
404
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -423,6 +432,16 @@ declare namespace Components {
423
432
  *
424
433
  */
425
434
  render_condition?: string;
435
+ /**
436
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
437
+ *
438
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
439
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
440
+ *
441
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
442
+ *
443
+ */
444
+ data_classification?: "public" | "pii";
426
445
  _purpose?: /**
427
446
  * example:
428
447
  * taxonomy-slug:classification-slug
@@ -516,10 +535,8 @@ declare namespace Components {
516
535
  repeatable?: boolean;
517
536
  has_primary?: boolean;
518
537
  /**
519
- * Controls how updates to this attribute are handled.
520
- * - `direct` (default): update is applied immediately. No changeset created.
521
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
522
- * - `approval`: update creates a changeset, requires explicit human approval.
538
+ * Controls how updates to this attribute are handled. See the `EditMode`
539
+ * schema for the per-mode semantics. Defaults to `direct`.
523
540
  *
524
541
  */
525
542
  edit_mode?: "direct" | "external" | "approval";
@@ -610,6 +627,13 @@ declare namespace Components {
610
627
  required?: boolean;
611
628
  readonly?: boolean;
612
629
  deprecated?: boolean;
630
+ /**
631
+ * Allow conditional variants of the entity to override this attribute's value.
632
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
633
+ * fixed on the base entity.
634
+ *
635
+ */
636
+ variant_overridable?: boolean;
613
637
  default_value?: any;
614
638
  /**
615
639
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -643,6 +667,16 @@ declare namespace Components {
643
667
  *
644
668
  */
645
669
  render_condition?: string;
670
+ /**
671
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
672
+ *
673
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
674
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
675
+ *
676
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
677
+ *
678
+ */
679
+ data_classification?: "public" | "pii";
646
680
  _purpose?: /**
647
681
  * example:
648
682
  * taxonomy-slug:classification-slug
@@ -736,10 +770,8 @@ declare namespace Components {
736
770
  repeatable?: boolean;
737
771
  has_primary?: boolean;
738
772
  /**
739
- * Controls how updates to this attribute are handled.
740
- * - `direct` (default): update is applied immediately. No changeset created.
741
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
742
- * - `approval`: update creates a changeset, requires explicit human approval.
773
+ * Controls how updates to this attribute are handled. See the `EditMode`
774
+ * schema for the per-mode semantics. Defaults to `direct`.
743
775
  *
744
776
  */
745
777
  edit_mode?: "direct" | "external" | "approval";
@@ -802,6 +834,19 @@ declare namespace Components {
802
834
  */
803
835
  DefaultAddressFields;
804
836
  }
837
+ /**
838
+ * Configuration for adjusting a contract installment through a Journey.
839
+ * example:
840
+ * {
841
+ * "journey_id": "adjust-installment-flow"
842
+ * }
843
+ */
844
+ export interface AdjustInstallmentCapabilityConfig {
845
+ /**
846
+ * ID of the Flow Journey to open when adjusting the installment.
847
+ */
848
+ journey_id: string;
849
+ }
805
850
  export type Attribute = /* Textarea or text input */ TextAttribute | /* Link with title and href */ LinkAttribute | /* Date or Datetime picker */ DateAttribute | /* Country picker */ CountryAttribute | /* Yes / No Toggle */ BooleanAttribute | /* Dropdown select */ SelectAttribute | /* Multi Choice Selection */ MultiSelectAttribute | /* Status select */ StatusAttribute | /* Sequence of unique identifiers */ SequenceAttribute | /* Entity Relationship */ RelationAttribute | /* User Relationship */ UserRelationAttribute | /* Address attribute */ AddressAttribute | /* Reference to an address attribute of another entity */ AddressRelationAttribute | /* Reference to a payment method attribute of another entity */ PaymentMethodRelationAttribute | /* Currency input */ CurrencyAttribute | /* Tags */ TagsAttribute | /* Message emil address */ MessageEmailAddressAttribute | /* Numeric input */ NumberAttribute | /* Dynamic data table with configurable columns. Data is stored as an array of objects where each object represents a row. */ TableAttribute | /* Consent Management */ ConsentAttribute | /* No UI representation */ InternalAttribute | /* Type of attribute to render N number of ordered fields */ OrderedListAttribute | /* File or Image Attachment */ FileAttribute | /* An attribute that is computed from the entity data. For more details on how to use them, check the docs [here](https://e-pilot.atlassian.net/wiki/spaces/EO/pages/5642977476/How+To+Computed+Schema+Attributes) */ ComputedAttribute | /* Partner Status */ PartnerStatusAttribute | /* Email address for send invitation */ InvitationEmailAttribute | /* Automation entity */ AutomationAttribute | /* Epilot internal user info */ InternalUserAttribute | /* Entity Taxonomy */ PurposeAttribute | /* Shared Partner Organisations */ PartnerOrganisationAttribute | /* Portal access configuration */ PortalAccessAttribute | /* Phone number */ PhoneAttribute | /* Email address */ EmailAttribute | /* Payment method */ PaymentAttribute | /* Price component */ PriceComponentAttribute;
806
851
  /**
807
852
  * a readonly computed ID for the attribute including schema slug and the attribute ID
@@ -847,6 +892,13 @@ declare namespace Components {
847
892
  required?: boolean;
848
893
  readonly?: boolean;
849
894
  deprecated?: boolean;
895
+ /**
896
+ * Allow conditional variants of the entity to override this attribute's value.
897
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
898
+ * fixed on the base entity.
899
+ *
900
+ */
901
+ variant_overridable?: boolean;
850
902
  default_value?: any;
851
903
  /**
852
904
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -880,6 +932,16 @@ declare namespace Components {
880
932
  *
881
933
  */
882
934
  render_condition?: string;
935
+ /**
936
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
937
+ *
938
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
939
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
940
+ *
941
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
942
+ *
943
+ */
944
+ data_classification?: "public" | "pii";
883
945
  _purpose?: /**
884
946
  * example:
885
947
  * taxonomy-slug:classification-slug
@@ -973,10 +1035,8 @@ declare namespace Components {
973
1035
  repeatable?: boolean;
974
1036
  has_primary?: boolean;
975
1037
  /**
976
- * Controls how updates to this attribute are handled.
977
- * - `direct` (default): update is applied immediately. No changeset created.
978
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
979
- * - `approval`: update creates a changeset, requires explicit human approval.
1038
+ * Controls how updates to this attribute are handled. See the `EditMode`
1039
+ * schema for the per-mode semantics. Defaults to `direct`.
980
1040
  *
981
1041
  */
982
1042
  edit_mode?: "direct" | "external" | "approval";
@@ -1099,6 +1159,13 @@ declare namespace Components {
1099
1159
  required?: boolean;
1100
1160
  readonly?: boolean;
1101
1161
  deprecated?: boolean;
1162
+ /**
1163
+ * Allow conditional variants of the entity to override this attribute's value.
1164
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
1165
+ * fixed on the base entity.
1166
+ *
1167
+ */
1168
+ variant_overridable?: boolean;
1102
1169
  default_value?: any;
1103
1170
  /**
1104
1171
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -1132,6 +1199,16 @@ declare namespace Components {
1132
1199
  *
1133
1200
  */
1134
1201
  render_condition?: string;
1202
+ /**
1203
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
1204
+ *
1205
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
1206
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
1207
+ *
1208
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
1209
+ *
1210
+ */
1211
+ data_classification?: "public" | "pii";
1135
1212
  _purpose?: /**
1136
1213
  * example:
1137
1214
  * taxonomy-slug:classification-slug
@@ -1225,10 +1302,8 @@ declare namespace Components {
1225
1302
  repeatable?: boolean;
1226
1303
  has_primary?: boolean;
1227
1304
  /**
1228
- * Controls how updates to this attribute are handled.
1229
- * - `direct` (default): update is applied immediately. No changeset created.
1230
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
1231
- * - `approval`: update creates a changeset, requires explicit human approval.
1305
+ * Controls how updates to this attribute are handled. See the `EditMode`
1306
+ * schema for the per-mode semantics. Defaults to `direct`.
1232
1307
  *
1233
1308
  */
1234
1309
  edit_mode?: "direct" | "external" | "approval";
@@ -1264,6 +1339,31 @@ declare namespace Components {
1264
1339
  FuzzyConfig;
1265
1340
  };
1266
1341
  }
1342
+ export interface BaseConditionDefinition {
1343
+ /**
1344
+ * Stable identity of the condition, generated by the client when the condition is
1345
+ * created. It is what makes a rename distinguishable from a remove + add, so it must
1346
+ * be round-tripped unchanged for the lifetime of the condition.
1347
+ *
1348
+ * example:
1349
+ * d5839b94-ba20-4225-a78e-76951d352bd6
1350
+ */
1351
+ id: string; // uuid
1352
+ /**
1353
+ * The key variant values are stored under. Unique within the schema and immutable
1354
+ * once the condition has been saved.
1355
+ *
1356
+ * example:
1357
+ * delivery_area
1358
+ */
1359
+ name: string; // ^[a-z0-9_]+$
1360
+ /**
1361
+ * Display label. Always editable.
1362
+ * example:
1363
+ * Delivery Area
1364
+ */
1365
+ label: string;
1366
+ }
1267
1367
  /**
1268
1368
  * example:
1269
1369
  * {
@@ -1347,8 +1447,12 @@ declare namespace Components {
1347
1447
  _manifest?: string /* uuid */[] | null;
1348
1448
  /**
1349
1449
  * Pending attribute changesets for attributes configured with external or approval edit mode.
1350
- * Read-only via normal entity PATCH/PUT operations — cannot be set directly.
1351
- * Use the changeset management endpoints to apply or dismiss changesets.
1450
+ *
1451
+ * The value shape is `Changeset` (`proposed_value`, `created_at`, `edit_mode`, ...)
1452
+ * and is what `:apply` / `:dismiss` operate on.
1453
+ *
1454
+ * Read-only via normal entity PATCH/PUT operations — those handlers strip `_changesets`
1455
+ * from request bodies. Use the changeset management endpoints to mutate this field.
1352
1456
  *
1353
1457
  */
1354
1458
  _changesets?: {
@@ -1387,6 +1491,13 @@ declare namespace Components {
1387
1491
  required?: boolean;
1388
1492
  readonly?: boolean;
1389
1493
  deprecated?: boolean;
1494
+ /**
1495
+ * Allow conditional variants of the entity to override this attribute's value.
1496
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
1497
+ * fixed on the base entity.
1498
+ *
1499
+ */
1500
+ variant_overridable?: boolean;
1390
1501
  default_value?: any;
1391
1502
  /**
1392
1503
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -1420,6 +1531,16 @@ declare namespace Components {
1420
1531
  *
1421
1532
  */
1422
1533
  render_condition?: string;
1534
+ /**
1535
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
1536
+ *
1537
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
1538
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
1539
+ *
1540
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
1541
+ *
1542
+ */
1543
+ data_classification?: "public" | "pii";
1423
1544
  _purpose?: /**
1424
1545
  * example:
1425
1546
  * taxonomy-slug:classification-slug
@@ -1513,10 +1634,8 @@ declare namespace Components {
1513
1634
  repeatable?: boolean;
1514
1635
  has_primary?: boolean;
1515
1636
  /**
1516
- * Controls how updates to this attribute are handled.
1517
- * - `direct` (default): update is applied immediately. No changeset created.
1518
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
1519
- * - `approval`: update creates a changeset, requires explicit human approval.
1637
+ * Controls how updates to this attribute are handled. See the `EditMode`
1638
+ * schema for the per-mode semantics. Defaults to `direct`.
1520
1639
  *
1521
1640
  */
1522
1641
  edit_mode?: "direct" | "external" | "approval";
@@ -1684,6 +1803,13 @@ declare namespace Components {
1684
1803
  required?: boolean;
1685
1804
  readonly?: boolean;
1686
1805
  deprecated?: boolean;
1806
+ /**
1807
+ * Allow conditional variants of the entity to override this attribute's value.
1808
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
1809
+ * fixed on the base entity.
1810
+ *
1811
+ */
1812
+ variant_overridable?: boolean;
1687
1813
  default_value?: any;
1688
1814
  /**
1689
1815
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -1717,6 +1843,16 @@ declare namespace Components {
1717
1843
  *
1718
1844
  */
1719
1845
  render_condition?: string;
1846
+ /**
1847
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
1848
+ *
1849
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
1850
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
1851
+ *
1852
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
1853
+ *
1854
+ */
1855
+ data_classification?: "public" | "pii";
1720
1856
  _purpose?: /**
1721
1857
  * example:
1722
1858
  * taxonomy-slug:classification-slug
@@ -1820,10 +1956,8 @@ declare namespace Components {
1820
1956
  repeatable?: boolean;
1821
1957
  has_primary?: boolean;
1822
1958
  /**
1823
- * Controls how updates to this attribute are handled.
1824
- * - `direct` (default): update is applied immediately. No changeset created.
1825
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
1826
- * - `approval`: update creates a changeset, requires explicit human approval.
1959
+ * Controls how updates to this attribute are handled. See the `EditMode`
1960
+ * schema for the per-mode semantics. Defaults to `direct`.
1827
1961
  *
1828
1962
  */
1829
1963
  edit_mode?: "direct" | "external" | "approval";
@@ -1869,6 +2003,19 @@ declare namespace Components {
1869
2003
  */
1870
2004
  currency_field?: string;
1871
2005
  }
2006
+ /**
2007
+ * One dimension that conditional variants of an entity type are keyed by. `type`
2008
+ * discriminates the variants: only a `select` condition carries `values`, and only a
2009
+ * `location` condition carries `format`.
2010
+ *
2011
+ */
2012
+ export type ConditionDefinition = /**
2013
+ * One dimension that conditional variants of an entity type are keyed by. `type`
2014
+ * discriminates the variants: only a `select` condition carries `values`, and only a
2015
+ * `location` condition carries `format`.
2016
+ *
2017
+ */
2018
+ /* A condition whose value is a plain scalar, with no further configuration. */ ScalarConditionDefinition | /* A condition whose value is one of a fixed set of options. */ SelectConditionDefinition | /* A condition whose value identifies a place. */ LocationConditionDefinition;
1872
2019
  /**
1873
2020
  * Consent Management
1874
2021
  */
@@ -1897,6 +2044,13 @@ declare namespace Components {
1897
2044
  required?: boolean;
1898
2045
  readonly?: boolean;
1899
2046
  deprecated?: boolean;
2047
+ /**
2048
+ * Allow conditional variants of the entity to override this attribute's value.
2049
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
2050
+ * fixed on the base entity.
2051
+ *
2052
+ */
2053
+ variant_overridable?: boolean;
1900
2054
  default_value?: any;
1901
2055
  /**
1902
2056
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -1930,6 +2084,16 @@ declare namespace Components {
1930
2084
  *
1931
2085
  */
1932
2086
  render_condition?: string;
2087
+ /**
2088
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
2089
+ *
2090
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
2091
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
2092
+ *
2093
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
2094
+ *
2095
+ */
2096
+ data_classification?: "public" | "pii";
1933
2097
  _purpose?: /**
1934
2098
  * example:
1935
2099
  * taxonomy-slug:classification-slug
@@ -2023,10 +2187,8 @@ declare namespace Components {
2023
2187
  repeatable?: boolean;
2024
2188
  has_primary?: boolean;
2025
2189
  /**
2026
- * Controls how updates to this attribute are handled.
2027
- * - `direct` (default): update is applied immediately. No changeset created.
2028
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
2029
- * - `approval`: update creates a changeset, requires explicit human approval.
2190
+ * Controls how updates to this attribute are handled. See the `EditMode`
2191
+ * schema for the per-mode semantics. Defaults to `direct`.
2030
2192
  *
2031
2193
  */
2032
2194
  edit_mode?: "direct" | "external" | "approval";
@@ -2093,6 +2255,13 @@ declare namespace Components {
2093
2255
  required?: boolean;
2094
2256
  readonly?: boolean;
2095
2257
  deprecated?: boolean;
2258
+ /**
2259
+ * Allow conditional variants of the entity to override this attribute's value.
2260
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
2261
+ * fixed on the base entity.
2262
+ *
2263
+ */
2264
+ variant_overridable?: boolean;
2096
2265
  default_value?: any;
2097
2266
  /**
2098
2267
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -2126,6 +2295,16 @@ declare namespace Components {
2126
2295
  *
2127
2296
  */
2128
2297
  render_condition?: string;
2298
+ /**
2299
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
2300
+ *
2301
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
2302
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
2303
+ *
2304
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
2305
+ *
2306
+ */
2307
+ data_classification?: "public" | "pii";
2129
2308
  _purpose?: /**
2130
2309
  * example:
2131
2310
  * taxonomy-slug:classification-slug
@@ -2219,10 +2398,8 @@ declare namespace Components {
2219
2398
  repeatable?: boolean;
2220
2399
  has_primary?: boolean;
2221
2400
  /**
2222
- * Controls how updates to this attribute are handled.
2223
- * - `direct` (default): update is applied immediately. No changeset created.
2224
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
2225
- * - `approval`: update creates a changeset, requires explicit human approval.
2401
+ * Controls how updates to this attribute are handled. See the `EditMode`
2402
+ * schema for the per-mode semantics. Defaults to `direct`.
2226
2403
  *
2227
2404
  */
2228
2405
  edit_mode?: "direct" | "external" | "approval";
@@ -2287,6 +2464,13 @@ declare namespace Components {
2287
2464
  required?: boolean;
2288
2465
  readonly?: boolean;
2289
2466
  deprecated?: boolean;
2467
+ /**
2468
+ * Allow conditional variants of the entity to override this attribute's value.
2469
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
2470
+ * fixed on the base entity.
2471
+ *
2472
+ */
2473
+ variant_overridable?: boolean;
2290
2474
  default_value?: any;
2291
2475
  /**
2292
2476
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -2320,6 +2504,16 @@ declare namespace Components {
2320
2504
  *
2321
2505
  */
2322
2506
  render_condition?: string;
2507
+ /**
2508
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
2509
+ *
2510
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
2511
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
2512
+ *
2513
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
2514
+ *
2515
+ */
2516
+ data_classification?: "public" | "pii";
2323
2517
  _purpose?: /**
2324
2518
  * example:
2325
2519
  * taxonomy-slug:classification-slug
@@ -2413,10 +2607,8 @@ declare namespace Components {
2413
2607
  repeatable?: boolean;
2414
2608
  has_primary?: boolean;
2415
2609
  /**
2416
- * Controls how updates to this attribute are handled.
2417
- * - `direct` (default): update is applied immediately. No changeset created.
2418
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
2419
- * - `approval`: update creates a changeset, requires explicit human approval.
2610
+ * Controls how updates to this attribute are handled. See the `EditMode`
2611
+ * schema for the per-mode semantics. Defaults to `direct`.
2420
2612
  *
2421
2613
  */
2422
2614
  edit_mode?: "direct" | "external" | "approval";
@@ -2491,6 +2683,13 @@ declare namespace Components {
2491
2683
  required?: boolean;
2492
2684
  readonly?: boolean;
2493
2685
  deprecated?: boolean;
2686
+ /**
2687
+ * Allow conditional variants of the entity to override this attribute's value.
2688
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
2689
+ * fixed on the base entity.
2690
+ *
2691
+ */
2692
+ variant_overridable?: boolean;
2494
2693
  default_value?: any;
2495
2694
  /**
2496
2695
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -2524,6 +2723,16 @@ declare namespace Components {
2524
2723
  *
2525
2724
  */
2526
2725
  render_condition?: string;
2726
+ /**
2727
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
2728
+ *
2729
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
2730
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
2731
+ *
2732
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
2733
+ *
2734
+ */
2735
+ data_classification?: "public" | "pii";
2527
2736
  _purpose?: /**
2528
2737
  * example:
2529
2738
  * taxonomy-slug:classification-slug
@@ -2617,10 +2826,8 @@ declare namespace Components {
2617
2826
  repeatable?: boolean;
2618
2827
  has_primary?: boolean;
2619
2828
  /**
2620
- * Controls how updates to this attribute are handled.
2621
- * - `direct` (default): update is applied immediately. No changeset created.
2622
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
2623
- * - `approval`: update creates a changeset, requires explicit human approval.
2829
+ * Controls how updates to this attribute are handled. See the `EditMode`
2830
+ * schema for the per-mode semantics. Defaults to `direct`.
2624
2831
  *
2625
2832
  */
2626
2833
  edit_mode?: "direct" | "external" | "approval";
@@ -2693,6 +2900,19 @@ declare namespace Components {
2693
2900
  */
2694
2901
  cluster?: string;
2695
2902
  }
2903
+ /**
2904
+ * Controls whether a write goes through immediately or is held as a pending entry
2905
+ * on the parent entity's `_changesets` map.
2906
+ *
2907
+ * - `direct`: write applied immediately. No changeset created.
2908
+ * - `external`: write held as a pending changeset; auto-cleared on a matching direct/ERP write.
2909
+ * - `approval`: write held as a pending changeset; requires explicit human apply/dismiss.
2910
+ *
2911
+ * Used at two levels: per-attribute (entity-attribute changesets) and per-capability
2912
+ * (currently the `meter_readings` capability on the Meter schema, gating reading submissions).
2913
+ *
2914
+ */
2915
+ export type EditMode = "direct" | "external" | "approval";
2696
2916
  /**
2697
2917
  * Configuration for `edit_mode: external` auto-clear matching.
2698
2918
  * Fields here (`match_strategy`, `fuzzy_config`) only take effect when
@@ -2753,6 +2973,13 @@ declare namespace Components {
2753
2973
  required?: boolean;
2754
2974
  readonly?: boolean;
2755
2975
  deprecated?: boolean;
2976
+ /**
2977
+ * Allow conditional variants of the entity to override this attribute's value.
2978
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
2979
+ * fixed on the base entity.
2980
+ *
2981
+ */
2982
+ variant_overridable?: boolean;
2756
2983
  default_value?: any;
2757
2984
  /**
2758
2985
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -2786,6 +3013,16 @@ declare namespace Components {
2786
3013
  *
2787
3014
  */
2788
3015
  render_condition?: string;
3016
+ /**
3017
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
3018
+ *
3019
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
3020
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
3021
+ *
3022
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
3023
+ *
3024
+ */
3025
+ data_classification?: "public" | "pii";
2789
3026
  _purpose?: /**
2790
3027
  * example:
2791
3028
  * taxonomy-slug:classification-slug
@@ -2879,10 +3116,8 @@ declare namespace Components {
2879
3116
  repeatable?: boolean;
2880
3117
  has_primary?: boolean;
2881
3118
  /**
2882
- * Controls how updates to this attribute are handled.
2883
- * - `direct` (default): update is applied immediately. No changeset created.
2884
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
2885
- * - `approval`: update creates a changeset, requires explicit human approval.
3119
+ * Controls how updates to this attribute are handled. See the `EditMode`
3120
+ * schema for the per-mode semantics. Defaults to `direct`.
2886
3121
  *
2887
3122
  */
2888
3123
  edit_mode?: "direct" | "external" | "approval";
@@ -3002,8 +3237,12 @@ declare namespace Components {
3002
3237
  _manifest?: string /* uuid */[] | null;
3003
3238
  /**
3004
3239
  * Pending attribute changesets for attributes configured with external or approval edit mode.
3005
- * Read-only via normal entity PATCH/PUT operations — cannot be set directly.
3006
- * Use the changeset management endpoints to apply or dismiss changesets.
3240
+ *
3241
+ * The value shape is `Changeset` (`proposed_value`, `created_at`, `edit_mode`, ...)
3242
+ * and is what `:apply` / `:dismiss` operate on.
3243
+ *
3244
+ * Read-only via normal entity PATCH/PUT operations — those handlers strip `_changesets`
3245
+ * from request bodies. Use the changeset management endpoints to mutate this field.
3007
3246
  *
3008
3247
  */
3009
3248
  _changesets?: {
@@ -3071,6 +3310,15 @@ declare namespace Components {
3071
3310
  */
3072
3311
  title?: string;
3073
3312
  attributes?: Attribute[];
3313
+ /**
3314
+ * Allow conditional variants of the entity to override the values managed by this
3315
+ * capability. Only meaningful on schemas that declare `conditions` and on capabilities
3316
+ * that render an attribute group (`EntityAttributes:Group` ui hook), e.g. pricing tiers.
3317
+ * Attributes carried by the capability opt in individually via their own
3318
+ * `variant_overridable` flag.
3319
+ *
3320
+ */
3321
+ variant_overridable?: boolean;
3074
3322
  _purpose?: /**
3075
3323
  * example:
3076
3324
  * taxonomy-slug:classification-slug
@@ -3086,6 +3334,14 @@ declare namespace Components {
3086
3334
  * 123e4567-e89b-12d3-a456-426614174000
3087
3335
  */
3088
3336
  app_id?: string;
3337
+ adjust_installment?: /**
3338
+ * Configuration for adjusting a contract installment through a Journey.
3339
+ * example:
3340
+ * {
3341
+ * "journey_id": "adjust-installment-flow"
3342
+ * }
3343
+ */
3344
+ AdjustInstallmentCapabilityConfig;
3089
3345
  ui_config?: {
3090
3346
  /**
3091
3347
  * Whether the capability is filterable
@@ -3169,6 +3425,18 @@ declare namespace Components {
3169
3425
  */
3170
3426
  resource?: string;
3171
3427
  };
3428
+ /**
3429
+ * Whether this widget is switched on by default for entity types that have the capability. Only meaningful on the `EntityDetailsV2:Widget` hook. Defaults to true when omitted. An admin's explicit choice in the entity builder is stored in the schema's `ui_config.widget_visibility` and wins over this.
3430
+ * example:
3431
+ * false
3432
+ */
3433
+ default_visible?: boolean;
3434
+ /**
3435
+ * The pricing-tier settings key an organisation must have enabled to use this widget. Omit for widgets available to everyone. Resolved against `GET /v2/pricing-tiers/me` as `override_settings[key].enabled ?? settings[key].enabled`. Note this is commercial packaging enforced in the UI, not a security control — the key must also be added to the pricing tier settings list in epilot-admin-portal, or it can never be switched on for a tier.
3436
+ * example:
3437
+ * entity_address_maps
3438
+ */
3439
+ pricing_tier_setting?: string;
3172
3440
  }[];
3173
3441
  /**
3174
3442
  * This capability should only be active when the feature flag is enabled
@@ -3216,6 +3484,15 @@ declare namespace Components {
3216
3484
  */
3217
3485
  title?: string;
3218
3486
  attributes?: Attribute[];
3487
+ /**
3488
+ * Allow conditional variants of the entity to override the values managed by this
3489
+ * capability. Only meaningful on schemas that declare `conditions` and on capabilities
3490
+ * that render an attribute group (`EntityAttributes:Group` ui hook), e.g. pricing tiers.
3491
+ * Attributes carried by the capability opt in individually via their own
3492
+ * `variant_overridable` flag.
3493
+ *
3494
+ */
3495
+ variant_overridable?: boolean;
3219
3496
  _purpose?: /**
3220
3497
  * example:
3221
3498
  * taxonomy-slug:classification-slug
@@ -3231,6 +3508,14 @@ declare namespace Components {
3231
3508
  * 123e4567-e89b-12d3-a456-426614174000
3232
3509
  */
3233
3510
  app_id?: string;
3511
+ adjust_installment?: /**
3512
+ * Configuration for adjusting a contract installment through a Journey.
3513
+ * example:
3514
+ * {
3515
+ * "journey_id": "adjust-installment-flow"
3516
+ * }
3517
+ */
3518
+ AdjustInstallmentCapabilityConfig;
3234
3519
  ui_config?: {
3235
3520
  /**
3236
3521
  * Whether the capability is filterable
@@ -3314,6 +3599,18 @@ declare namespace Components {
3314
3599
  */
3315
3600
  resource?: string;
3316
3601
  };
3602
+ /**
3603
+ * Whether this widget is switched on by default for entity types that have the capability. Only meaningful on the `EntityDetailsV2:Widget` hook. Defaults to true when omitted. An admin's explicit choice in the entity builder is stored in the schema's `ui_config.widget_visibility` and wins over this.
3604
+ * example:
3605
+ * false
3606
+ */
3607
+ default_visible?: boolean;
3608
+ /**
3609
+ * The pricing-tier settings key an organisation must have enabled to use this widget. Omit for widgets available to everyone. Resolved against `GET /v2/pricing-tiers/me` as `override_settings[key].enabled ?? settings[key].enabled`. Note this is commercial packaging enforced in the UI, not a security control — the key must also be added to the pricing tier settings list in epilot-admin-portal, or it can never be switched on for a tier.
3610
+ * example:
3611
+ * entity_address_maps
3612
+ */
3613
+ pricing_tier_setting?: string;
3317
3614
  }[];
3318
3615
  /**
3319
3616
  * This capability should only be active when the feature flag is enabled
@@ -3506,8 +3803,12 @@ declare namespace Components {
3506
3803
  _manifest?: string /* uuid */[] | null;
3507
3804
  /**
3508
3805
  * Pending attribute changesets for attributes configured with external or approval edit mode.
3509
- * Read-only via normal entity PATCH/PUT operations — cannot be set directly.
3510
- * Use the changeset management endpoints to apply or dismiss changesets.
3806
+ *
3807
+ * The value shape is `Changeset` (`proposed_value`, `created_at`, `edit_mode`, ...)
3808
+ * and is what `:apply` / `:dismiss` operate on.
3809
+ *
3810
+ * Read-only via normal entity PATCH/PUT operations — those handlers strip `_changesets`
3811
+ * from request bodies. Use the changeset management endpoints to mutate this field.
3511
3812
  *
3512
3813
  */
3513
3814
  _changesets?: {
@@ -3590,6 +3891,13 @@ declare namespace Components {
3590
3891
  * When true, enables entity hydration to resolve nested $relation & $relation_ref references in-place.
3591
3892
  */
3592
3893
  hydrate?: boolean;
3894
+ /**
3895
+ * When true, anonymizes PII in the response: identifiers are replaced with deterministic pseudonyms,
3896
+ * addresses are generalized and well-known free-text fields are redacted.
3897
+ * Anonymization is forced (regardless of this parameter) when the access token was created with `anonymize: true`.
3898
+ *
3899
+ */
3900
+ anonymize?: boolean;
3593
3901
  fields?: /**
3594
3902
  * List of entity fields to include or exclude in the response
3595
3903
  *
@@ -3797,8 +4105,12 @@ declare namespace Components {
3797
4105
  _manifest?: string /* uuid */[] | null;
3798
4106
  /**
3799
4107
  * Pending attribute changesets for attributes configured with external or approval edit mode.
3800
- * Read-only via normal entity PATCH/PUT operations — cannot be set directly.
3801
- * Use the changeset management endpoints to apply or dismiss changesets.
4108
+ *
4109
+ * The value shape is `Changeset` (`proposed_value`, `created_at`, `edit_mode`, ...)
4110
+ * and is what `:apply` / `:dismiss` operate on.
4111
+ *
4112
+ * Read-only via normal entity PATCH/PUT operations — those handlers strip `_changesets`
4113
+ * from request bodies. Use the changeset management endpoints to mutate this field.
3802
4114
  *
3803
4115
  */
3804
4116
  _changesets?: {
@@ -3890,8 +4202,12 @@ declare namespace Components {
3890
4202
  _manifest?: string /* uuid */[] | null;
3891
4203
  /**
3892
4204
  * Pending attribute changesets for attributes configured with external or approval edit mode.
3893
- * Read-only via normal entity PATCH/PUT operations — cannot be set directly.
3894
- * Use the changeset management endpoints to apply or dismiss changesets.
4205
+ *
4206
+ * The value shape is `Changeset` (`proposed_value`, `created_at`, `edit_mode`, ...)
4207
+ * and is what `:apply` / `:dismiss` operate on.
4208
+ *
4209
+ * Read-only via normal entity PATCH/PUT operations — those handlers strip `_changesets`
4210
+ * from request bodies. Use the changeset management endpoints to mutate this field.
3895
4211
  *
3896
4212
  */
3897
4213
  _changesets?: {
@@ -3982,8 +4298,12 @@ declare namespace Components {
3982
4298
  _manifest?: string /* uuid */[] | null;
3983
4299
  /**
3984
4300
  * Pending attribute changesets for attributes configured with external or approval edit mode.
3985
- * Read-only via normal entity PATCH/PUT operations — cannot be set directly.
3986
- * Use the changeset management endpoints to apply or dismiss changesets.
4301
+ *
4302
+ * The value shape is `Changeset` (`proposed_value`, `created_at`, `edit_mode`, ...)
4303
+ * and is what `:apply` / `:dismiss` operate on.
4304
+ *
4305
+ * Read-only via normal entity PATCH/PUT operations — those handlers strip `_changesets`
4306
+ * from request bodies. Use the changeset management endpoints to mutate this field.
3987
4307
  *
3988
4308
  */
3989
4309
  _changesets?: {
@@ -4074,8 +4394,12 @@ declare namespace Components {
4074
4394
  _manifest?: string /* uuid */[] | null;
4075
4395
  /**
4076
4396
  * Pending attribute changesets for attributes configured with external or approval edit mode.
4077
- * Read-only via normal entity PATCH/PUT operations — cannot be set directly.
4078
- * Use the changeset management endpoints to apply or dismiss changesets.
4397
+ *
4398
+ * The value shape is `Changeset` (`proposed_value`, `created_at`, `edit_mode`, ...)
4399
+ * and is what `:apply` / `:dismiss` operate on.
4400
+ *
4401
+ * Read-only via normal entity PATCH/PUT operations — those handlers strip `_changesets`
4402
+ * from request bodies. Use the changeset management endpoints to mutate this field.
4079
4403
  *
4080
4404
  */
4081
4405
  _changesets?: {
@@ -4083,6 +4407,7 @@ declare namespace Components {
4083
4407
  } | null;
4084
4408
  };
4085
4409
  };
4410
+ source_context?: /* Billing and audit source context for the operation event. */ EntityOperationSourceContext;
4086
4411
  /**
4087
4412
  * Internal property for workflow origin tracking and infinite loop prevention.
4088
4413
  * Populated when an entity update originates from a workflow execution.
@@ -4099,6 +4424,34 @@ declare namespace Components {
4099
4424
  */
4100
4425
  flow_template_id?: string;
4101
4426
  };
4427
+ /**
4428
+ * Ordered automation flow ids that caused this change; used to break multi-automation trigger loops.
4429
+ */
4430
+ _automation_chain?: string[];
4431
+ }
4432
+ /**
4433
+ * Billing and audit source context for the operation event.
4434
+ */
4435
+ export interface EntityOperationSourceContext {
4436
+ /**
4437
+ * Normalized source bucket for the operation.
4438
+ */
4439
+ source: "portal" | "epilot" | "erp" | "system" | "api" | "external" | "journey" | "automation" | "unknown";
4440
+ /**
4441
+ * Original free-form source label from the caller or changeset, when available.
4442
+ */
4443
+ source_label?: string;
4444
+ /**
4445
+ * Optional upstream system label, for example an ERP system name.
4446
+ */
4447
+ source_system?: string;
4448
+ /**
4449
+ * Optional upstream change reference.
4450
+ */
4451
+ source_reference?: string;
4452
+ actor_type?: "user" | "portal_user" | "api_client" | "automation" | "system";
4453
+ actor_id?: string;
4454
+ effective_at?: string; // date-time
4102
4455
  }
4103
4456
  /**
4104
4457
  * The user / organization owning this entity.
@@ -4252,6 +4605,38 @@ declare namespace Components {
4252
4605
  */
4253
4606
  show_sharing_button?: boolean;
4254
4607
  };
4608
+ /**
4609
+ * Widget-grid layout for the entity-details page (builder-authored); columns/cells drive the grid geometry.
4610
+ */
4611
+ grid_layout?: {
4612
+ /**
4613
+ * Identifier of the chosen grid-layout preset.
4614
+ */
4615
+ id?: string;
4616
+ /**
4617
+ * Number of columns in the widget grid.
4618
+ */
4619
+ columns?: number;
4620
+ /**
4621
+ * Per-cell column span, positionally paired with the widgets in order.
4622
+ */
4623
+ cells?: number[];
4624
+ };
4625
+ /**
4626
+ * Ordered list of widget ids controlling the entity-details widget-grid order. Each id is a capability widget's `component` (or `summary` for the synthesized summary card); widgets absent from the list keep their natural order at the end.
4627
+ */
4628
+ widget_order?: string[];
4629
+ /**
4630
+ * Per-widget on/off state for the entity-details widget grid, keyed by widget id (a capability widget's `component`, or `summary` for the synthesized summary card). Holds only the admin's deviations from each widget's declared default: a widget absent from this map falls back to its ui_hook `default_visible`, and then to visible. Do not seed this map from migrations — doing so would freeze today's defaults into the schema.
4631
+ * example:
4632
+ * {
4633
+ * "next_best_action": true,
4634
+ * "address_map": false
4635
+ * }
4636
+ */
4637
+ widget_visibility?: {
4638
+ [name: string]: boolean;
4639
+ };
4255
4640
  };
4256
4641
  capabilities: /* Capabilities the Entity has. Turn features on/off for entities. */ EntityCapability[];
4257
4642
  /**
@@ -4363,6 +4748,20 @@ declare namespace Components {
4363
4748
  */
4364
4749
  SearchMappings;
4365
4750
  group_headlines?: GroupHeadline[];
4751
+ /**
4752
+ * Dimensions that conditional variants of this entity type are keyed by.
4753
+ *
4754
+ * Absent or `null` means entities of this type are not conditional. Attributes whose
4755
+ * values a variant may override are marked with `variant_overridable`.
4756
+ *
4757
+ */
4758
+ conditions?: /**
4759
+ * One dimension that conditional variants of an entity type are keyed by. `type`
4760
+ * discriminates the variants: only a `select` condition carries `values`, and only a
4761
+ * `location` condition carries `format`.
4762
+ *
4763
+ */
4764
+ ConditionDefinition[] | null;
4366
4765
  }
4367
4766
  export interface EntitySchemaGroup {
4368
4767
  /**
@@ -4648,6 +5047,38 @@ declare namespace Components {
4648
5047
  */
4649
5048
  show_sharing_button?: boolean;
4650
5049
  };
5050
+ /**
5051
+ * Widget-grid layout for the entity-details page (builder-authored); columns/cells drive the grid geometry.
5052
+ */
5053
+ grid_layout?: {
5054
+ /**
5055
+ * Identifier of the chosen grid-layout preset.
5056
+ */
5057
+ id?: string;
5058
+ /**
5059
+ * Number of columns in the widget grid.
5060
+ */
5061
+ columns?: number;
5062
+ /**
5063
+ * Per-cell column span, positionally paired with the widgets in order.
5064
+ */
5065
+ cells?: number[];
5066
+ };
5067
+ /**
5068
+ * Ordered list of widget ids controlling the entity-details widget-grid order. Each id is a capability widget's `component` (or `summary` for the synthesized summary card); widgets absent from the list keep their natural order at the end.
5069
+ */
5070
+ widget_order?: string[];
5071
+ /**
5072
+ * Per-widget on/off state for the entity-details widget grid, keyed by widget id (a capability widget's `component`, or `summary` for the synthesized summary card). Holds only the admin's deviations from each widget's declared default: a widget absent from this map falls back to its ui_hook `default_visible`, and then to visible. Do not seed this map from migrations — doing so would freeze today's defaults into the schema.
5073
+ * example:
5074
+ * {
5075
+ * "next_best_action": true,
5076
+ * "address_map": false
5077
+ * }
5078
+ */
5079
+ widget_visibility?: {
5080
+ [name: string]: boolean;
5081
+ };
4651
5082
  };
4652
5083
  capabilities: /* Capabilities the Entity has. Turn features on/off for entities. */ EntityCapability[];
4653
5084
  /**
@@ -4759,6 +5190,20 @@ declare namespace Components {
4759
5190
  */
4760
5191
  SearchMappings;
4761
5192
  group_headlines?: GroupHeadline[];
5193
+ /**
5194
+ * Dimensions that conditional variants of this entity type are keyed by.
5195
+ *
5196
+ * Absent or `null` means entities of this type are not conditional. Attributes whose
5197
+ * values a variant may override are marked with `variant_overridable`.
5198
+ *
5199
+ */
5200
+ conditions?: /**
5201
+ * One dimension that conditional variants of an entity type are keyed by. `type`
5202
+ * discriminates the variants: only a `select` condition carries `values`, and only a
5203
+ * `location` condition carries `format`.
5204
+ *
5205
+ */
5206
+ ConditionDefinition[] | null;
4762
5207
  }
4763
5208
  /**
4764
5209
  * Whether to include deleted entities in the search results
@@ -4789,6 +5234,13 @@ declare namespace Components {
4789
5234
  * When true, enables entity hydration to resolve nested $relation & $relation_ref references in-place.
4790
5235
  */
4791
5236
  hydrate?: boolean;
5237
+ /**
5238
+ * When true, anonymizes PII in the response: identifiers are replaced with deterministic pseudonyms,
5239
+ * addresses are generalized and well-known free-text fields are redacted.
5240
+ * Anonymization is forced (regardless of this parameter) when the access token was created with `anonymize: true`.
5241
+ *
5242
+ */
5243
+ anonymize?: boolean;
4792
5244
  fields?: /**
4793
5245
  * List of entity fields to include or exclude in the response
4794
5246
  *
@@ -4889,6 +5341,13 @@ declare namespace Components {
4889
5341
  * When true, enables entity hydration to resolve nested $relation & $relation_ref references in-place.
4890
5342
  */
4891
5343
  hydrate?: boolean;
5344
+ /**
5345
+ * When true, anonymizes PII in the response: identifiers are replaced with deterministic pseudonyms,
5346
+ * addresses are generalized and well-known free-text fields are redacted.
5347
+ * Anonymization is forced (regardless of this parameter) when the access token was created with `anonymize: true`.
5348
+ *
5349
+ */
5350
+ anonymize?: boolean;
4892
5351
  fields?: /**
4893
5352
  * List of entity fields to include or exclude in the response
4894
5353
  *
@@ -5289,6 +5748,13 @@ declare namespace Components {
5289
5748
  required?: boolean;
5290
5749
  readonly?: boolean;
5291
5750
  deprecated?: boolean;
5751
+ /**
5752
+ * Allow conditional variants of the entity to override this attribute's value.
5753
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
5754
+ * fixed on the base entity.
5755
+ *
5756
+ */
5757
+ variant_overridable?: boolean;
5292
5758
  default_value?: any;
5293
5759
  /**
5294
5760
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -5322,6 +5788,16 @@ declare namespace Components {
5322
5788
  *
5323
5789
  */
5324
5790
  render_condition?: string;
5791
+ /**
5792
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
5793
+ *
5794
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
5795
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
5796
+ *
5797
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
5798
+ *
5799
+ */
5800
+ data_classification?: "public" | "pii";
5325
5801
  _purpose?: /**
5326
5802
  * example:
5327
5803
  * taxonomy-slug:classification-slug
@@ -5415,10 +5891,8 @@ declare namespace Components {
5415
5891
  repeatable?: boolean;
5416
5892
  has_primary?: boolean;
5417
5893
  /**
5418
- * Controls how updates to this attribute are handled.
5419
- * - `direct` (default): update is applied immediately. No changeset created.
5420
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
5421
- * - `approval`: update creates a changeset, requires explicit human approval.
5894
+ * Controls how updates to this attribute are handled. See the `EditMode`
5895
+ * schema for the per-mode semantics. Defaults to `direct`.
5422
5896
  *
5423
5897
  */
5424
5898
  edit_mode?: "direct" | "external" | "approval";
@@ -6125,8 +6599,12 @@ declare namespace Components {
6125
6599
  _manifest?: string /* uuid */[] | null;
6126
6600
  /**
6127
6601
  * Pending attribute changesets for attributes configured with external or approval edit mode.
6128
- * Read-only via normal entity PATCH/PUT operations — cannot be set directly.
6129
- * Use the changeset management endpoints to apply or dismiss changesets.
6602
+ *
6603
+ * The value shape is `Changeset` (`proposed_value`, `created_at`, `edit_mode`, ...)
6604
+ * and is what `:apply` / `:dismiss` operate on.
6605
+ *
6606
+ * Read-only via normal entity PATCH/PUT operations — those handlers strip `_changesets`
6607
+ * from request bodies. Use the changeset management endpoints to mutate this field.
6130
6608
  *
6131
6609
  */
6132
6610
  _changesets?: {
@@ -6164,6 +6642,13 @@ declare namespace Components {
6164
6642
  required?: boolean;
6165
6643
  readonly?: boolean;
6166
6644
  deprecated?: boolean;
6645
+ /**
6646
+ * Allow conditional variants of the entity to override this attribute's value.
6647
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
6648
+ * fixed on the base entity.
6649
+ *
6650
+ */
6651
+ variant_overridable?: boolean;
6167
6652
  default_value?: any;
6168
6653
  /**
6169
6654
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -6197,6 +6682,16 @@ declare namespace Components {
6197
6682
  *
6198
6683
  */
6199
6684
  render_condition?: string;
6685
+ /**
6686
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
6687
+ *
6688
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
6689
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
6690
+ *
6691
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
6692
+ *
6693
+ */
6694
+ data_classification?: "public" | "pii";
6200
6695
  _purpose?: /**
6201
6696
  * example:
6202
6697
  * taxonomy-slug:classification-slug
@@ -6290,10 +6785,8 @@ declare namespace Components {
6290
6785
  repeatable?: boolean;
6291
6786
  has_primary?: boolean;
6292
6787
  /**
6293
- * Controls how updates to this attribute are handled.
6294
- * - `direct` (default): update is applied immediately. No changeset created.
6295
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
6296
- * - `approval`: update creates a changeset, requires explicit human approval.
6788
+ * Controls how updates to this attribute are handled. See the `EditMode`
6789
+ * schema for the per-mode semantics. Defaults to `direct`.
6297
6790
  *
6298
6791
  */
6299
6792
  edit_mode?: "direct" | "external" | "approval";
@@ -6358,6 +6851,13 @@ declare namespace Components {
6358
6851
  required?: boolean;
6359
6852
  readonly?: boolean;
6360
6853
  deprecated?: boolean;
6854
+ /**
6855
+ * Allow conditional variants of the entity to override this attribute's value.
6856
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
6857
+ * fixed on the base entity.
6858
+ *
6859
+ */
6860
+ variant_overridable?: boolean;
6361
6861
  default_value?: any;
6362
6862
  /**
6363
6863
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -6391,6 +6891,16 @@ declare namespace Components {
6391
6891
  *
6392
6892
  */
6393
6893
  render_condition?: string;
6894
+ /**
6895
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
6896
+ *
6897
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
6898
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
6899
+ *
6900
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
6901
+ *
6902
+ */
6903
+ data_classification?: "public" | "pii";
6394
6904
  _purpose?: /**
6395
6905
  * example:
6396
6906
  * taxonomy-slug:classification-slug
@@ -6484,10 +6994,8 @@ declare namespace Components {
6484
6994
  repeatable?: boolean;
6485
6995
  has_primary?: boolean;
6486
6996
  /**
6487
- * Controls how updates to this attribute are handled.
6488
- * - `direct` (default): update is applied immediately. No changeset created.
6489
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
6490
- * - `approval`: update creates a changeset, requires explicit human approval.
6997
+ * Controls how updates to this attribute are handled. See the `EditMode`
6998
+ * schema for the per-mode semantics. Defaults to `direct`.
6491
6999
  *
6492
7000
  */
6493
7001
  edit_mode?: "direct" | "external" | "approval";
@@ -6552,6 +7060,13 @@ declare namespace Components {
6552
7060
  required?: boolean;
6553
7061
  readonly?: boolean;
6554
7062
  deprecated?: boolean;
7063
+ /**
7064
+ * Allow conditional variants of the entity to override this attribute's value.
7065
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
7066
+ * fixed on the base entity.
7067
+ *
7068
+ */
7069
+ variant_overridable?: boolean;
6555
7070
  default_value?: any;
6556
7071
  /**
6557
7072
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -6585,6 +7100,16 @@ declare namespace Components {
6585
7100
  *
6586
7101
  */
6587
7102
  render_condition?: string;
7103
+ /**
7104
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
7105
+ *
7106
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
7107
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
7108
+ *
7109
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
7110
+ *
7111
+ */
7112
+ data_classification?: "public" | "pii";
6588
7113
  _purpose?: /**
6589
7114
  * example:
6590
7115
  * taxonomy-slug:classification-slug
@@ -6678,10 +7203,8 @@ declare namespace Components {
6678
7203
  repeatable?: boolean;
6679
7204
  has_primary?: boolean;
6680
7205
  /**
6681
- * Controls how updates to this attribute are handled.
6682
- * - `direct` (default): update is applied immediately. No changeset created.
6683
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
6684
- * - `approval`: update creates a changeset, requires explicit human approval.
7206
+ * Controls how updates to this attribute are handled. See the `EditMode`
7207
+ * schema for the per-mode semantics. Defaults to `direct`.
6685
7208
  *
6686
7209
  */
6687
7210
  edit_mode?: "direct" | "external" | "approval";
@@ -6754,6 +7277,13 @@ declare namespace Components {
6754
7277
  required?: boolean;
6755
7278
  readonly?: boolean;
6756
7279
  deprecated?: boolean;
7280
+ /**
7281
+ * Allow conditional variants of the entity to override this attribute's value.
7282
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
7283
+ * fixed on the base entity.
7284
+ *
7285
+ */
7286
+ variant_overridable?: boolean;
6757
7287
  default_value?: any;
6758
7288
  /**
6759
7289
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -6787,6 +7317,16 @@ declare namespace Components {
6787
7317
  *
6788
7318
  */
6789
7319
  render_condition?: string;
7320
+ /**
7321
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
7322
+ *
7323
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
7324
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
7325
+ *
7326
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
7327
+ *
7328
+ */
7329
+ data_classification?: "public" | "pii";
6790
7330
  _purpose?: /**
6791
7331
  * example:
6792
7332
  * taxonomy-slug:classification-slug
@@ -6880,10 +7420,8 @@ declare namespace Components {
6880
7420
  repeatable?: boolean;
6881
7421
  has_primary?: boolean;
6882
7422
  /**
6883
- * Controls how updates to this attribute are handled.
6884
- * - `direct` (default): update is applied immediately. No changeset created.
6885
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
6886
- * - `approval`: update creates a changeset, requires explicit human approval.
7423
+ * Controls how updates to this attribute are handled. See the `EditMode`
7424
+ * schema for the per-mode semantics. Defaults to `direct`.
6887
7425
  *
6888
7426
  */
6889
7427
  edit_mode?: "direct" | "external" | "approval";
@@ -6928,6 +7466,42 @@ declare namespace Components {
6928
7466
  hits?: number;
6929
7467
  results?: /* A saved entity view */ SavedViewItem[];
6930
7468
  }
7469
+ /**
7470
+ * A condition whose value identifies a place.
7471
+ */
7472
+ export interface LocationConditionDefinition {
7473
+ /**
7474
+ * Stable identity of the condition, generated by the client when the condition is
7475
+ * created. It is what makes a rename distinguishable from a remove + add, so it must
7476
+ * be round-tripped unchanged for the lifetime of the condition.
7477
+ *
7478
+ * example:
7479
+ * d5839b94-ba20-4225-a78e-76951d352bd6
7480
+ */
7481
+ id: string; // uuid
7482
+ /**
7483
+ * The key variant values are stored under. Unique within the schema and immutable
7484
+ * once the condition has been saved.
7485
+ *
7486
+ * example:
7487
+ * delivery_area
7488
+ */
7489
+ name: string; // ^[a-z0-9_]+$
7490
+ /**
7491
+ * Display label. Always editable.
7492
+ * example:
7493
+ * Delivery Area
7494
+ */
7495
+ label: string;
7496
+ /**
7497
+ * Immutable once the condition has been saved.
7498
+ */
7499
+ type: "location";
7500
+ /**
7501
+ * The shape of the location value. Immutable once the condition has been saved.
7502
+ */
7503
+ format?: "zipcode" | "zipcode_town";
7504
+ }
6931
7505
  /**
6932
7506
  * Strategy for auto-clearing a changeset on an `edit_mode: external` attribute
6933
7507
  * when a direct write (`?direct=true`) arrives — typically an ERP inbound sync.
@@ -6967,6 +7541,13 @@ declare namespace Components {
6967
7541
  required?: boolean;
6968
7542
  readonly?: boolean;
6969
7543
  deprecated?: boolean;
7544
+ /**
7545
+ * Allow conditional variants of the entity to override this attribute's value.
7546
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
7547
+ * fixed on the base entity.
7548
+ *
7549
+ */
7550
+ variant_overridable?: boolean;
6970
7551
  default_value?: any;
6971
7552
  /**
6972
7553
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -7000,6 +7581,16 @@ declare namespace Components {
7000
7581
  *
7001
7582
  */
7002
7583
  render_condition?: string;
7584
+ /**
7585
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
7586
+ *
7587
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
7588
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
7589
+ *
7590
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
7591
+ *
7592
+ */
7593
+ data_classification?: "public" | "pii";
7003
7594
  _purpose?: /**
7004
7595
  * example:
7005
7596
  * taxonomy-slug:classification-slug
@@ -7093,10 +7684,8 @@ declare namespace Components {
7093
7684
  repeatable?: boolean;
7094
7685
  has_primary?: boolean;
7095
7686
  /**
7096
- * Controls how updates to this attribute are handled.
7097
- * - `direct` (default): update is applied immediately. No changeset created.
7098
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
7099
- * - `approval`: update creates a changeset, requires explicit human approval.
7687
+ * Controls how updates to this attribute are handled. See the `EditMode`
7688
+ * schema for the per-mode semantics. Defaults to `direct`.
7100
7689
  *
7101
7690
  */
7102
7691
  edit_mode?: "direct" | "external" | "approval";
@@ -7136,6 +7725,90 @@ declare namespace Components {
7136
7725
  send_status?: string;
7137
7726
  email_type?: string;
7138
7727
  }
7728
+ /**
7729
+ * A meter readings changeset entry — service-managed by metering-api.
7730
+ * Stored on `Meter._meter_readings_changeset` array attribute. Each entry mirrors a
7731
+ * ClickHouse meter reading row plus a changeset metadata overlay.
7732
+ *
7733
+ * Note: `org_id` is NOT stored on the entry. The entries live on the Meter entity,
7734
+ * which is already org-scoped (`_org`). Round-tripping it would only invite drift;
7735
+ * downstream consumers receive the org from the meter / handler context.
7736
+ *
7737
+ */
7738
+ export interface MeterReadingChangesetEntry {
7739
+ value: number;
7740
+ direction?: "feed-in" | "feed-out";
7741
+ timestamp?: string; // date-time
7742
+ meter_id: string; // uuid
7743
+ counter_id: string; // uuid
7744
+ source?: string;
7745
+ reason?: string;
7746
+ read_by?: string;
7747
+ status?: "valid" | "in-validation" | "implausible";
7748
+ external_id?: string;
7749
+ remark?: string;
7750
+ metadata?: {
7751
+ [name: string]: string;
7752
+ };
7753
+ /**
7754
+ * Unique changeset identifier (UUID v4).
7755
+ */
7756
+ changeset_id: string;
7757
+ edit_mode: "external" | "approval";
7758
+ match_strategy?: "exact" | "fuzzy";
7759
+ /**
7760
+ * Slack on `reading.timestamp` when metering-api auto-clear matches an
7761
+ * incoming reading against this pending changeset.
7762
+ *
7763
+ * Variants:
7764
+ * - `'exact'`: strict millisecond equality.
7765
+ * - `{ type: 'same-day', timezone? }`: strip the time component and
7766
+ * compare year-month-day. Optional `timezone` is an IANA name
7767
+ * (e.g. `'Europe/Berlin'`); the day is bucketed in that zone.
7768
+ * Defaults to UTC when omitted.
7769
+ * - `{ type: 'within-seconds', seconds }`: symmetric ±N-second window.
7770
+ *
7771
+ */
7772
+ timestamp_tolerance?: /**
7773
+ * Slack on `reading.timestamp` when metering-api auto-clear matches an
7774
+ * incoming reading against this pending changeset.
7775
+ *
7776
+ * Variants:
7777
+ * - `'exact'`: strict millisecond equality.
7778
+ * - `{ type: 'same-day', timezone? }`: strip the time component and
7779
+ * compare year-month-day. Optional `timezone` is an IANA name
7780
+ * (e.g. `'Europe/Berlin'`); the day is bucketed in that zone.
7781
+ * Defaults to UTC when omitted.
7782
+ * - `{ type: 'within-seconds', seconds }`: symmetric ±N-second window.
7783
+ *
7784
+ */
7785
+ ("exact") | {
7786
+ type: "same-day";
7787
+ /**
7788
+ * IANA timezone identifier (e.g. `'Europe/Berlin'`, `'UTC'`).
7789
+ * When omitted, the day is bucketed in UTC.
7790
+ *
7791
+ */
7792
+ timezone?: string;
7793
+ } | {
7794
+ type: "within-seconds";
7795
+ /**
7796
+ * Tolerance in seconds. e.g. 60 = ±1 minute, 3600 = ±1 hour.
7797
+ */
7798
+ seconds: number;
7799
+ };
7800
+ fuzzy_config?: {
7801
+ percentage_threshold?: number;
7802
+ absolute_threshold?: number;
7803
+ };
7804
+ created_at: string; // date-time
7805
+ created_by?: /* Identifies the actor that created the changeset. */ ChangesetCreator;
7806
+ previous?: {
7807
+ value?: number;
7808
+ direction?: "feed-in" | "feed-out";
7809
+ timestamp?: string; // date-time
7810
+ };
7811
+ }
7139
7812
  /**
7140
7813
  * Multi Choice Selection
7141
7814
  */
@@ -7164,6 +7837,13 @@ declare namespace Components {
7164
7837
  required?: boolean;
7165
7838
  readonly?: boolean;
7166
7839
  deprecated?: boolean;
7840
+ /**
7841
+ * Allow conditional variants of the entity to override this attribute's value.
7842
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
7843
+ * fixed on the base entity.
7844
+ *
7845
+ */
7846
+ variant_overridable?: boolean;
7167
7847
  default_value?: any;
7168
7848
  /**
7169
7849
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -7197,6 +7877,16 @@ declare namespace Components {
7197
7877
  *
7198
7878
  */
7199
7879
  render_condition?: string;
7880
+ /**
7881
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
7882
+ *
7883
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
7884
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
7885
+ *
7886
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
7887
+ *
7888
+ */
7889
+ data_classification?: "public" | "pii";
7200
7890
  _purpose?: /**
7201
7891
  * example:
7202
7892
  * taxonomy-slug:classification-slug
@@ -7290,10 +7980,8 @@ declare namespace Components {
7290
7980
  repeatable?: boolean;
7291
7981
  has_primary?: boolean;
7292
7982
  /**
7293
- * Controls how updates to this attribute are handled.
7294
- * - `direct` (default): update is applied immediately. No changeset created.
7295
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
7296
- * - `approval`: update creates a changeset, requires explicit human approval.
7983
+ * Controls how updates to this attribute are handled. See the `EditMode`
7984
+ * schema for the per-mode semantics. Defaults to `direct`.
7297
7985
  *
7298
7986
  */
7299
7987
  edit_mode?: "direct" | "external" | "approval";
@@ -7429,8 +8117,12 @@ declare namespace Components {
7429
8117
  _manifest?: string /* uuid */[] | null;
7430
8118
  /**
7431
8119
  * Pending attribute changesets for attributes configured with external or approval edit mode.
7432
- * Read-only via normal entity PATCH/PUT operations — cannot be set directly.
7433
- * Use the changeset management endpoints to apply or dismiss changesets.
8120
+ *
8121
+ * The value shape is `Changeset` (`proposed_value`, `created_at`, `edit_mode`, ...)
8122
+ * and is what `:apply` / `:dismiss` operate on.
8123
+ *
8124
+ * Read-only via normal entity PATCH/PUT operations — those handlers strip `_changesets`
8125
+ * from request bodies. Use the changeset management endpoints to mutate this field.
7434
8126
  *
7435
8127
  */
7436
8128
  _changesets?: {
@@ -7465,6 +8157,13 @@ declare namespace Components {
7465
8157
  required?: boolean;
7466
8158
  readonly?: boolean;
7467
8159
  deprecated?: boolean;
8160
+ /**
8161
+ * Allow conditional variants of the entity to override this attribute's value.
8162
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
8163
+ * fixed on the base entity.
8164
+ *
8165
+ */
8166
+ variant_overridable?: boolean;
7468
8167
  default_value?: any;
7469
8168
  /**
7470
8169
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -7498,6 +8197,16 @@ declare namespace Components {
7498
8197
  *
7499
8198
  */
7500
8199
  render_condition?: string;
8200
+ /**
8201
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
8202
+ *
8203
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
8204
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
8205
+ *
8206
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
8207
+ *
8208
+ */
8209
+ data_classification?: "public" | "pii";
7501
8210
  _purpose?: /**
7502
8211
  * example:
7503
8212
  * taxonomy-slug:classification-slug
@@ -7591,10 +8300,8 @@ declare namespace Components {
7591
8300
  repeatable?: boolean;
7592
8301
  has_primary?: boolean;
7593
8302
  /**
7594
- * Controls how updates to this attribute are handled.
7595
- * - `direct` (default): update is applied immediately. No changeset created.
7596
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
7597
- * - `approval`: update creates a changeset, requires explicit human approval.
8303
+ * Controls how updates to this attribute are handled. See the `EditMode`
8304
+ * schema for the per-mode semantics. Defaults to `direct`.
7598
8305
  *
7599
8306
  */
7600
8307
  edit_mode?: "direct" | "external" | "approval";
@@ -7668,6 +8375,13 @@ declare namespace Components {
7668
8375
  required?: boolean;
7669
8376
  readonly?: boolean;
7670
8377
  deprecated?: boolean;
8378
+ /**
8379
+ * Allow conditional variants of the entity to override this attribute's value.
8380
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
8381
+ * fixed on the base entity.
8382
+ *
8383
+ */
8384
+ variant_overridable?: boolean;
7671
8385
  default_value?: any;
7672
8386
  /**
7673
8387
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -7701,6 +8415,16 @@ declare namespace Components {
7701
8415
  *
7702
8416
  */
7703
8417
  render_condition?: string;
8418
+ /**
8419
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
8420
+ *
8421
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
8422
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
8423
+ *
8424
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
8425
+ *
8426
+ */
8427
+ data_classification?: "public" | "pii";
7704
8428
  _purpose?: /**
7705
8429
  * example:
7706
8430
  * taxonomy-slug:classification-slug
@@ -7794,10 +8518,8 @@ declare namespace Components {
7794
8518
  repeatable?: boolean;
7795
8519
  has_primary?: boolean;
7796
8520
  /**
7797
- * Controls how updates to this attribute are handled.
7798
- * - `direct` (default): update is applied immediately. No changeset created.
7799
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
7800
- * - `approval`: update creates a changeset, requires explicit human approval.
8521
+ * Controls how updates to this attribute are handled. See the `EditMode`
8522
+ * schema for the per-mode semantics. Defaults to `direct`.
7801
8523
  *
7802
8524
  */
7803
8525
  edit_mode?: "direct" | "external" | "approval";
@@ -7862,6 +8584,13 @@ declare namespace Components {
7862
8584
  required?: boolean;
7863
8585
  readonly?: boolean;
7864
8586
  deprecated?: boolean;
8587
+ /**
8588
+ * Allow conditional variants of the entity to override this attribute's value.
8589
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
8590
+ * fixed on the base entity.
8591
+ *
8592
+ */
8593
+ variant_overridable?: boolean;
7865
8594
  default_value?: any;
7866
8595
  /**
7867
8596
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -7895,6 +8624,16 @@ declare namespace Components {
7895
8624
  *
7896
8625
  */
7897
8626
  render_condition?: string;
8627
+ /**
8628
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
8629
+ *
8630
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
8631
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
8632
+ *
8633
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
8634
+ *
8635
+ */
8636
+ data_classification?: "public" | "pii";
7898
8637
  _purpose?: /**
7899
8638
  * example:
7900
8639
  * taxonomy-slug:classification-slug
@@ -7988,10 +8727,8 @@ declare namespace Components {
7988
8727
  repeatable?: boolean;
7989
8728
  has_primary?: boolean;
7990
8729
  /**
7991
- * Controls how updates to this attribute are handled.
7992
- * - `direct` (default): update is applied immediately. No changeset created.
7993
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
7994
- * - `approval`: update creates a changeset, requires explicit human approval.
8730
+ * Controls how updates to this attribute are handled. See the `EditMode`
8731
+ * schema for the per-mode semantics. Defaults to `direct`.
7995
8732
  *
7996
8733
  */
7997
8734
  edit_mode?: "direct" | "external" | "approval";
@@ -8056,6 +8793,13 @@ declare namespace Components {
8056
8793
  required?: boolean;
8057
8794
  readonly?: boolean;
8058
8795
  deprecated?: boolean;
8796
+ /**
8797
+ * Allow conditional variants of the entity to override this attribute's value.
8798
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
8799
+ * fixed on the base entity.
8800
+ *
8801
+ */
8802
+ variant_overridable?: boolean;
8059
8803
  default_value?: any;
8060
8804
  /**
8061
8805
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -8089,6 +8833,16 @@ declare namespace Components {
8089
8833
  *
8090
8834
  */
8091
8835
  render_condition?: string;
8836
+ /**
8837
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
8838
+ *
8839
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
8840
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
8841
+ *
8842
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
8843
+ *
8844
+ */
8845
+ data_classification?: "public" | "pii";
8092
8846
  _purpose?: /**
8093
8847
  * example:
8094
8848
  * taxonomy-slug:classification-slug
@@ -8182,10 +8936,8 @@ declare namespace Components {
8182
8936
  repeatable?: boolean;
8183
8937
  has_primary?: boolean;
8184
8938
  /**
8185
- * Controls how updates to this attribute are handled.
8186
- * - `direct` (default): update is applied immediately. No changeset created.
8187
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
8188
- * - `approval`: update creates a changeset, requires explicit human approval.
8939
+ * Controls how updates to this attribute are handled. See the `EditMode`
8940
+ * schema for the per-mode semantics. Defaults to `direct`.
8189
8941
  *
8190
8942
  */
8191
8943
  edit_mode?: "direct" | "external" | "approval";
@@ -8250,6 +9002,13 @@ declare namespace Components {
8250
9002
  required?: boolean;
8251
9003
  readonly?: boolean;
8252
9004
  deprecated?: boolean;
9005
+ /**
9006
+ * Allow conditional variants of the entity to override this attribute's value.
9007
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
9008
+ * fixed on the base entity.
9009
+ *
9010
+ */
9011
+ variant_overridable?: boolean;
8253
9012
  default_value?: any;
8254
9013
  /**
8255
9014
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -8283,6 +9042,16 @@ declare namespace Components {
8283
9042
  *
8284
9043
  */
8285
9044
  render_condition?: string;
9045
+ /**
9046
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
9047
+ *
9048
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
9049
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
9050
+ *
9051
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
9052
+ *
9053
+ */
9054
+ data_classification?: "public" | "pii";
8286
9055
  _purpose?: /**
8287
9056
  * example:
8288
9057
  * taxonomy-slug:classification-slug
@@ -8376,10 +9145,8 @@ declare namespace Components {
8376
9145
  repeatable?: boolean;
8377
9146
  has_primary?: boolean;
8378
9147
  /**
8379
- * Controls how updates to this attribute are handled.
8380
- * - `direct` (default): update is applied immediately. No changeset created.
8381
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
8382
- * - `approval`: update creates a changeset, requires explicit human approval.
9148
+ * Controls how updates to this attribute are handled. See the `EditMode`
9149
+ * schema for the per-mode semantics. Defaults to `direct`.
8383
9150
  *
8384
9151
  */
8385
9152
  edit_mode?: "direct" | "external" | "approval";
@@ -8444,6 +9211,13 @@ declare namespace Components {
8444
9211
  required?: boolean;
8445
9212
  readonly?: boolean;
8446
9213
  deprecated?: boolean;
9214
+ /**
9215
+ * Allow conditional variants of the entity to override this attribute's value.
9216
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
9217
+ * fixed on the base entity.
9218
+ *
9219
+ */
9220
+ variant_overridable?: boolean;
8447
9221
  default_value?: any;
8448
9222
  /**
8449
9223
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -8477,6 +9251,16 @@ declare namespace Components {
8477
9251
  *
8478
9252
  */
8479
9253
  render_condition?: string;
9254
+ /**
9255
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
9256
+ *
9257
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
9258
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
9259
+ *
9260
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
9261
+ *
9262
+ */
9263
+ data_classification?: "public" | "pii";
8480
9264
  _purpose?: /**
8481
9265
  * example:
8482
9266
  * taxonomy-slug:classification-slug
@@ -8570,10 +9354,8 @@ declare namespace Components {
8570
9354
  repeatable?: boolean;
8571
9355
  has_primary?: boolean;
8572
9356
  /**
8573
- * Controls how updates to this attribute are handled.
8574
- * - `direct` (default): update is applied immediately. No changeset created.
8575
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
8576
- * - `approval`: update creates a changeset, requires explicit human approval.
9357
+ * Controls how updates to this attribute are handled. See the `EditMode`
9358
+ * schema for the per-mode semantics. Defaults to `direct`.
8577
9359
  *
8578
9360
  */
8579
9361
  edit_mode?: "direct" | "external" | "approval";
@@ -8638,6 +9420,13 @@ declare namespace Components {
8638
9420
  required?: boolean;
8639
9421
  readonly?: boolean;
8640
9422
  deprecated?: boolean;
9423
+ /**
9424
+ * Allow conditional variants of the entity to override this attribute's value.
9425
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
9426
+ * fixed on the base entity.
9427
+ *
9428
+ */
9429
+ variant_overridable?: boolean;
8641
9430
  default_value?: any;
8642
9431
  /**
8643
9432
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -8671,6 +9460,16 @@ declare namespace Components {
8671
9460
  *
8672
9461
  */
8673
9462
  render_condition?: string;
9463
+ /**
9464
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
9465
+ *
9466
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
9467
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
9468
+ *
9469
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
9470
+ *
9471
+ */
9472
+ data_classification?: "public" | "pii";
8674
9473
  _purpose?: /**
8675
9474
  * example:
8676
9475
  * taxonomy-slug:classification-slug
@@ -8764,10 +9563,8 @@ declare namespace Components {
8764
9563
  repeatable?: boolean;
8765
9564
  has_primary?: boolean;
8766
9565
  /**
8767
- * Controls how updates to this attribute are handled.
8768
- * - `direct` (default): update is applied immediately. No changeset created.
8769
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
8770
- * - `approval`: update creates a changeset, requires explicit human approval.
9566
+ * Controls how updates to this attribute are handled. See the `EditMode`
9567
+ * schema for the per-mode semantics. Defaults to `direct`.
8771
9568
  *
8772
9569
  */
8773
9570
  edit_mode?: "direct" | "external" | "approval";
@@ -8832,6 +9629,13 @@ declare namespace Components {
8832
9629
  required?: boolean;
8833
9630
  readonly?: boolean;
8834
9631
  deprecated?: boolean;
9632
+ /**
9633
+ * Allow conditional variants of the entity to override this attribute's value.
9634
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
9635
+ * fixed on the base entity.
9636
+ *
9637
+ */
9638
+ variant_overridable?: boolean;
8835
9639
  default_value?: any;
8836
9640
  /**
8837
9641
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -8865,6 +9669,16 @@ declare namespace Components {
8865
9669
  *
8866
9670
  */
8867
9671
  render_condition?: string;
9672
+ /**
9673
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
9674
+ *
9675
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
9676
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
9677
+ *
9678
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
9679
+ *
9680
+ */
9681
+ data_classification?: "public" | "pii";
8868
9682
  _purpose?: /**
8869
9683
  * example:
8870
9684
  * taxonomy-slug:classification-slug
@@ -8958,10 +9772,8 @@ declare namespace Components {
8958
9772
  repeatable?: boolean;
8959
9773
  has_primary?: boolean;
8960
9774
  /**
8961
- * Controls how updates to this attribute are handled.
8962
- * - `direct` (default): update is applied immediately. No changeset created.
8963
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
8964
- * - `approval`: update creates a changeset, requires explicit human approval.
9775
+ * Controls how updates to this attribute are handled. See the `EditMode`
9776
+ * schema for the per-mode semantics. Defaults to `direct`.
8965
9777
  *
8966
9778
  */
8967
9779
  edit_mode?: "direct" | "external" | "approval";
@@ -9026,6 +9838,13 @@ declare namespace Components {
9026
9838
  required?: boolean;
9027
9839
  readonly?: boolean;
9028
9840
  deprecated?: boolean;
9841
+ /**
9842
+ * Allow conditional variants of the entity to override this attribute's value.
9843
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
9844
+ * fixed on the base entity.
9845
+ *
9846
+ */
9847
+ variant_overridable?: boolean;
9029
9848
  default_value?: any;
9030
9849
  /**
9031
9850
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -9059,6 +9878,16 @@ declare namespace Components {
9059
9878
  *
9060
9879
  */
9061
9880
  render_condition?: string;
9881
+ /**
9882
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
9883
+ *
9884
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
9885
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
9886
+ *
9887
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
9888
+ *
9889
+ */
9890
+ data_classification?: "public" | "pii";
9062
9891
  _purpose?: /**
9063
9892
  * example:
9064
9893
  * taxonomy-slug:classification-slug
@@ -9152,10 +9981,8 @@ declare namespace Components {
9152
9981
  repeatable?: boolean;
9153
9982
  has_primary?: boolean;
9154
9983
  /**
9155
- * Controls how updates to this attribute are handled.
9156
- * - `direct` (default): update is applied immediately. No changeset created.
9157
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
9158
- * - `approval`: update creates a changeset, requires explicit human approval.
9984
+ * Controls how updates to this attribute are handled. See the `EditMode`
9985
+ * schema for the per-mode semantics. Defaults to `direct`.
9159
9986
  *
9160
9987
  */
9161
9988
  edit_mode?: "direct" | "external" | "approval";
@@ -9220,6 +10047,13 @@ declare namespace Components {
9220
10047
  required?: boolean;
9221
10048
  readonly?: boolean;
9222
10049
  deprecated?: boolean;
10050
+ /**
10051
+ * Allow conditional variants of the entity to override this attribute's value.
10052
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
10053
+ * fixed on the base entity.
10054
+ *
10055
+ */
10056
+ variant_overridable?: boolean;
9223
10057
  default_value?: any;
9224
10058
  /**
9225
10059
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -9253,6 +10087,16 @@ declare namespace Components {
9253
10087
  *
9254
10088
  */
9255
10089
  render_condition?: string;
10090
+ /**
10091
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
10092
+ *
10093
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
10094
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
10095
+ *
10096
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
10097
+ *
10098
+ */
10099
+ data_classification?: "public" | "pii";
9256
10100
  _purpose?: /**
9257
10101
  * example:
9258
10102
  * taxonomy-slug:classification-slug
@@ -9346,10 +10190,8 @@ declare namespace Components {
9346
10190
  repeatable?: boolean;
9347
10191
  has_primary?: boolean;
9348
10192
  /**
9349
- * Controls how updates to this attribute are handled.
9350
- * - `direct` (default): update is applied immediately. No changeset created.
9351
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
9352
- * - `approval`: update creates a changeset, requires explicit human approval.
10193
+ * Controls how updates to this attribute are handled. See the `EditMode`
10194
+ * schema for the per-mode semantics. Defaults to `direct`.
9353
10195
  *
9354
10196
  */
9355
10197
  edit_mode?: "direct" | "external" | "approval";
@@ -9429,6 +10271,13 @@ declare namespace Components {
9429
10271
  required?: boolean;
9430
10272
  readonly?: boolean;
9431
10273
  deprecated?: boolean;
10274
+ /**
10275
+ * Allow conditional variants of the entity to override this attribute's value.
10276
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
10277
+ * fixed on the base entity.
10278
+ *
10279
+ */
10280
+ variant_overridable?: boolean;
9432
10281
  default_value?: any;
9433
10282
  /**
9434
10283
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -9462,6 +10311,16 @@ declare namespace Components {
9462
10311
  *
9463
10312
  */
9464
10313
  render_condition?: string;
10314
+ /**
10315
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
10316
+ *
10317
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
10318
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
10319
+ *
10320
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
10321
+ *
10322
+ */
10323
+ data_classification?: "public" | "pii";
9465
10324
  _purpose?: /**
9466
10325
  * example:
9467
10326
  * taxonomy-slug:classification-slug
@@ -9555,10 +10414,8 @@ declare namespace Components {
9555
10414
  repeatable?: boolean;
9556
10415
  has_primary?: boolean;
9557
10416
  /**
9558
- * Controls how updates to this attribute are handled.
9559
- * - `direct` (default): update is applied immediately. No changeset created.
9560
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
9561
- * - `approval`: update creates a changeset, requires explicit human approval.
10417
+ * Controls how updates to this attribute are handled. See the `EditMode`
10418
+ * schema for the per-mode semantics. Defaults to `direct`.
9562
10419
  *
9563
10420
  */
9564
10421
  edit_mode?: "direct" | "external" | "approval" | "list-view";
@@ -9789,8 +10646,12 @@ declare namespace Components {
9789
10646
  _manifest?: string /* uuid */[] | null;
9790
10647
  /**
9791
10648
  * Pending attribute changesets for attributes configured with external or approval edit mode.
9792
- * Read-only via normal entity PATCH/PUT operations — cannot be set directly.
9793
- * Use the changeset management endpoints to apply or dismiss changesets.
10649
+ *
10650
+ * The value shape is `Changeset` (`proposed_value`, `created_at`, `edit_mode`, ...)
10651
+ * and is what `:apply` / `:dismiss` operate on.
10652
+ *
10653
+ * Read-only via normal entity PATCH/PUT operations — those handlers strip `_changesets`
10654
+ * from request bodies. Use the changeset management endpoints to mutate this field.
9794
10655
  *
9795
10656
  */
9796
10657
  _changesets?: {
@@ -9845,6 +10706,13 @@ declare namespace Components {
9845
10706
  required?: boolean;
9846
10707
  readonly?: boolean;
9847
10708
  deprecated?: boolean;
10709
+ /**
10710
+ * Allow conditional variants of the entity to override this attribute's value.
10711
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
10712
+ * fixed on the base entity.
10713
+ *
10714
+ */
10715
+ variant_overridable?: boolean;
9848
10716
  default_value?: any;
9849
10717
  /**
9850
10718
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -9878,6 +10746,16 @@ declare namespace Components {
9878
10746
  *
9879
10747
  */
9880
10748
  render_condition?: string;
10749
+ /**
10750
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
10751
+ *
10752
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
10753
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
10754
+ *
10755
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
10756
+ *
10757
+ */
10758
+ data_classification?: "public" | "pii";
9881
10759
  _purpose?: /**
9882
10760
  * example:
9883
10761
  * taxonomy-slug:classification-slug
@@ -9971,10 +10849,8 @@ declare namespace Components {
9971
10849
  repeatable?: boolean;
9972
10850
  has_primary?: boolean;
9973
10851
  /**
9974
- * Controls how updates to this attribute are handled.
9975
- * - `direct` (default): update is applied immediately. No changeset created.
9976
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
9977
- * - `approval`: update creates a changeset, requires explicit human approval.
10852
+ * Controls how updates to this attribute are handled. See the `EditMode`
10853
+ * schema for the per-mode semantics. Defaults to `direct`.
9978
10854
  *
9979
10855
  */
9980
10856
  edit_mode?: "direct" | "external" | "approval";
@@ -10051,6 +10927,12 @@ declare namespace Components {
10051
10927
  * 10598
10052
10928
  */
10053
10929
  user_id?: string;
10930
+ /**
10931
+ * The organization ID of the user who created the view. Used for partner access control.
10932
+ * example:
10933
+ * 739224
10934
+ */
10935
+ org_id?: string;
10054
10936
  } | {
10055
10937
  [name: string]: any;
10056
10938
  source?: "SYSTEM" | "BLUEPRINT";
@@ -10128,6 +11010,12 @@ declare namespace Components {
10128
11010
  * 10598
10129
11011
  */
10130
11012
  user_id?: string;
11013
+ /**
11014
+ * The organization ID of the user who created the view. Used for partner access control.
11015
+ * example:
11016
+ * 739224
11017
+ */
11018
+ org_id?: string;
10131
11019
  } | {
10132
11020
  [name: string]: any;
10133
11021
  source?: "SYSTEM" | "BLUEPRINT";
@@ -10198,6 +11086,12 @@ declare namespace Components {
10198
11086
  * 10598
10199
11087
  */
10200
11088
  user_id?: string;
11089
+ /**
11090
+ * The organization ID of the user who created the view. Used for partner access control.
11091
+ * example:
11092
+ * 739224
11093
+ */
11094
+ org_id?: string;
10201
11095
  } | {
10202
11096
  [name: string]: any;
10203
11097
  source?: "SYSTEM" | "BLUEPRINT";
@@ -10227,6 +11121,38 @@ declare namespace Components {
10227
11121
  */
10228
11122
  shared_with?: string[];
10229
11123
  }
11124
+ /**
11125
+ * A condition whose value is a plain scalar, with no further configuration.
11126
+ */
11127
+ export interface ScalarConditionDefinition {
11128
+ /**
11129
+ * Stable identity of the condition, generated by the client when the condition is
11130
+ * created. It is what makes a rename distinguishable from a remove + add, so it must
11131
+ * be round-tripped unchanged for the lifetime of the condition.
11132
+ *
11133
+ * example:
11134
+ * d5839b94-ba20-4225-a78e-76951d352bd6
11135
+ */
11136
+ id: string; // uuid
11137
+ /**
11138
+ * The key variant values are stored under. Unique within the schema and immutable
11139
+ * once the condition has been saved.
11140
+ *
11141
+ * example:
11142
+ * delivery_area
11143
+ */
11144
+ name: string; // ^[a-z0-9_]+$
11145
+ /**
11146
+ * Display label. Always editable.
11147
+ * example:
11148
+ * Delivery Area
11149
+ */
11150
+ label: string;
11151
+ /**
11152
+ * Immutable once the condition has been saved.
11153
+ */
11154
+ type: "string" | "number" | "date" | "daterange" | "boolean";
11155
+ }
10230
11156
  /**
10231
11157
  * Generated uuid for schema
10232
11158
  */
@@ -10443,6 +11369,13 @@ declare namespace Components {
10443
11369
  required?: boolean;
10444
11370
  readonly?: boolean;
10445
11371
  deprecated?: boolean;
11372
+ /**
11373
+ * Allow conditional variants of the entity to override this attribute's value.
11374
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
11375
+ * fixed on the base entity.
11376
+ *
11377
+ */
11378
+ variant_overridable?: boolean;
10446
11379
  default_value?: any;
10447
11380
  /**
10448
11381
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -10476,6 +11409,16 @@ declare namespace Components {
10476
11409
  *
10477
11410
  */
10478
11411
  render_condition?: string;
11412
+ /**
11413
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
11414
+ *
11415
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
11416
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
11417
+ *
11418
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
11419
+ *
11420
+ */
11421
+ data_classification?: "public" | "pii";
10479
11422
  _purpose?: /**
10480
11423
  * example:
10481
11424
  * taxonomy-slug:classification-slug
@@ -10569,10 +11512,8 @@ declare namespace Components {
10569
11512
  repeatable?: boolean;
10570
11513
  has_primary?: boolean;
10571
11514
  /**
10572
- * Controls how updates to this attribute are handled.
10573
- * - `direct` (default): update is applied immediately. No changeset created.
10574
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
10575
- * - `approval`: update creates a changeset, requires explicit human approval.
11515
+ * Controls how updates to this attribute are handled. See the `EditMode`
11516
+ * schema for the per-mode semantics. Defaults to `direct`.
10576
11517
  *
10577
11518
  */
10578
11519
  edit_mode?: "direct" | "external" | "approval";
@@ -10617,6 +11558,47 @@ declare namespace Components {
10617
11558
  */
10618
11559
  allow_any?: boolean;
10619
11560
  }
11561
+ /**
11562
+ * A condition whose value is one of a fixed set of options.
11563
+ */
11564
+ export interface SelectConditionDefinition {
11565
+ /**
11566
+ * Stable identity of the condition, generated by the client when the condition is
11567
+ * created. It is what makes a rename distinguishable from a remove + add, so it must
11568
+ * be round-tripped unchanged for the lifetime of the condition.
11569
+ *
11570
+ * example:
11571
+ * d5839b94-ba20-4225-a78e-76951d352bd6
11572
+ */
11573
+ id: string; // uuid
11574
+ /**
11575
+ * The key variant values are stored under. Unique within the schema and immutable
11576
+ * once the condition has been saved.
11577
+ *
11578
+ * example:
11579
+ * delivery_area
11580
+ */
11581
+ name: string; // ^[a-z0-9_]+$
11582
+ /**
11583
+ * Display label. Always editable.
11584
+ * example:
11585
+ * Delivery Area
11586
+ */
11587
+ label: string;
11588
+ /**
11589
+ * Immutable once the condition has been saved.
11590
+ */
11591
+ type: "select";
11592
+ /**
11593
+ * Selectable options. May be empty while the condition is being configured.
11594
+ * example:
11595
+ * [
11596
+ * "12_months",
11597
+ * "24_months"
11598
+ * ]
11599
+ */
11600
+ values?: string[];
11601
+ }
10620
11602
  /**
10621
11603
  * Sequence of unique identifiers
10622
11604
  */
@@ -10645,6 +11627,13 @@ declare namespace Components {
10645
11627
  required?: boolean;
10646
11628
  readonly?: boolean;
10647
11629
  deprecated?: boolean;
11630
+ /**
11631
+ * Allow conditional variants of the entity to override this attribute's value.
11632
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
11633
+ * fixed on the base entity.
11634
+ *
11635
+ */
11636
+ variant_overridable?: boolean;
10648
11637
  default_value?: any;
10649
11638
  /**
10650
11639
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -10678,6 +11667,16 @@ declare namespace Components {
10678
11667
  *
10679
11668
  */
10680
11669
  render_condition?: string;
11670
+ /**
11671
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
11672
+ *
11673
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
11674
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
11675
+ *
11676
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
11677
+ *
11678
+ */
11679
+ data_classification?: "public" | "pii";
10681
11680
  _purpose?: /**
10682
11681
  * example:
10683
11682
  * taxonomy-slug:classification-slug
@@ -10771,10 +11770,8 @@ declare namespace Components {
10771
11770
  repeatable?: boolean;
10772
11771
  has_primary?: boolean;
10773
11772
  /**
10774
- * Controls how updates to this attribute are handled.
10775
- * - `direct` (default): update is applied immediately. No changeset created.
10776
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
10777
- * - `approval`: update creates a changeset, requires explicit human approval.
11773
+ * Controls how updates to this attribute are handled. See the `EditMode`
11774
+ * schema for the per-mode semantics. Defaults to `direct`.
10778
11775
  *
10779
11776
  */
10780
11777
  edit_mode?: "direct" | "external" | "approval";
@@ -10856,6 +11853,13 @@ declare namespace Components {
10856
11853
  required?: boolean;
10857
11854
  readonly?: boolean;
10858
11855
  deprecated?: boolean;
11856
+ /**
11857
+ * Allow conditional variants of the entity to override this attribute's value.
11858
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
11859
+ * fixed on the base entity.
11860
+ *
11861
+ */
11862
+ variant_overridable?: boolean;
10859
11863
  default_value?: any;
10860
11864
  /**
10861
11865
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -10889,6 +11893,16 @@ declare namespace Components {
10889
11893
  *
10890
11894
  */
10891
11895
  render_condition?: string;
11896
+ /**
11897
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
11898
+ *
11899
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
11900
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
11901
+ *
11902
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
11903
+ *
11904
+ */
11905
+ data_classification?: "public" | "pii";
10892
11906
  _purpose?: /**
10893
11907
  * example:
10894
11908
  * taxonomy-slug:classification-slug
@@ -10982,10 +11996,8 @@ declare namespace Components {
10982
11996
  repeatable?: boolean;
10983
11997
  has_primary?: boolean;
10984
11998
  /**
10985
- * Controls how updates to this attribute are handled.
10986
- * - `direct` (default): update is applied immediately. No changeset created.
10987
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
10988
- * - `approval`: update creates a changeset, requires explicit human approval.
11999
+ * Controls how updates to this attribute are handled. See the `EditMode`
12000
+ * schema for the per-mode semantics. Defaults to `direct`.
10989
12001
  *
10990
12002
  */
10991
12003
  edit_mode?: "direct" | "external" | "approval";
@@ -11146,6 +12158,13 @@ declare namespace Components {
11146
12158
  required?: boolean;
11147
12159
  readonly?: boolean;
11148
12160
  deprecated?: boolean;
12161
+ /**
12162
+ * Allow conditional variants of the entity to override this attribute's value.
12163
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
12164
+ * fixed on the base entity.
12165
+ *
12166
+ */
12167
+ variant_overridable?: boolean;
11149
12168
  default_value?: any;
11150
12169
  /**
11151
12170
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -11179,6 +12198,16 @@ declare namespace Components {
11179
12198
  *
11180
12199
  */
11181
12200
  render_condition?: string;
12201
+ /**
12202
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
12203
+ *
12204
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
12205
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
12206
+ *
12207
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
12208
+ *
12209
+ */
12210
+ data_classification?: "public" | "pii";
11182
12211
  _purpose?: /**
11183
12212
  * example:
11184
12213
  * taxonomy-slug:classification-slug
@@ -11272,10 +12301,8 @@ declare namespace Components {
11272
12301
  repeatable?: boolean;
11273
12302
  has_primary?: boolean;
11274
12303
  /**
11275
- * Controls how updates to this attribute are handled.
11276
- * - `direct` (default): update is applied immediately. No changeset created.
11277
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
11278
- * - `approval`: update creates a changeset, requires explicit human approval.
12304
+ * Controls how updates to this attribute are handled. See the `EditMode`
12305
+ * schema for the per-mode semantics. Defaults to `direct`.
11279
12306
  *
11280
12307
  */
11281
12308
  edit_mode?: "direct" | "external" | "approval";
@@ -11396,6 +12423,13 @@ declare namespace Components {
11396
12423
  required?: boolean;
11397
12424
  readonly?: boolean;
11398
12425
  deprecated?: boolean;
12426
+ /**
12427
+ * Allow conditional variants of the entity to override this attribute's value.
12428
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
12429
+ * fixed on the base entity.
12430
+ *
12431
+ */
12432
+ variant_overridable?: boolean;
11399
12433
  default_value?: any;
11400
12434
  /**
11401
12435
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -11429,6 +12463,16 @@ declare namespace Components {
11429
12463
  *
11430
12464
  */
11431
12465
  render_condition?: string;
12466
+ /**
12467
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
12468
+ *
12469
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
12470
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
12471
+ *
12472
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
12473
+ *
12474
+ */
12475
+ data_classification?: "public" | "pii";
11432
12476
  _purpose?: /**
11433
12477
  * example:
11434
12478
  * taxonomy-slug:classification-slug
@@ -11522,10 +12566,8 @@ declare namespace Components {
11522
12566
  repeatable?: boolean;
11523
12567
  has_primary?: boolean;
11524
12568
  /**
11525
- * Controls how updates to this attribute are handled.
11526
- * - `direct` (default): update is applied immediately. No changeset created.
11527
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
11528
- * - `approval`: update creates a changeset, requires explicit human approval.
12569
+ * Controls how updates to this attribute are handled. See the `EditMode`
12570
+ * schema for the per-mode semantics. Defaults to `direct`.
11529
12571
  *
11530
12572
  */
11531
12573
  edit_mode?: "direct" | "external" | "approval";
@@ -11747,7 +12789,7 @@ declare namespace Components {
11747
12789
  */
11748
12790
  _manifest?: string /* uuid */[] | null;
11749
12791
  }
11750
- export type TaxonomyLocationId = "account" | "contact" | "contract" | "email_template" | "file" | "journey" | "meter_counter" | "meter" | "opportunity" | "order" | "partner" | "price" | "product" | "submission" | "tax" | "message" | "portal_user" | "request" | "comment";
12792
+ export type TaxonomyLocationId = "account" | "contact" | "contract" | "email_template" | "file" | "journey" | "meter_counter" | "meter" | "opportunity" | "order" | "partner" | "price" | "product" | "submission" | "tax" | "message" | "portal_user" | "request" | "comment" | "user";
11751
12793
  /**
11752
12794
  * Whether to include archived labels in the search results
11753
12795
  * - `true`: include archived labels
@@ -11792,6 +12834,13 @@ declare namespace Components {
11792
12834
  required?: boolean;
11793
12835
  readonly?: boolean;
11794
12836
  deprecated?: boolean;
12837
+ /**
12838
+ * Allow conditional variants of the entity to override this attribute's value.
12839
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
12840
+ * fixed on the base entity.
12841
+ *
12842
+ */
12843
+ variant_overridable?: boolean;
11795
12844
  default_value?: any;
11796
12845
  /**
11797
12846
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -11825,6 +12874,16 @@ declare namespace Components {
11825
12874
  *
11826
12875
  */
11827
12876
  render_condition?: string;
12877
+ /**
12878
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
12879
+ *
12880
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
12881
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
12882
+ *
12883
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
12884
+ *
12885
+ */
12886
+ data_classification?: "public" | "pii";
11828
12887
  _purpose?: /**
11829
12888
  * example:
11830
12889
  * taxonomy-slug:classification-slug
@@ -11918,10 +12977,8 @@ declare namespace Components {
11918
12977
  repeatable?: boolean;
11919
12978
  has_primary?: boolean;
11920
12979
  /**
11921
- * Controls how updates to this attribute are handled.
11922
- * - `direct` (default): update is applied immediately. No changeset created.
11923
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
11924
- * - `approval`: update creates a changeset, requires explicit human approval.
12980
+ * Controls how updates to this attribute are handled. See the `EditMode`
12981
+ * schema for the per-mode semantics. Defaults to `direct`.
11925
12982
  *
11926
12983
  */
11927
12984
  edit_mode?: "direct" | "external" | "approval";
@@ -11999,6 +13056,13 @@ declare namespace Components {
11999
13056
  required?: boolean;
12000
13057
  readonly?: boolean;
12001
13058
  deprecated?: boolean;
13059
+ /**
13060
+ * Allow conditional variants of the entity to override this attribute's value.
13061
+ * Only meaningful on schemas that declare `conditions`. Unflagged attributes stay
13062
+ * fixed on the base entity.
13063
+ *
13064
+ */
13065
+ variant_overridable?: boolean;
12002
13066
  default_value?: any;
12003
13067
  /**
12004
13068
  * Which group the attribute should appear in. Accepts group ID or group name
@@ -12032,6 +13096,16 @@ declare namespace Components {
12032
13096
  *
12033
13097
  */
12034
13098
  render_condition?: string;
13099
+ /**
13100
+ * Data classification of the attribute, used by anonymized responses (`?anonymize=true` or tokens minted with `anonymize: true`).
13101
+ *
13102
+ * - `pii`: the attribute value is always anonymized in anonymized responses (use to opt in free-text fields containing personal data)
13103
+ * - `public`: the attribute value is never anonymized (use to opt out fields matched by built-in defaults, e.g. non-personal identifiers)
13104
+ *
13105
+ * When unset, built-in defaults apply based on the attribute type (email, phone, address, payment) and a curated list of well-known PII fields.
13106
+ *
13107
+ */
13108
+ data_classification?: "public" | "pii";
12035
13109
  _purpose?: /**
12036
13110
  * example:
12037
13111
  * taxonomy-slug:classification-slug
@@ -12125,10 +13199,8 @@ declare namespace Components {
12125
13199
  repeatable?: boolean;
12126
13200
  has_primary?: boolean;
12127
13201
  /**
12128
- * Controls how updates to this attribute are handled.
12129
- * - `direct` (default): update is applied immediately. No changeset created.
12130
- * - `external`: update creates a changeset, auto-cleared on matching external update (e.g. ERP inbound sync via ?direct=true).
12131
- * - `approval`: update creates a changeset, requires explicit human approval.
13202
+ * Controls how updates to this attribute are handled. See the `EditMode`
13203
+ * schema for the per-mode semantics. Defaults to `direct`.
12132
13204
  *
12133
13205
  */
12134
13206
  edit_mode?: "direct" | "external" | "approval";
@@ -12169,6 +13241,45 @@ declare namespace Components {
12169
13241
  }
12170
13242
  }
12171
13243
  declare namespace Paths {
13244
+ namespace AbortEntityImport {
13245
+ namespace Parameters {
13246
+ export type JobId = /**
13247
+ * The unique identifier of the import job.
13248
+ * example:
13249
+ * abc123
13250
+ */
13251
+ Components.Schemas.ExportJobId;
13252
+ export type Schema = string;
13253
+ }
13254
+ export interface QueryParameters {
13255
+ job_id: Parameters.JobId;
13256
+ schema: Parameters.Schema;
13257
+ }
13258
+ namespace Responses {
13259
+ export interface $202 {
13260
+ /**
13261
+ * The job status at the time of the request.
13262
+ */
13263
+ status?: string;
13264
+ jobPollId?: string;
13265
+ }
13266
+ export interface $400 {
13267
+ }
13268
+ export interface $403 {
13269
+ }
13270
+ export interface $404 {
13271
+ }
13272
+ export type $429 = /**
13273
+ * A generic error returned by the API
13274
+ * example:
13275
+ * {
13276
+ * "status": 429,
13277
+ * "error": "Too many requests. Try again later."
13278
+ * }
13279
+ */
13280
+ Components.Responses.TooManyRequestsError;
13281
+ }
13282
+ }
12172
13283
  namespace AddRelations {
12173
13284
  namespace Parameters {
12174
13285
  export type ActivityId = /**
@@ -12323,6 +13434,7 @@ declare namespace Paths {
12323
13434
  }
12324
13435
  namespace Autocomplete {
12325
13436
  namespace Parameters {
13437
+ export type Anonymize = boolean;
12326
13438
  /**
12327
13439
  * example:
12328
13440
  * _tags
@@ -12338,6 +13450,7 @@ declare namespace Paths {
12338
13450
  Components.Schemas.EntitySlug /* ^[a-zA-Z0-9_-]+$ */;
12339
13451
  }
12340
13452
  export interface QueryParameters {
13453
+ anonymize?: Parameters.Anonymize;
12341
13454
  input?: Parameters.Input;
12342
13455
  attribute: /**
12343
13456
  * example:
@@ -12853,6 +13966,15 @@ declare namespace Paths {
12853
13966
  namespace Responses {
12854
13967
  export interface $200 {
12855
13968
  }
13969
+ export type $404 = /**
13970
+ * A generic error returned by the API
13971
+ * example:
13972
+ * {
13973
+ * "status": 404,
13974
+ * "error": "Not Found"
13975
+ * }
13976
+ */
13977
+ Components.Responses.NotFoundError;
12856
13978
  export type $429 = /**
12857
13979
  * A generic error returned by the API
12858
13980
  * example:
@@ -13194,6 +14316,7 @@ declare namespace Paths {
13194
14316
  }
13195
14317
  namespace GetActivity {
13196
14318
  namespace Parameters {
14319
+ export type Anonymize = boolean;
13197
14320
  export type Id = /**
13198
14321
  * See https://github.com/ulid/spec
13199
14322
  * example:
@@ -13207,6 +14330,7 @@ declare namespace Paths {
13207
14330
  id: Parameters.Id;
13208
14331
  }
13209
14332
  export interface QueryParameters {
14333
+ anonymize?: Parameters.Anonymize;
13210
14334
  operations_size?: Parameters.OperationsSize;
13211
14335
  operations_from?: Parameters.OperationsFrom;
13212
14336
  }
@@ -13225,6 +14349,7 @@ declare namespace Paths {
13225
14349
  }
13226
14350
  namespace GetEntity {
13227
14351
  namespace Parameters {
14352
+ export type Anonymize = boolean;
13228
14353
  export type Hydrate = boolean;
13229
14354
  export type Id = Components.Schemas.EntityId /* uuid */;
13230
14355
  export type Slug = /**
@@ -13240,6 +14365,7 @@ declare namespace Paths {
13240
14365
  }
13241
14366
  export interface QueryParameters {
13242
14367
  hydrate?: Parameters.Hydrate;
14368
+ anonymize?: Parameters.Anonymize;
13243
14369
  }
13244
14370
  namespace Responses {
13245
14371
  export interface $200 {
@@ -13352,6 +14478,7 @@ declare namespace Paths {
13352
14478
  namespace GetEntityActivityFeed {
13353
14479
  namespace Parameters {
13354
14480
  export type After = string; // date-time
14481
+ export type Anonymize = boolean;
13355
14482
  export type Before = string; // date-time
13356
14483
  export type EndDate = string; // date-time
13357
14484
  /**
@@ -13389,6 +14516,7 @@ declare namespace Paths {
13389
14516
  id: Parameters.Id;
13390
14517
  }
13391
14518
  export interface QueryParameters {
14519
+ anonymize?: Parameters.Anonymize;
13392
14520
  after?: Parameters.After /* date-time */;
13393
14521
  before?: Parameters.Before /* date-time */;
13394
14522
  start_date?: Parameters.StartDate /* date-time */;
@@ -13437,6 +14565,7 @@ declare namespace Paths {
13437
14565
  }
13438
14566
  namespace GetEntityV2 {
13439
14567
  namespace Parameters {
14568
+ export type Anonymize = boolean;
13440
14569
  export type ApplyChangesets = boolean;
13441
14570
  export type Fields = /**
13442
14571
  * List of entity fields to include or exclude in the response
@@ -13471,6 +14600,7 @@ declare namespace Paths {
13471
14600
  }
13472
14601
  export interface QueryParameters {
13473
14602
  hydrate?: Parameters.Hydrate;
14603
+ anonymize?: Parameters.Anonymize;
13474
14604
  fields?: Parameters.Fields;
13475
14605
  apply_changesets?: Parameters.ApplyChangesets;
13476
14606
  }
@@ -13891,6 +15021,7 @@ declare namespace Paths {
13891
15021
  }
13892
15022
  namespace GetRelations {
13893
15023
  namespace Parameters {
15024
+ export type Anonymize = boolean;
13894
15025
  export type ExcludeSchemas = /**
13895
15026
  * URL-friendly identifier for the entity schema
13896
15027
  * example:
@@ -13921,6 +15052,7 @@ declare namespace Paths {
13921
15052
  }
13922
15053
  export interface QueryParameters {
13923
15054
  hydrate?: Parameters.Hydrate;
15055
+ anonymize?: Parameters.Anonymize;
13924
15056
  include_reverse?: Parameters.IncludeReverse;
13925
15057
  from?: Parameters.From;
13926
15058
  size?: Parameters.Size;
@@ -13942,6 +15074,7 @@ declare namespace Paths {
13942
15074
  }
13943
15075
  namespace GetRelationsV2 {
13944
15076
  namespace Parameters {
15077
+ export type Anonymize = boolean;
13945
15078
  export type Fields = /**
13946
15079
  * List of entity fields to include or exclude in the response
13947
15080
  *
@@ -13979,6 +15112,7 @@ declare namespace Paths {
13979
15112
  }
13980
15113
  export interface QueryParameters {
13981
15114
  hydrate?: Parameters.Hydrate;
15115
+ anonymize?: Parameters.Anonymize;
13982
15116
  query?: Parameters.Query;
13983
15117
  include_reverse?: Parameters.IncludeReverse;
13984
15118
  from?: Parameters.From;
@@ -14000,6 +15134,7 @@ declare namespace Paths {
14000
15134
  }
14001
15135
  namespace GetRelationsV3 {
14002
15136
  namespace Parameters {
15137
+ export type Anonymize = boolean;
14003
15138
  export type ExcludeSchemas = /**
14004
15139
  * URL-friendly identifier for the entity schema
14005
15140
  * example:
@@ -14059,6 +15194,7 @@ declare namespace Paths {
14059
15194
  }
14060
15195
  export interface QueryParameters {
14061
15196
  hydrate?: Parameters.Hydrate;
15197
+ anonymize?: Parameters.Anonymize;
14062
15198
  include_reverse?: Parameters.IncludeReverse;
14063
15199
  from?: Parameters.From;
14064
15200
  size?: Parameters.Size;
@@ -14377,7 +15513,7 @@ declare namespace Paths {
14377
15513
  /**
14378
15514
  * ISO 8601 timestamp to filter jobs created after this time (e.g., 2023-01-01T00:00:00Z).
14379
15515
  * example:
14380
- * 2023-01-01T00:00:00Z
15516
+ * 2023-01-01T00:00:00.000Z
14381
15517
  */
14382
15518
  export type CreatedAfter = string; // date-time
14383
15519
  /**
@@ -14403,7 +15539,7 @@ declare namespace Paths {
14403
15539
  created_after?: /**
14404
15540
  * ISO 8601 timestamp to filter jobs created after this time (e.g., 2023-01-01T00:00:00Z).
14405
15541
  * example:
14406
- * 2023-01-01T00:00:00Z
15542
+ * 2023-01-01T00:00:00.000Z
14407
15543
  */
14408
15544
  Parameters.CreatedAfter /* date-time */;
14409
15545
  sort_pending_first?: /* When true, sorts PENDING status jobs to the top of the results. */ Parameters.SortPendingFirst;
@@ -14492,6 +15628,7 @@ declare namespace Paths {
14492
15628
  }
14493
15629
  namespace ListChangesets {
14494
15630
  namespace Parameters {
15631
+ export type Anonymize = boolean;
14495
15632
  export type Id = Components.Schemas.EntityId /* uuid */;
14496
15633
  export type Slug = /**
14497
15634
  * URL-friendly identifier for the entity schema
@@ -14504,6 +15641,9 @@ declare namespace Paths {
14504
15641
  slug: Parameters.Slug;
14505
15642
  id: Parameters.Id;
14506
15643
  }
15644
+ export interface QueryParameters {
15645
+ anonymize?: Parameters.Anonymize;
15646
+ }
14507
15647
  namespace Responses {
14508
15648
  export type $200 = /* Map of attribute name to pending changeset. At most one changeset per attribute. */ Components.Schemas.ChangesetMap;
14509
15649
  export type $404 = /**
@@ -14560,6 +15700,7 @@ declare namespace Paths {
14560
15700
  */
14561
15701
  Components.Schemas.FieldsParam;
14562
15702
  export type From = number;
15703
+ export type Q = string;
14563
15704
  export type Size = number;
14564
15705
  export type Slug = /**
14565
15706
  * URL-friendly identifier for the entity schema
@@ -14574,6 +15715,7 @@ declare namespace Paths {
14574
15715
  sort?: Parameters.Sort;
14575
15716
  from?: Parameters.From;
14576
15717
  size?: Parameters.Size;
15718
+ q?: Parameters.Q;
14577
15719
  fields?: Parameters.Fields;
14578
15720
  }
14579
15721
  namespace Responses {
@@ -16456,7 +17598,7 @@ export interface OperationMethods {
16456
17598
  * Returns all pending changesets for an entity.
16457
17599
  */
16458
17600
  'listChangesets'(
16459
- parameters?: Parameters<Paths.ListChangesets.PathParameters> | null,
17601
+ parameters?: Parameters<Paths.ListChangesets.QueryParameters & Paths.ListChangesets.PathParameters> | null,
16460
17602
  data?: any,
16461
17603
  config?: AxiosRequestConfig
16462
17604
  ): OperationResponse<Paths.ListChangesets.Responses.$200>
@@ -16594,6 +17736,25 @@ export interface OperationMethods {
16594
17736
  data?: Paths.ImportEntities.RequestBody,
16595
17737
  config?: AxiosRequestConfig
16596
17738
  ): OperationResponse<Paths.ImportEntities.Responses.$201>
17739
+ /**
17740
+ * abortEntityImport - Abort a running entity import
17741
+ *
17742
+ * Asks a running import to stop. Rows already imported are **kept** - this is a stop, not a
17743
+ * rollback - and the job still produces its result reports for everything that landed before
17744
+ * the stop, then reaches the terminal status `CANCELLED`.
17745
+ *
17746
+ * The stop is cooperative: the worker notices the request at its next batch boundary, so the
17747
+ * job typically reaches `CANCELLED` within seconds. Poll `POST /v1/entity:import` with the
17748
+ * `job_id` as usual to observe it.
17749
+ *
17750
+ * Idempotent - aborting an already-aborted or already-finished job is not an error.
17751
+ *
17752
+ */
17753
+ 'abortEntityImport'(
17754
+ parameters?: Parameters<Paths.AbortEntityImport.QueryParameters> | null,
17755
+ data?: any,
17756
+ config?: AxiosRequestConfig
17757
+ ): OperationResponse<Paths.AbortEntityImport.Responses.$202>
16597
17758
  /**
16598
17759
  * listSavedViews - listSavedViews
16599
17760
  *
@@ -17690,7 +18851,7 @@ export interface PathsDictionary {
17690
18851
  * Returns all pending changesets for an entity.
17691
18852
  */
17692
18853
  'get'(
17693
- parameters?: Parameters<Paths.ListChangesets.PathParameters> | null,
18854
+ parameters?: Parameters<Paths.ListChangesets.QueryParameters & Paths.ListChangesets.PathParameters> | null,
17694
18855
  data?: any,
17695
18856
  config?: AxiosRequestConfig
17696
18857
  ): OperationResponse<Paths.ListChangesets.Responses.$200>
@@ -17845,6 +19006,27 @@ export interface PathsDictionary {
17845
19006
  config?: AxiosRequestConfig
17846
19007
  ): OperationResponse<Paths.ImportEntities.Responses.$201>
17847
19008
  }
19009
+ ['/v1/entity:abortImport']: {
19010
+ /**
19011
+ * abortEntityImport - Abort a running entity import
19012
+ *
19013
+ * Asks a running import to stop. Rows already imported are **kept** - this is a stop, not a
19014
+ * rollback - and the job still produces its result reports for everything that landed before
19015
+ * the stop, then reaches the terminal status `CANCELLED`.
19016
+ *
19017
+ * The stop is cooperative: the worker notices the request at its next batch boundary, so the
19018
+ * job typically reaches `CANCELLED` within seconds. Poll `POST /v1/entity:import` with the
19019
+ * `job_id` as usual to observe it.
19020
+ *
19021
+ * Idempotent - aborting an already-aborted or already-finished job is not an error.
19022
+ *
19023
+ */
19024
+ 'post'(
19025
+ parameters?: Parameters<Paths.AbortEntityImport.QueryParameters> | null,
19026
+ data?: any,
19027
+ config?: AxiosRequestConfig
19028
+ ): OperationResponse<Paths.AbortEntityImport.Responses.$202>
19029
+ }
17848
19030
  ['/v1/entity/views']: {
17849
19031
  /**
17850
19032
  * listSavedViews - listSavedViews
@@ -18347,11 +19529,13 @@ export type ActivityItem = Components.Schemas.ActivityItem;
18347
19529
  export type ActivityType = Components.Schemas.ActivityType;
18348
19530
  export type AddressAttribute = Components.Schemas.AddressAttribute;
18349
19531
  export type AddressRelationAttribute = Components.Schemas.AddressRelationAttribute;
19532
+ export type AdjustInstallmentCapabilityConfig = Components.Schemas.AdjustInstallmentCapabilityConfig;
18350
19533
  export type Attribute = Components.Schemas.Attribute;
18351
19534
  export type AttributeWithCompositeID = Components.Schemas.AttributeWithCompositeID;
18352
19535
  export type AutomationAttribute = Components.Schemas.AutomationAttribute;
18353
19536
  export type BaseActivityItem = Components.Schemas.BaseActivityItem;
18354
19537
  export type BaseAttribute = Components.Schemas.BaseAttribute;
19538
+ export type BaseConditionDefinition = Components.Schemas.BaseConditionDefinition;
18355
19539
  export type BaseEntity = Components.Schemas.BaseEntity;
18356
19540
  export type BlueprintEntityId = Components.Schemas.BlueprintEntityId;
18357
19541
  export type BooleanAttribute = Components.Schemas.BooleanAttribute;
@@ -18363,12 +19547,14 @@ export type ClassificationIdOrPattern = Components.Schemas.ClassificationIdOrPat
18363
19547
  export type ClassificationSlug = Components.Schemas.ClassificationSlug;
18364
19548
  export type ClassificationsUpdate = Components.Schemas.ClassificationsUpdate;
18365
19549
  export type ComputedAttribute = Components.Schemas.ComputedAttribute;
19550
+ export type ConditionDefinition = Components.Schemas.ConditionDefinition;
18366
19551
  export type ConsentAttribute = Components.Schemas.ConsentAttribute;
18367
19552
  export type CountryAttribute = Components.Schemas.CountryAttribute;
18368
19553
  export type CurrencyAttribute = Components.Schemas.CurrencyAttribute;
18369
19554
  export type DateAttribute = Components.Schemas.DateAttribute;
18370
19555
  export type DefaultAddressFields = Components.Schemas.DefaultAddressFields;
18371
19556
  export type ESClusterAssignment = Components.Schemas.ESClusterAssignment;
19557
+ export type EditMode = Components.Schemas.EditMode;
18372
19558
  export type EditModeConfig = Components.Schemas.EditModeConfig;
18373
19559
  export type EmailAttribute = Components.Schemas.EmailAttribute;
18374
19560
  export type Entity = Components.Schemas.Entity;
@@ -18384,6 +19570,7 @@ export type EntityImportParams = Components.Schemas.EntityImportParams;
18384
19570
  export type EntityItem = Components.Schemas.EntityItem;
18385
19571
  export type EntityListParams = Components.Schemas.EntityListParams;
18386
19572
  export type EntityOperation = Components.Schemas.EntityOperation;
19573
+ export type EntityOperationSourceContext = Components.Schemas.EntityOperationSourceContext;
18387
19574
  export type EntityOwner = Components.Schemas.EntityOwner;
18388
19575
  export type EntitySchema = Components.Schemas.EntitySchema;
18389
19576
  export type EntitySchemaGroup = Components.Schemas.EntitySchemaGroup;
@@ -18432,8 +19619,10 @@ export type IsTemplate = Components.Schemas.IsTemplate;
18432
19619
  export type Language = Components.Schemas.Language;
18433
19620
  export type LinkAttribute = Components.Schemas.LinkAttribute;
18434
19621
  export type ListSavedViewsResults = Components.Schemas.ListSavedViewsResults;
19622
+ export type LocationConditionDefinition = Components.Schemas.LocationConditionDefinition;
18435
19623
  export type MatchStrategy = Components.Schemas.MatchStrategy;
18436
19624
  export type MessageEmailAddressAttribute = Components.Schemas.MessageEmailAddressAttribute;
19625
+ export type MeterReadingChangesetEntry = Components.Schemas.MeterReadingChangesetEntry;
18437
19626
  export type MultiSelectAttribute = Components.Schemas.MultiSelectAttribute;
18438
19627
  export type NullableEntity = Components.Schemas.NullableEntity;
18439
19628
  export type NumberAttribute = Components.Schemas.NumberAttribute;
@@ -18455,11 +19644,13 @@ export type SavedView = Components.Schemas.SavedView;
18455
19644
  export type SavedViewId = Components.Schemas.SavedViewId;
18456
19645
  export type SavedViewItem = Components.Schemas.SavedViewItem;
18457
19646
  export type SavedViewPartial = Components.Schemas.SavedViewPartial;
19647
+ export type ScalarConditionDefinition = Components.Schemas.ScalarConditionDefinition;
18458
19648
  export type SchemaId = Components.Schemas.SchemaId;
18459
19649
  export type SearchFilter = Components.Schemas.SearchFilter;
18460
19650
  export type SearchFilterValue = Components.Schemas.SearchFilterValue;
18461
19651
  export type SearchMappings = Components.Schemas.SearchMappings;
18462
19652
  export type SelectAttribute = Components.Schemas.SelectAttribute;
19653
+ export type SelectConditionDefinition = Components.Schemas.SelectConditionDefinition;
18463
19654
  export type SequenceAttribute = Components.Schemas.SequenceAttribute;
18464
19655
  export type SettingFlag = Components.Schemas.SettingFlag;
18465
19656
  export type StatusAttribute = Components.Schemas.StatusAttribute;