@vindentech/api-client 0.3.0-next.14 → 0.3.0-next.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generated/_all.d.ts +13 -0
- package/dist/generated/_all.d.ts.map +1 -1
- package/dist/generated/_all.js +13 -0
- package/dist/generated/_all.js.map +1 -1
- package/dist/generated/_permissions.d.ts +142 -1
- package/dist/generated/_permissions.d.ts.map +1 -1
- package/dist/generated/_permissions.js +36 -0
- package/dist/generated/_permissions.js.map +1 -1
- package/dist/generated/index.schemas.d.ts +1758 -52
- package/dist/generated/index.schemas.d.ts.map +1 -1
- package/dist/generated/index.schemas.js +583 -0
- package/dist/generated/index.schemas.js.map +1 -1
- package/dist/generated/me-notification-preferences/me-notification-preferences.d.ts +23 -0
- package/dist/generated/me-notification-preferences/me-notification-preferences.d.ts.map +1 -0
- package/dist/generated/me-notification-preferences/me-notification-preferences.js +12 -0
- package/dist/generated/me-notification-preferences/me-notification-preferences.js.map +1 -0
- package/dist/generated/notification-dispatches/notification-dispatches.d.ts +51 -0
- package/dist/generated/notification-dispatches/notification-dispatches.d.ts.map +1 -0
- package/dist/generated/notification-dispatches/notification-dispatches.js +27 -0
- package/dist/generated/notification-dispatches/notification-dispatches.js.map +1 -0
- package/dist/generated/notification-events/notification-events.d.ts +44 -0
- package/dist/generated/notification-events/notification-events.d.ts.map +1 -0
- package/dist/generated/notification-events/notification-events.js +35 -0
- package/dist/generated/notification-events/notification-events.js.map +1 -0
- package/dist/generated/notification-health/notification-health.d.ts +23 -0
- package/dist/generated/notification-health/notification-health.d.ts.map +1 -0
- package/dist/generated/notification-health/notification-health.js +12 -0
- package/dist/generated/notification-health/notification-health.js.map +1 -0
- package/dist/generated/notification-preferences/notification-preferences.d.ts +30 -0
- package/dist/generated/notification-preferences/notification-preferences.d.ts.map +1 -0
- package/dist/generated/notification-preferences/notification-preferences.js +18 -0
- package/dist/generated/notification-preferences/notification-preferences.js.map +1 -0
- package/dist/generated/notification-requests/notification-requests.d.ts +30 -0
- package/dist/generated/notification-requests/notification-requests.d.ts.map +1 -0
- package/dist/generated/notification-requests/notification-requests.js +11 -0
- package/dist/generated/notification-requests/notification-requests.js.map +1 -0
- package/dist/generated/notification-rules/notification-rules.d.ts +186 -0
- package/dist/generated/notification-rules/notification-rules.d.ts.map +1 -0
- package/dist/generated/notification-rules/notification-rules.js +88 -0
- package/dist/generated/notification-rules/notification-rules.js.map +1 -0
- package/dist/generated/notification-settings/notification-settings.d.ts +23 -0
- package/dist/generated/notification-settings/notification-settings.d.ts.map +1 -0
- package/dist/generated/notification-settings/notification-settings.js +12 -0
- package/dist/generated/notification-settings/notification-settings.js.map +1 -0
- package/dist/generated/notification-templates/notification-templates.d.ts +305 -0
- package/dist/generated/notification-templates/notification-templates.d.ts.map +1 -0
- package/dist/generated/notification-templates/notification-templates.js +121 -0
- package/dist/generated/notification-templates/notification-templates.js.map +1 -0
- package/dist/generated/orders/orders.d.ts +15 -1
- package/dist/generated/orders/orders.d.ts.map +1 -1
- package/dist/generated/orders/orders.js +12 -0
- package/dist/generated/orders/orders.js.map +1 -1
- package/dist/generated/sender-identities/sender-identities.d.ts +44 -0
- package/dist/generated/sender-identities/sender-identities.d.ts.map +1 -0
- package/dist/generated/sender-identities/sender-identities.js +28 -0
- package/dist/generated/sender-identities/sender-identities.js.map +1 -0
- package/dist/generated/service-points/service-points.d.ts +23 -0
- package/dist/generated/service-points/service-points.d.ts.map +1 -0
- package/dist/generated/service-points/service-points.js +18 -0
- package/dist/generated/service-points/service-points.js.map +1 -0
- package/dist/generated/suppressions/suppressions.d.ts +37 -0
- package/dist/generated/suppressions/suppressions.d.ts.map +1 -0
- package/dist/generated/suppressions/suppressions.js +36 -0
- package/dist/generated/suppressions/suppressions.js.map +1 -0
- package/dist/generated/unsubscribe/unsubscribe.d.ts +55 -0
- package/dist/generated/unsubscribe/unsubscribe.d.ts.map +1 -0
- package/dist/generated/unsubscribe/unsubscribe.js +22 -0
- package/dist/generated/unsubscribe/unsubscribe.js.map +1 -0
- package/package.json +1 -1
|
@@ -100,6 +100,21 @@ export interface OrderProductDto {
|
|
|
100
100
|
quantity: number;
|
|
101
101
|
status: string;
|
|
102
102
|
}
|
|
103
|
+
export interface OrderEstimateItemDto {
|
|
104
|
+
/**
|
|
105
|
+
* What the customer called it.
|
|
106
|
+
* @nullable
|
|
107
|
+
*/
|
|
108
|
+
reference: string | null;
|
|
109
|
+
/** How many of this type the customer expects to hand over. */
|
|
110
|
+
quantity: number;
|
|
111
|
+
/** @nullable */
|
|
112
|
+
lengthMm: number | null;
|
|
113
|
+
/** @nullable */
|
|
114
|
+
widthMm: number | null;
|
|
115
|
+
/** @nullable */
|
|
116
|
+
heightMm: number | null;
|
|
117
|
+
}
|
|
103
118
|
export interface OrderEstimateDto {
|
|
104
119
|
volumeCm3: number;
|
|
105
120
|
/** @nullable */
|
|
@@ -116,6 +131,11 @@ export interface OrderEstimateDto {
|
|
|
116
131
|
isHousehold: boolean | null;
|
|
117
132
|
/** @nullable */
|
|
118
133
|
comment: string | null;
|
|
134
|
+
/**
|
|
135
|
+
* The declared expected lines the estimate's volumeCm3 / itemCount are computed from; null on an estimate that carries only the aggregate figures.
|
|
136
|
+
* @nullable
|
|
137
|
+
*/
|
|
138
|
+
estimatedItems: OrderEstimateItemDto[] | null;
|
|
119
139
|
}
|
|
120
140
|
export interface OrderLegDto {
|
|
121
141
|
orderTransportLegId: string;
|
|
@@ -145,6 +165,13 @@ export interface OrderLegDto {
|
|
|
145
165
|
city: string | null;
|
|
146
166
|
/** @nullable */
|
|
147
167
|
countryCode: string | null;
|
|
168
|
+
/**
|
|
169
|
+
* Opaque provider-specific service-point (parcel locker) id; DELIVERY legs only.
|
|
170
|
+
* @nullable
|
|
171
|
+
*/
|
|
172
|
+
servicePointId: string | null;
|
|
173
|
+
/** @nullable */
|
|
174
|
+
servicePointProvider: string | null;
|
|
148
175
|
/** @nullable */
|
|
149
176
|
floorLevel: number | null;
|
|
150
177
|
/** @nullable */
|
|
@@ -238,6 +265,11 @@ export interface OrderDetailDto {
|
|
|
238
265
|
/** @nullable */
|
|
239
266
|
estimate: OrderDetailDtoEstimate;
|
|
240
267
|
legs: OrderLegDto[];
|
|
268
|
+
/**
|
|
269
|
+
* The transport_slot id of this order's material:delivery reservation, if any — derived from the originating cart, not a stored column.
|
|
270
|
+
* @nullable
|
|
271
|
+
*/
|
|
272
|
+
materialsTimeslotId: string | null;
|
|
241
273
|
}
|
|
242
274
|
export type OrderTimelineEventDtoKind = typeof OrderTimelineEventDtoKind[keyof typeof OrderTimelineEventDtoKind];
|
|
243
275
|
export declare const OrderTimelineEventDtoKind: {
|
|
@@ -449,6 +481,27 @@ export interface EditOrderItemsDto {
|
|
|
449
481
|
/** Full desired set of product lines. Omit a stored line to remove it; an empty array removes all removable lines. */
|
|
450
482
|
items: OrderItemInput[];
|
|
451
483
|
}
|
|
484
|
+
export interface EstimateItemInputDto {
|
|
485
|
+
/** What the customer calls the goods (free text). */
|
|
486
|
+
reference: string;
|
|
487
|
+
/**
|
|
488
|
+
* How many of this type the customer expects.
|
|
489
|
+
* @minimum 1
|
|
490
|
+
*/
|
|
491
|
+
quantity: number;
|
|
492
|
+
/** @minimum 1 */
|
|
493
|
+
lengthMm?: number;
|
|
494
|
+
/** @minimum 1 */
|
|
495
|
+
widthMm?: number;
|
|
496
|
+
/** @minimum 1 */
|
|
497
|
+
heightMm?: number;
|
|
498
|
+
}
|
|
499
|
+
export interface EditOrderEstimateDto {
|
|
500
|
+
/** Full desired set of declared expected lines; an empty array clears them (and zeroes the estimate's volume). */
|
|
501
|
+
estimatedItems: EstimateItemInputDto[];
|
|
502
|
+
/** Customer-visible note stored on the estimate. */
|
|
503
|
+
comment?: string;
|
|
504
|
+
}
|
|
452
505
|
/**
|
|
453
506
|
* Target sales_order status. Must be reachable from the order's current status via sales_order_status_transition. The terminal targets COMPLETED / CANCELLED are rejected here (transition_requires_named_command) — use POST /complete, /deliver-all, or /cancel.
|
|
454
507
|
*/
|
|
@@ -1535,6 +1588,29 @@ export interface AnonymousSessionDto {
|
|
|
1535
1588
|
sessionToken: string;
|
|
1536
1589
|
expiresAt: string;
|
|
1537
1590
|
}
|
|
1591
|
+
export interface UnsubscribePageDto {
|
|
1592
|
+
/** The `messaging.message_category` the opt-out applies to. */
|
|
1593
|
+
category: string;
|
|
1594
|
+
/** The channel the opt-out applies to. Email-only in v1. */
|
|
1595
|
+
channel: string;
|
|
1596
|
+
/** The tenant's display name, for the page's branding line. */
|
|
1597
|
+
tenantDisplayName: string;
|
|
1598
|
+
/** Whether the token is past its expiry. An expired token still opts out, but the POST requires `confirmed: true` — it answers 409 confirm_required otherwise. */
|
|
1599
|
+
expired: boolean;
|
|
1600
|
+
}
|
|
1601
|
+
export interface ConfirmUnsubscribeDto {
|
|
1602
|
+
/** Set true to complete an opt-out with an EXPIRED token. The GET response's `expired` flag is what tells the page to ask; without it an expired token answers 409 confirm_required. */
|
|
1603
|
+
confirmed?: boolean;
|
|
1604
|
+
/** RFC 8058 one-click. A conforming mail client posts this as `application/x-www-form-urlencoded` with the exact value `One-Click`; no other caller sets it. Any value is accepted by validation, but only `One-Click` (case-insensitive) is treated as a one-click request. */
|
|
1605
|
+
'List-Unsubscribe'?: string;
|
|
1606
|
+
}
|
|
1607
|
+
export interface UnsubscribeResultDto {
|
|
1608
|
+
/** Always true when the request succeeded. */
|
|
1609
|
+
optedOut: boolean;
|
|
1610
|
+
category: string;
|
|
1611
|
+
channel: string;
|
|
1612
|
+
tenantDisplayName: string;
|
|
1613
|
+
}
|
|
1538
1614
|
export type CreateCartDtoCartType = typeof CreateCartDtoCartType[keyof typeof CreateCartDtoCartType];
|
|
1539
1615
|
export declare const CreateCartDtoCartType: {
|
|
1540
1616
|
readonly PICKUP_ESTIMATE: "PICKUP_ESTIMATE";
|
|
@@ -1592,6 +1668,41 @@ export interface CartLocationDto {
|
|
|
1592
1668
|
/** @nullable */
|
|
1593
1669
|
extraStorageM2: number | null;
|
|
1594
1670
|
}
|
|
1671
|
+
/**
|
|
1672
|
+
* @nullable
|
|
1673
|
+
*/
|
|
1674
|
+
export type CartDeliveryLocationDtoServicePointProvider = typeof CartDeliveryLocationDtoServicePointProvider[keyof typeof CartDeliveryLocationDtoServicePointProvider] | null;
|
|
1675
|
+
export declare const CartDeliveryLocationDtoServicePointProvider: {
|
|
1676
|
+
readonly POSTI: "POSTI";
|
|
1677
|
+
};
|
|
1678
|
+
export interface CartDeliveryLocationDto {
|
|
1679
|
+
/** @nullable */
|
|
1680
|
+
addressLine1: string | null;
|
|
1681
|
+
/** @nullable */
|
|
1682
|
+
addressLine2: string | null;
|
|
1683
|
+
/** @nullable */
|
|
1684
|
+
zipCode: string | null;
|
|
1685
|
+
/** @nullable */
|
|
1686
|
+
city: string | null;
|
|
1687
|
+
/** @nullable */
|
|
1688
|
+
countryCode: string | null;
|
|
1689
|
+
/** @nullable */
|
|
1690
|
+
squareMeters: number | null;
|
|
1691
|
+
/** @nullable */
|
|
1692
|
+
numberOfRooms: number | null;
|
|
1693
|
+
/** @nullable */
|
|
1694
|
+
floor: number | null;
|
|
1695
|
+
/** @nullable */
|
|
1696
|
+
elevatorType: string | null;
|
|
1697
|
+
/** @nullable */
|
|
1698
|
+
isBackyardHouse: boolean | null;
|
|
1699
|
+
/** @nullable */
|
|
1700
|
+
extraStorageM2: number | null;
|
|
1701
|
+
/** @nullable */
|
|
1702
|
+
servicePointId: string | null;
|
|
1703
|
+
/** @nullable */
|
|
1704
|
+
servicePointProvider: CartDeliveryLocationDtoServicePointProvider;
|
|
1705
|
+
}
|
|
1595
1706
|
/**
|
|
1596
1707
|
* @nullable
|
|
1597
1708
|
*/
|
|
@@ -1600,7 +1711,13 @@ export type CartItemDtoMetadata = {
|
|
|
1600
1711
|
} | null;
|
|
1601
1712
|
export interface CartItemDto {
|
|
1602
1713
|
cartProductId: string;
|
|
1603
|
-
|
|
1714
|
+
/**
|
|
1715
|
+
* The product this line stands for; null on an estimate line.
|
|
1716
|
+
* @nullable
|
|
1717
|
+
*/
|
|
1718
|
+
productId: string | null;
|
|
1719
|
+
/** @nullable */
|
|
1720
|
+
productReference: string | null;
|
|
1604
1721
|
quantity: number;
|
|
1605
1722
|
/** @nullable */
|
|
1606
1723
|
lengthMm: number | null;
|
|
@@ -1637,6 +1754,11 @@ export interface CartHoldDto {
|
|
|
1637
1754
|
reservationId: string;
|
|
1638
1755
|
/** @nullable */
|
|
1639
1756
|
slotId: string | null;
|
|
1757
|
+
/**
|
|
1758
|
+
* Which cart component this hold is for (move:pickup | move:delivery | material:delivery); null = legacy single-component cart.
|
|
1759
|
+
* @nullable
|
|
1760
|
+
*/
|
|
1761
|
+
componentKey: string | null;
|
|
1640
1762
|
/** HELD | CONFIRMED | EXPIRED | CANCELLED */
|
|
1641
1763
|
status: string;
|
|
1642
1764
|
/** @nullable */
|
|
@@ -1684,9 +1806,14 @@ export interface CartDto {
|
|
|
1684
1806
|
customer: CartContactDto;
|
|
1685
1807
|
contact: CartContactDto;
|
|
1686
1808
|
pickup: CartLocationDto;
|
|
1687
|
-
delivery:
|
|
1809
|
+
delivery: CartDeliveryLocationDto;
|
|
1688
1810
|
/** @nullable */
|
|
1689
1811
|
estimatedHours: string | null;
|
|
1812
|
+
/**
|
|
1813
|
+
* The transport_slot id of this cart's material:delivery hold, if any — derived from holds[], not a stored column.
|
|
1814
|
+
* @nullable
|
|
1815
|
+
*/
|
|
1816
|
+
materialsTimeslotId: string | null;
|
|
1690
1817
|
/**
|
|
1691
1818
|
* Versioned pricing payload (schema_version tracked server-side)
|
|
1692
1819
|
* @nullable
|
|
@@ -1711,6 +1838,7 @@ export declare const QuoteLineDtoKind: {
|
|
|
1711
1838
|
readonly MERCHANDISE: "MERCHANDISE";
|
|
1712
1839
|
readonly TRANSPORT: "TRANSPORT";
|
|
1713
1840
|
readonly INSURANCE: "INSURANCE";
|
|
1841
|
+
readonly START_FEE: "START_FEE";
|
|
1714
1842
|
};
|
|
1715
1843
|
export interface QuoteLineDto {
|
|
1716
1844
|
kind: QuoteLineDtoKind;
|
|
@@ -1730,11 +1858,45 @@ export interface QuoteLineDto {
|
|
|
1730
1858
|
/** Whether this line qualifies for the RUT labour deduction */
|
|
1731
1859
|
rutEligible: boolean;
|
|
1732
1860
|
}
|
|
1861
|
+
export interface QuoteVolumeDto {
|
|
1862
|
+
/** Total goods volume in cm³ */
|
|
1863
|
+
totalCm3: number;
|
|
1864
|
+
/** Total goods volume in m³, rounded to 4 decimal places */
|
|
1865
|
+
totalM3: number;
|
|
1866
|
+
/** Cart lines missing at least one dimension */
|
|
1867
|
+
incompleteLines: number;
|
|
1868
|
+
}
|
|
1733
1869
|
export interface QuoteCouponDto {
|
|
1734
1870
|
code: string;
|
|
1735
1871
|
/** Discount applied to the payable total, integer minor units */
|
|
1736
1872
|
discountMinor: number;
|
|
1737
1873
|
}
|
|
1874
|
+
export interface QuoteBindingDto {
|
|
1875
|
+
bindingPlanId: string;
|
|
1876
|
+
code: string;
|
|
1877
|
+
displayName: string;
|
|
1878
|
+
/**
|
|
1879
|
+
* Null or 0 = flexible, no binding
|
|
1880
|
+
* @nullable
|
|
1881
|
+
*/
|
|
1882
|
+
durationMonths: number | null;
|
|
1883
|
+
/** True when this plan came from the organization's active contract rather than the cart's selection */
|
|
1884
|
+
fromContract: boolean;
|
|
1885
|
+
}
|
|
1886
|
+
export interface QuoteDiscountDto {
|
|
1887
|
+
/** binding_period | campaign | contract | ... */
|
|
1888
|
+
ruleType: string;
|
|
1889
|
+
/**
|
|
1890
|
+
* Article code the rate applies to; null = every article
|
|
1891
|
+
* @nullable
|
|
1892
|
+
*/
|
|
1893
|
+
articleCode: string | null;
|
|
1894
|
+
/**
|
|
1895
|
+
* Basis points (1000 = 10.00%)
|
|
1896
|
+
* @nullable
|
|
1897
|
+
*/
|
|
1898
|
+
discountPercentBps: number | null;
|
|
1899
|
+
}
|
|
1738
1900
|
export interface QuoteTotalsDto {
|
|
1739
1901
|
/** Sum of line totals ex-VAT, minor units */
|
|
1740
1902
|
exVatMinor: number;
|
|
@@ -1749,20 +1911,34 @@ export interface QuoteTotalsDto {
|
|
|
1749
1911
|
* @nullable
|
|
1750
1912
|
*/
|
|
1751
1913
|
export type QuoteResponseDtoCoupon = QuoteCouponDto | null;
|
|
1914
|
+
/**
|
|
1915
|
+
* The binding plan in force for this quote, or null when there is none
|
|
1916
|
+
* @nullable
|
|
1917
|
+
*/
|
|
1918
|
+
export type QuoteResponseDtoBinding = QuoteBindingDto | null;
|
|
1752
1919
|
export interface QuoteResponseDto {
|
|
1753
1920
|
cartId: string;
|
|
1754
1921
|
/** ISO 4217 — the currency all amounts are expressed in */
|
|
1755
1922
|
currencyCode: string;
|
|
1756
1923
|
lines: QuoteLineDto[];
|
|
1924
|
+
/** Goods volume — the basis for per-m³ rates */
|
|
1925
|
+
volume: QuoteVolumeDto;
|
|
1757
1926
|
/** @nullable */
|
|
1758
1927
|
coupon: QuoteResponseDtoCoupon;
|
|
1759
1928
|
/**
|
|
1760
|
-
*
|
|
1929
|
+
* The binding plan in force for this quote, or null when there is none
|
|
1930
|
+
* @nullable
|
|
1931
|
+
*/
|
|
1932
|
+
binding: QuoteResponseDtoBinding;
|
|
1933
|
+
/** The in-force binding plan's rate matrix — display data, NOT reflected in `totals` (see QuoteDiscountDto and the BINDING_DISCOUNT entry in `deferred`) */
|
|
1934
|
+
discounts: QuoteDiscountDto[];
|
|
1935
|
+
/**
|
|
1936
|
+
* Total RUT labour deduction in minor units. Null when RUT does not apply, and also when every RUT-eligible line was priced from a source that carries no post-deduction price to derive it from (see TRANSPORT_RUT in `deferred`) — null means 'not computed', never 'zero saving'.
|
|
1761
1937
|
* @nullable
|
|
1762
1938
|
*/
|
|
1763
1939
|
rutDeductionMinor: number | null;
|
|
1764
1940
|
totals: QuoteTotalsDto;
|
|
1765
|
-
/**
|
|
1941
|
+
/** Components present on the cart that this quote did not price, or reductions it did not apply. Their absence from `totals` is intentional, never a zero charge. Values: GOODS, SERVICE, START_FEE, TRANSPORT (no configured article, price row, or computable rate — no line is emitted at all), INSURANCE (no plan catalogue exists yet), TRANSPORT_PARTIAL (a transport line IS priced from the rate card but excludes a component the cart carries no quantity for — a per-hour rate with no `estimatedHours`, or a per-unit rate with no shipment manifest — so the transport amount is a floor, not the final charge), TRANSPORT_RUT (the line is RUT-eligible but its price source carries no post-deduction price to derive the amount from), BINDING_DISCOUNT (the plan carries rates in `discounts` that invoicing does not yet honour, so the totals exclude them), MATERIAL_DELIVERY (the cart holds a material:delivery timeslot; its underlying slot may carry a real price, but materials pricing is not yet designed, so it is excluded from `totals` rather than priced as ordinary transport). */
|
|
1766
1942
|
deferred: string[];
|
|
1767
1943
|
}
|
|
1768
1944
|
/**
|
|
@@ -1889,6 +2065,129 @@ export interface CartLocationInputDto {
|
|
|
1889
2065
|
/** @nullable */
|
|
1890
2066
|
extraStorageM2?: CartLocationInputDtoExtraStorageM2;
|
|
1891
2067
|
}
|
|
2068
|
+
/**
|
|
2069
|
+
* @nullable
|
|
2070
|
+
*/
|
|
2071
|
+
export type CartDeliveryLocationInputDtoAddressLine1 = {
|
|
2072
|
+
[key: string]: unknown;
|
|
2073
|
+
} | null;
|
|
2074
|
+
/**
|
|
2075
|
+
* @nullable
|
|
2076
|
+
*/
|
|
2077
|
+
export type CartDeliveryLocationInputDtoAddressLine2 = {
|
|
2078
|
+
[key: string]: unknown;
|
|
2079
|
+
} | null;
|
|
2080
|
+
/**
|
|
2081
|
+
* @nullable
|
|
2082
|
+
*/
|
|
2083
|
+
export type CartDeliveryLocationInputDtoZipCode = {
|
|
2084
|
+
[key: string]: unknown;
|
|
2085
|
+
} | null;
|
|
2086
|
+
/**
|
|
2087
|
+
* @nullable
|
|
2088
|
+
*/
|
|
2089
|
+
export type CartDeliveryLocationInputDtoCity = {
|
|
2090
|
+
[key: string]: unknown;
|
|
2091
|
+
} | null;
|
|
2092
|
+
/**
|
|
2093
|
+
* ISO 3166-1 alpha-2
|
|
2094
|
+
* @nullable
|
|
2095
|
+
*/
|
|
2096
|
+
export type CartDeliveryLocationInputDtoCountryCode = {
|
|
2097
|
+
[key: string]: unknown;
|
|
2098
|
+
} | null;
|
|
2099
|
+
/**
|
|
2100
|
+
* @nullable
|
|
2101
|
+
*/
|
|
2102
|
+
export type CartDeliveryLocationInputDtoSquareMeters = {
|
|
2103
|
+
[key: string]: unknown;
|
|
2104
|
+
} | null;
|
|
2105
|
+
/**
|
|
2106
|
+
* @nullable
|
|
2107
|
+
*/
|
|
2108
|
+
export type CartDeliveryLocationInputDtoNumberOfRooms = {
|
|
2109
|
+
[key: string]: unknown;
|
|
2110
|
+
} | null;
|
|
2111
|
+
/**
|
|
2112
|
+
* @nullable
|
|
2113
|
+
*/
|
|
2114
|
+
export type CartDeliveryLocationInputDtoFloor = {
|
|
2115
|
+
[key: string]: unknown;
|
|
2116
|
+
} | null;
|
|
2117
|
+
/**
|
|
2118
|
+
* Value from the elevator_type lookup (e.g. NONE, SMALL, BIG)
|
|
2119
|
+
* @nullable
|
|
2120
|
+
*/
|
|
2121
|
+
export type CartDeliveryLocationInputDtoElevatorType = {
|
|
2122
|
+
[key: string]: unknown;
|
|
2123
|
+
} | null;
|
|
2124
|
+
/**
|
|
2125
|
+
* @nullable
|
|
2126
|
+
*/
|
|
2127
|
+
export type CartDeliveryLocationInputDtoIsBackyardHouse = {
|
|
2128
|
+
[key: string]: unknown;
|
|
2129
|
+
} | null;
|
|
2130
|
+
/**
|
|
2131
|
+
* @nullable
|
|
2132
|
+
*/
|
|
2133
|
+
export type CartDeliveryLocationInputDtoExtraStorageM2 = {
|
|
2134
|
+
[key: string]: unknown;
|
|
2135
|
+
} | null;
|
|
2136
|
+
/**
|
|
2137
|
+
* Opaque provider-specific id; requires servicePointProvider alongside it.
|
|
2138
|
+
* @nullable
|
|
2139
|
+
*/
|
|
2140
|
+
export type CartDeliveryLocationInputDtoServicePointId = {
|
|
2141
|
+
[key: string]: unknown;
|
|
2142
|
+
} | null;
|
|
2143
|
+
/**
|
|
2144
|
+
* Required alongside servicePointId.
|
|
2145
|
+
* @nullable
|
|
2146
|
+
*/
|
|
2147
|
+
export type CartDeliveryLocationInputDtoServicePointProvider = typeof CartDeliveryLocationInputDtoServicePointProvider[keyof typeof CartDeliveryLocationInputDtoServicePointProvider] | null;
|
|
2148
|
+
export declare const CartDeliveryLocationInputDtoServicePointProvider: {
|
|
2149
|
+
readonly POSTI: "POSTI";
|
|
2150
|
+
};
|
|
2151
|
+
export interface CartDeliveryLocationInputDto {
|
|
2152
|
+
/** @nullable */
|
|
2153
|
+
addressLine1?: CartDeliveryLocationInputDtoAddressLine1;
|
|
2154
|
+
/** @nullable */
|
|
2155
|
+
addressLine2?: CartDeliveryLocationInputDtoAddressLine2;
|
|
2156
|
+
/** @nullable */
|
|
2157
|
+
zipCode?: CartDeliveryLocationInputDtoZipCode;
|
|
2158
|
+
/** @nullable */
|
|
2159
|
+
city?: CartDeliveryLocationInputDtoCity;
|
|
2160
|
+
/**
|
|
2161
|
+
* ISO 3166-1 alpha-2
|
|
2162
|
+
* @nullable
|
|
2163
|
+
*/
|
|
2164
|
+
countryCode?: CartDeliveryLocationInputDtoCountryCode;
|
|
2165
|
+
/** @nullable */
|
|
2166
|
+
squareMeters?: CartDeliveryLocationInputDtoSquareMeters;
|
|
2167
|
+
/** @nullable */
|
|
2168
|
+
numberOfRooms?: CartDeliveryLocationInputDtoNumberOfRooms;
|
|
2169
|
+
/** @nullable */
|
|
2170
|
+
floor?: CartDeliveryLocationInputDtoFloor;
|
|
2171
|
+
/**
|
|
2172
|
+
* Value from the elevator_type lookup (e.g. NONE, SMALL, BIG)
|
|
2173
|
+
* @nullable
|
|
2174
|
+
*/
|
|
2175
|
+
elevatorType?: CartDeliveryLocationInputDtoElevatorType;
|
|
2176
|
+
/** @nullable */
|
|
2177
|
+
isBackyardHouse?: CartDeliveryLocationInputDtoIsBackyardHouse;
|
|
2178
|
+
/** @nullable */
|
|
2179
|
+
extraStorageM2?: CartDeliveryLocationInputDtoExtraStorageM2;
|
|
2180
|
+
/**
|
|
2181
|
+
* Opaque provider-specific id; requires servicePointProvider alongside it.
|
|
2182
|
+
* @nullable
|
|
2183
|
+
*/
|
|
2184
|
+
servicePointId?: CartDeliveryLocationInputDtoServicePointId;
|
|
2185
|
+
/**
|
|
2186
|
+
* Required alongside servicePointId.
|
|
2187
|
+
* @nullable
|
|
2188
|
+
*/
|
|
2189
|
+
servicePointProvider?: CartDeliveryLocationInputDtoServicePointProvider;
|
|
2190
|
+
}
|
|
1892
2191
|
/**
|
|
1893
2192
|
* @nullable
|
|
1894
2193
|
*/
|
|
@@ -1916,8 +2215,10 @@ export type CartItemInputDtoMetadata = {
|
|
|
1916
2215
|
export interface CartItemInputDto {
|
|
1917
2216
|
/** Present = reconcile against this existing line; absent = insert a new line. Lines missing from the submitted array are removed. */
|
|
1918
2217
|
cartProductId?: string;
|
|
1919
|
-
/**
|
|
1920
|
-
|
|
2218
|
+
/** An existing product this line stands for — a CONCRETE line, materialised at placement as an order line against that product. Must belong to the cart's organization, so it requires a claimed (non-guest) cart. Omit it for an ESTIMATE line: `productReference` then carries what the customer typed, and placement snapshots the line onto the order's estimate instead of creating an order line. */
|
|
2219
|
+
productId?: string;
|
|
2220
|
+
/** Catalog string, not an FK. Required when `productId` is absent (an estimate line names its goods this way); optional alongside `productId`, where the product carries the name. */
|
|
2221
|
+
productReference?: string;
|
|
1921
2222
|
/** @minimum 1 */
|
|
1922
2223
|
quantity: number;
|
|
1923
2224
|
/** @nullable */
|
|
@@ -1991,7 +2292,7 @@ export type UpdateCartDtoInsuranceId = {
|
|
|
1991
2292
|
[key: string]: unknown;
|
|
1992
2293
|
} | null;
|
|
1993
2294
|
/**
|
|
1994
|
-
*
|
|
2295
|
+
* Selected binding plan. Validated against the tenant's active billing.binding_plan rows — an unknown, inactive or foreign-tenant plan is rejected with 422 invalid_binding_plan. Null clears the selection.
|
|
1995
2296
|
* @nullable
|
|
1996
2297
|
*/
|
|
1997
2298
|
export type UpdateCartDtoBindingId = {
|
|
@@ -2018,7 +2319,7 @@ export type UpdateCartDtoPickup = CartLocationInputDto | null;
|
|
|
2018
2319
|
/**
|
|
2019
2320
|
* @nullable
|
|
2020
2321
|
*/
|
|
2021
|
-
export type UpdateCartDtoDelivery =
|
|
2322
|
+
export type UpdateCartDtoDelivery = CartDeliveryLocationInputDto | null;
|
|
2022
2323
|
/**
|
|
2023
2324
|
* @nullable
|
|
2024
2325
|
*/
|
|
@@ -2041,7 +2342,7 @@ export interface UpdateCartDto {
|
|
|
2041
2342
|
*/
|
|
2042
2343
|
insuranceId?: UpdateCartDtoInsuranceId;
|
|
2043
2344
|
/**
|
|
2044
|
-
*
|
|
2345
|
+
* Selected binding plan. Validated against the tenant's active billing.binding_plan rows — an unknown, inactive or foreign-tenant plan is rejected with 422 invalid_binding_plan. Null clears the selection.
|
|
2045
2346
|
* @nullable
|
|
2046
2347
|
*/
|
|
2047
2348
|
bindingId?: UpdateCartDtoBindingId;
|
|
@@ -2066,6 +2367,15 @@ export interface ClaimCartDto {
|
|
|
2066
2367
|
/** Staff claim-on-behalf target organization. Org users always claim into their own organization. */
|
|
2067
2368
|
organizationId?: string;
|
|
2068
2369
|
}
|
|
2370
|
+
/**
|
|
2371
|
+
* Which cart component this hold is for. Omit for the legacy single-component behavior (the move itself) — a cart's leg-producing holds must be either all omitted or all explicit, never mixed.
|
|
2372
|
+
*/
|
|
2373
|
+
export type HoldTimeslotDtoComponentKey = typeof HoldTimeslotDtoComponentKey[keyof typeof HoldTimeslotDtoComponentKey];
|
|
2374
|
+
export declare const HoldTimeslotDtoComponentKey: {
|
|
2375
|
+
readonly 'move:pickup': "move:pickup";
|
|
2376
|
+
readonly 'move:delivery': "move:delivery";
|
|
2377
|
+
readonly 'material:delivery': "material:delivery";
|
|
2378
|
+
};
|
|
2069
2379
|
/**
|
|
2070
2380
|
* @nullable
|
|
2071
2381
|
*/
|
|
@@ -2082,6 +2392,8 @@ export interface HoldTimeslotDto {
|
|
|
2082
2392
|
expectedRevision: number;
|
|
2083
2393
|
/** transport_slot id to draw capacity from */
|
|
2084
2394
|
timeslotId: string;
|
|
2395
|
+
/** Which cart component this hold is for. Omit for the legacy single-component behavior (the move itself) — a cart's leg-producing holds must be either all omitted or all explicit, never mixed. */
|
|
2396
|
+
componentKey?: HoldTimeslotDtoComponentKey;
|
|
2085
2397
|
/** @minimum 1 */
|
|
2086
2398
|
quantityOrders?: number;
|
|
2087
2399
|
/** @nullable */
|
|
@@ -7007,6 +7319,7 @@ export declare const CreateEmployeeAssignmentDtoKind: {
|
|
|
7007
7319
|
export type CreateEmployeeAssignmentDtoRole = typeof CreateEmployeeAssignmentDtoRole[keyof typeof CreateEmployeeAssignmentDtoRole];
|
|
7008
7320
|
export declare const CreateEmployeeAssignmentDtoRole: {
|
|
7009
7321
|
readonly 'operations-manager': "operations-manager";
|
|
7322
|
+
readonly 'customer-service': "customer-service";
|
|
7010
7323
|
readonly 'warehouse-admin': "warehouse-admin";
|
|
7011
7324
|
readonly 'warehouse-operator': "warehouse-operator";
|
|
7012
7325
|
readonly 'carrier-admin': "carrier-admin";
|
|
@@ -7078,6 +7391,7 @@ export interface EmployeeAssignmentSyncResultDto {
|
|
|
7078
7391
|
export type UpdateEmployeeAssignmentDtoRole = typeof UpdateEmployeeAssignmentDtoRole[keyof typeof UpdateEmployeeAssignmentDtoRole];
|
|
7079
7392
|
export declare const UpdateEmployeeAssignmentDtoRole: {
|
|
7080
7393
|
readonly 'operations-manager': "operations-manager";
|
|
7394
|
+
readonly 'customer-service': "customer-service";
|
|
7081
7395
|
readonly 'warehouse-admin': "warehouse-admin";
|
|
7082
7396
|
readonly 'warehouse-operator': "warehouse-operator";
|
|
7083
7397
|
readonly 'carrier-admin': "carrier-admin";
|
|
@@ -7097,51 +7411,1144 @@ export interface OffboardEmployeeDto {
|
|
|
7097
7411
|
/** Free-text reason, recorded in the service log for ops follow-up. `employee_assignment` has no column for it, so it is not stored on the row or echoed back. */
|
|
7098
7412
|
reason?: string;
|
|
7099
7413
|
}
|
|
7100
|
-
export type
|
|
7101
|
-
|
|
7102
|
-
|
|
7103
|
-
|
|
7104
|
-
|
|
7105
|
-
|
|
7106
|
-
|
|
7107
|
-
|
|
7108
|
-
|
|
7109
|
-
|
|
7110
|
-
|
|
7111
|
-
|
|
7112
|
-
|
|
7113
|
-
|
|
7114
|
-
|
|
7115
|
-
|
|
7116
|
-
|
|
7117
|
-
|
|
7118
|
-
|
|
7119
|
-
|
|
7120
|
-
|
|
7121
|
-
|
|
7122
|
-
|
|
7123
|
-
|
|
7124
|
-
|
|
7125
|
-
|
|
7126
|
-
|
|
7127
|
-
|
|
7128
|
-
|
|
7414
|
+
export type NotificationEventSummaryDtoDefaultCategory = typeof NotificationEventSummaryDtoDefaultCategory[keyof typeof NotificationEventSummaryDtoDefaultCategory];
|
|
7415
|
+
export declare const NotificationEventSummaryDtoDefaultCategory: {
|
|
7416
|
+
readonly marketing: "marketing";
|
|
7417
|
+
readonly operational: "operational";
|
|
7418
|
+
readonly transactional: "transactional";
|
|
7419
|
+
readonly billing: "billing";
|
|
7420
|
+
readonly security: "security";
|
|
7421
|
+
readonly system: "system";
|
|
7422
|
+
};
|
|
7423
|
+
export type NotificationEventSummaryDtoAvailableChannelsItem = typeof NotificationEventSummaryDtoAvailableChannelsItem[keyof typeof NotificationEventSummaryDtoAvailableChannelsItem];
|
|
7424
|
+
export declare const NotificationEventSummaryDtoAvailableChannelsItem: {
|
|
7425
|
+
readonly email: "email";
|
|
7426
|
+
readonly sms: "sms";
|
|
7427
|
+
readonly push: "push";
|
|
7428
|
+
readonly webhook: "webhook";
|
|
7429
|
+
};
|
|
7430
|
+
export type NotificationEventSummaryDtoLifecycleStatus = typeof NotificationEventSummaryDtoLifecycleStatus[keyof typeof NotificationEventSummaryDtoLifecycleStatus];
|
|
7431
|
+
export declare const NotificationEventSummaryDtoLifecycleStatus: {
|
|
7432
|
+
readonly active: "active";
|
|
7433
|
+
readonly deprecated: "deprecated";
|
|
7434
|
+
readonly retired: "retired";
|
|
7435
|
+
};
|
|
7436
|
+
export interface NotificationEventSummaryDto {
|
|
7437
|
+
eventKey: string;
|
|
7438
|
+
version: number;
|
|
7439
|
+
displayName: string;
|
|
7440
|
+
/** @nullable */
|
|
7441
|
+
description: string | null;
|
|
7442
|
+
defaultCategory: NotificationEventSummaryDtoDefaultCategory;
|
|
7443
|
+
availableChannels: NotificationEventSummaryDtoAvailableChannelsItem[];
|
|
7444
|
+
lifecycleStatus: NotificationEventSummaryDtoLifecycleStatus;
|
|
7445
|
+
/** @nullable */
|
|
7446
|
+
supersededByVersion: number | null;
|
|
7447
|
+
}
|
|
7448
|
+
/**
|
|
7449
|
+
* @nullable
|
|
7450
|
+
*/
|
|
7451
|
+
export type ContractPathDtoExampleValue = {
|
|
7452
|
+
[key: string]: unknown;
|
|
7453
|
+
} | null;
|
|
7454
|
+
export interface ContractPathDto {
|
|
7455
|
+
path: string;
|
|
7456
|
+
type: string;
|
|
7457
|
+
format?: string;
|
|
7458
|
+
required: boolean;
|
|
7459
|
+
pii: boolean;
|
|
7460
|
+
display_label: string;
|
|
7461
|
+
/** @nullable */
|
|
7462
|
+
example_value?: ContractPathDtoExampleValue;
|
|
7463
|
+
}
|
|
7464
|
+
export type NotificationEventDtoDefaultCategory = typeof NotificationEventDtoDefaultCategory[keyof typeof NotificationEventDtoDefaultCategory];
|
|
7465
|
+
export declare const NotificationEventDtoDefaultCategory: {
|
|
7466
|
+
readonly marketing: "marketing";
|
|
7467
|
+
readonly operational: "operational";
|
|
7468
|
+
readonly transactional: "transactional";
|
|
7469
|
+
readonly billing: "billing";
|
|
7470
|
+
readonly security: "security";
|
|
7471
|
+
readonly system: "system";
|
|
7472
|
+
};
|
|
7473
|
+
export type NotificationEventDtoAvailableChannelsItem = typeof NotificationEventDtoAvailableChannelsItem[keyof typeof NotificationEventDtoAvailableChannelsItem];
|
|
7474
|
+
export declare const NotificationEventDtoAvailableChannelsItem: {
|
|
7475
|
+
readonly email: "email";
|
|
7476
|
+
readonly sms: "sms";
|
|
7477
|
+
readonly push: "push";
|
|
7478
|
+
readonly webhook: "webhook";
|
|
7479
|
+
};
|
|
7480
|
+
export type NotificationEventDtoLifecycleStatus = typeof NotificationEventDtoLifecycleStatus[keyof typeof NotificationEventDtoLifecycleStatus];
|
|
7481
|
+
export declare const NotificationEventDtoLifecycleStatus: {
|
|
7482
|
+
readonly active: "active";
|
|
7483
|
+
readonly deprecated: "deprecated";
|
|
7484
|
+
readonly retired: "retired";
|
|
7129
7485
|
};
|
|
7130
|
-
|
|
7131
|
-
|
|
7132
|
-
|
|
7133
|
-
|
|
7134
|
-
|
|
7135
|
-
readonly DROP_OFF: "DROP_OFF";
|
|
7136
|
-
readonly TRANSFER: "TRANSFER";
|
|
7137
|
-
readonly PICKING: "PICKING";
|
|
7138
|
-
readonly MERCHANDISE_SALE: "MERCHANDISE_SALE";
|
|
7486
|
+
/**
|
|
7487
|
+
* JSON Schema (draft 2020-12) for the event payload.
|
|
7488
|
+
*/
|
|
7489
|
+
export type NotificationEventDtoContract = {
|
|
7490
|
+
[key: string]: unknown;
|
|
7139
7491
|
};
|
|
7140
|
-
export
|
|
7141
|
-
|
|
7142
|
-
|
|
7143
|
-
|
|
7144
|
-
|
|
7492
|
+
export interface NotificationEventDto {
|
|
7493
|
+
eventKey: string;
|
|
7494
|
+
version: number;
|
|
7495
|
+
displayName: string;
|
|
7496
|
+
/** @nullable */
|
|
7497
|
+
description: string | null;
|
|
7498
|
+
defaultCategory: NotificationEventDtoDefaultCategory;
|
|
7499
|
+
availableChannels: NotificationEventDtoAvailableChannelsItem[];
|
|
7500
|
+
lifecycleStatus: NotificationEventDtoLifecycleStatus;
|
|
7501
|
+
/** @nullable */
|
|
7502
|
+
supersededByVersion: number | null;
|
|
7503
|
+
/** JSON Schema (draft 2020-12) for the event payload. */
|
|
7504
|
+
contract: NotificationEventDtoContract;
|
|
7505
|
+
contractPaths: ContractPathDto[];
|
|
7506
|
+
createdAt: string;
|
|
7507
|
+
updatedAt: string;
|
|
7508
|
+
}
|
|
7509
|
+
export type RecipientSpecDtoKind = typeof RecipientSpecDtoKind[keyof typeof RecipientSpecDtoKind];
|
|
7510
|
+
export declare const RecipientSpecDtoKind: {
|
|
7511
|
+
readonly event_field: "event_field";
|
|
7512
|
+
readonly org_contact_role: "org_contact_role";
|
|
7513
|
+
readonly tenant_role: "tenant_role";
|
|
7514
|
+
readonly static_email: "static_email";
|
|
7515
|
+
readonly static_phone: "static_phone";
|
|
7516
|
+
};
|
|
7517
|
+
/**
|
|
7518
|
+
* Delivery slot. `cc`/`bcc` are email-only.
|
|
7519
|
+
*/
|
|
7520
|
+
export type RecipientSpecDtoDelivery = typeof RecipientSpecDtoDelivery[keyof typeof RecipientSpecDtoDelivery];
|
|
7521
|
+
export declare const RecipientSpecDtoDelivery: {
|
|
7522
|
+
readonly to: "to";
|
|
7523
|
+
readonly cc: "cc";
|
|
7524
|
+
readonly bcc: "bcc";
|
|
7525
|
+
};
|
|
7526
|
+
export interface RecipientSpecDto {
|
|
7527
|
+
kind: RecipientSpecDtoKind;
|
|
7528
|
+
/** Contract path for `event_field` specs — must exist in the event's contractPaths. */
|
|
7529
|
+
path?: string;
|
|
7530
|
+
/** Role for `org_contact_role` / `tenant_role` specs. */
|
|
7531
|
+
role?: string;
|
|
7532
|
+
/** Literal address for `static_email` / `static_phone`. */
|
|
7533
|
+
value?: string;
|
|
7534
|
+
/** Delivery slot. `cc`/`bcc` are email-only. */
|
|
7535
|
+
delivery?: RecipientSpecDtoDelivery;
|
|
7536
|
+
}
|
|
7537
|
+
export type NotificationRuleDtoChannel = typeof NotificationRuleDtoChannel[keyof typeof NotificationRuleDtoChannel];
|
|
7538
|
+
export declare const NotificationRuleDtoChannel: {
|
|
7539
|
+
readonly email: "email";
|
|
7540
|
+
readonly sms: "sms";
|
|
7541
|
+
readonly push: "push";
|
|
7542
|
+
readonly webhook: "webhook";
|
|
7543
|
+
};
|
|
7544
|
+
export type NotificationRuleDtoCategory = typeof NotificationRuleDtoCategory[keyof typeof NotificationRuleDtoCategory];
|
|
7545
|
+
export declare const NotificationRuleDtoCategory: {
|
|
7546
|
+
readonly marketing: "marketing";
|
|
7547
|
+
readonly operational: "operational";
|
|
7548
|
+
readonly transactional: "transactional";
|
|
7549
|
+
readonly billing: "billing";
|
|
7550
|
+
readonly security: "security";
|
|
7551
|
+
readonly system: "system";
|
|
7552
|
+
};
|
|
7553
|
+
export interface NotificationRuleDto {
|
|
7554
|
+
tenantNotificationRuleId: string;
|
|
7555
|
+
eventKey: string;
|
|
7556
|
+
eventVersion: number;
|
|
7557
|
+
channel: NotificationRuleDtoChannel;
|
|
7558
|
+
category: NotificationRuleDtoCategory;
|
|
7559
|
+
isEnabled: boolean;
|
|
7560
|
+
/** @nullable */
|
|
7561
|
+
notificationTemplateId: string | null;
|
|
7562
|
+
recipients: RecipientSpecDto[];
|
|
7563
|
+
createdAt: string;
|
|
7564
|
+
updatedAt: string;
|
|
7565
|
+
}
|
|
7566
|
+
export type CreateNotificationRuleDtoChannel = typeof CreateNotificationRuleDtoChannel[keyof typeof CreateNotificationRuleDtoChannel];
|
|
7567
|
+
export declare const CreateNotificationRuleDtoChannel: {
|
|
7568
|
+
readonly email: "email";
|
|
7569
|
+
readonly sms: "sms";
|
|
7570
|
+
readonly push: "push";
|
|
7571
|
+
readonly webhook: "webhook";
|
|
7572
|
+
};
|
|
7573
|
+
/**
|
|
7574
|
+
* Defaults to the event's category. Only operational ↔ transactional relabelling is permitted (02 §3).
|
|
7575
|
+
*/
|
|
7576
|
+
export type CreateNotificationRuleDtoCategory = typeof CreateNotificationRuleDtoCategory[keyof typeof CreateNotificationRuleDtoCategory];
|
|
7577
|
+
export declare const CreateNotificationRuleDtoCategory: {
|
|
7578
|
+
readonly marketing: "marketing";
|
|
7579
|
+
readonly operational: "operational";
|
|
7580
|
+
readonly transactional: "transactional";
|
|
7581
|
+
readonly billing: "billing";
|
|
7582
|
+
readonly security: "security";
|
|
7583
|
+
readonly system: "system";
|
|
7584
|
+
};
|
|
7585
|
+
/**
|
|
7586
|
+
* NULL falls back to the platform system template for (event, channel, locale).
|
|
7587
|
+
*/
|
|
7588
|
+
export type CreateNotificationRuleDtoNotificationTemplateId = {
|
|
7589
|
+
[key: string]: unknown;
|
|
7590
|
+
};
|
|
7591
|
+
export interface CreateNotificationRuleDto {
|
|
7592
|
+
/** Must exist in the event catalog and not be retired. */
|
|
7593
|
+
eventKey: string;
|
|
7594
|
+
/** The contract version to pin to. Defaults to the event's active version — the rule stays on it until an explicit migration. */
|
|
7595
|
+
eventVersion?: number;
|
|
7596
|
+
channel: CreateNotificationRuleDtoChannel;
|
|
7597
|
+
/** Defaults to the event's category. Only operational ↔ transactional relabelling is permitted (02 §3). */
|
|
7598
|
+
category?: CreateNotificationRuleDtoCategory;
|
|
7599
|
+
/** NULL falls back to the platform system template for (event, channel, locale). */
|
|
7600
|
+
notificationTemplateId?: CreateNotificationRuleDtoNotificationTemplateId;
|
|
7601
|
+
/** Validated against the pinned version's contractPaths at save (02 §5). */
|
|
7602
|
+
recipients: RecipientSpecDto[];
|
|
7603
|
+
}
|
|
7604
|
+
export type UpdateNotificationRuleDtoCategory = typeof UpdateNotificationRuleDtoCategory[keyof typeof UpdateNotificationRuleDtoCategory];
|
|
7605
|
+
export declare const UpdateNotificationRuleDtoCategory: {
|
|
7606
|
+
readonly marketing: "marketing";
|
|
7607
|
+
readonly operational: "operational";
|
|
7608
|
+
readonly transactional: "transactional";
|
|
7609
|
+
readonly billing: "billing";
|
|
7610
|
+
readonly security: "security";
|
|
7611
|
+
readonly system: "system";
|
|
7612
|
+
};
|
|
7613
|
+
export interface UpdateNotificationRuleDto {
|
|
7614
|
+
/** Migrate the rule to another contract version. Rejected (`event_version_migration_invalid`) when a recipient path or a template variable does not exist there. */
|
|
7615
|
+
eventVersion?: number;
|
|
7616
|
+
category?: UpdateNotificationRuleDtoCategory;
|
|
7617
|
+
/** @nullable */
|
|
7618
|
+
notificationTemplateId?: string | null;
|
|
7619
|
+
recipients?: RecipientSpecDto[];
|
|
7620
|
+
}
|
|
7621
|
+
export interface EnableRuleDto {
|
|
7622
|
+
/** The estimate shown in the confirmation panel (from `GET …/recipient-estimate`). */
|
|
7623
|
+
confirmedRecipientEstimate: number;
|
|
7624
|
+
/** Required above the typed-confirmation threshold: the tenant slug, typed by the admin. */
|
|
7625
|
+
typedConfirmation?: string;
|
|
7626
|
+
}
|
|
7627
|
+
export type RecipientSpecEstimateDtoKind = typeof RecipientSpecEstimateDtoKind[keyof typeof RecipientSpecEstimateDtoKind];
|
|
7628
|
+
export declare const RecipientSpecEstimateDtoKind: {
|
|
7629
|
+
readonly event_field: "event_field";
|
|
7630
|
+
readonly org_contact_role: "org_contact_role";
|
|
7631
|
+
readonly tenant_role: "tenant_role";
|
|
7632
|
+
readonly static_email: "static_email";
|
|
7633
|
+
readonly static_phone: "static_phone";
|
|
7634
|
+
};
|
|
7635
|
+
export interface RecipientSpecEstimateDto {
|
|
7636
|
+
/** Index into the rule's recipients array. */
|
|
7637
|
+
specIndex: number;
|
|
7638
|
+
kind: RecipientSpecEstimateDtoKind;
|
|
7639
|
+
/** Addresses this spec resolves to per event. */
|
|
7640
|
+
estimate: number;
|
|
7641
|
+
}
|
|
7642
|
+
export type RecipientEstimateDtoBasis = typeof RecipientEstimateDtoBasis[keyof typeof RecipientEstimateDtoBasis];
|
|
7643
|
+
export declare const RecipientEstimateDtoBasis: {
|
|
7644
|
+
readonly recent_events: "recent_events";
|
|
7645
|
+
readonly preview_data: "preview_data";
|
|
7646
|
+
};
|
|
7647
|
+
export interface RecipientEstimateDto {
|
|
7648
|
+
/** Addresses one firing of this event would reach. */
|
|
7649
|
+
estimate: number;
|
|
7650
|
+
/** How many sample events the estimate averaged over. */
|
|
7651
|
+
sampleSize: number;
|
|
7652
|
+
basis: RecipientEstimateDtoBasis;
|
|
7653
|
+
perSpec: RecipientSpecEstimateDto[];
|
|
7654
|
+
}
|
|
7655
|
+
export type NotificationTemplateDtoChannel = typeof NotificationTemplateDtoChannel[keyof typeof NotificationTemplateDtoChannel];
|
|
7656
|
+
export declare const NotificationTemplateDtoChannel: {
|
|
7657
|
+
readonly email: "email";
|
|
7658
|
+
readonly sms: "sms";
|
|
7659
|
+
readonly push: "push";
|
|
7660
|
+
readonly webhook: "webhook";
|
|
7661
|
+
};
|
|
7662
|
+
export type NotificationTemplateDtoEngine = typeof NotificationTemplateDtoEngine[keyof typeof NotificationTemplateDtoEngine];
|
|
7663
|
+
export declare const NotificationTemplateDtoEngine: {
|
|
7664
|
+
readonly handlebars: "handlebars";
|
|
7665
|
+
readonly mjml: "mjml";
|
|
7666
|
+
readonly react_email: "react_email";
|
|
7667
|
+
readonly plain_text: "plain_text";
|
|
7668
|
+
};
|
|
7669
|
+
export interface NotificationTemplateDto {
|
|
7670
|
+
notificationTemplateId: string;
|
|
7671
|
+
/** @nullable */
|
|
7672
|
+
organizationId: string | null;
|
|
7673
|
+
channel: NotificationTemplateDtoChannel;
|
|
7674
|
+
eventKey: string;
|
|
7675
|
+
locale: string;
|
|
7676
|
+
name: string;
|
|
7677
|
+
engine: NotificationTemplateDtoEngine;
|
|
7678
|
+
isSystem: boolean;
|
|
7679
|
+
/** @nullable */
|
|
7680
|
+
publishedVersionId: string | null;
|
|
7681
|
+
createdAt: string;
|
|
7682
|
+
updatedAt: string;
|
|
7683
|
+
}
|
|
7684
|
+
export interface PaginatedNotificationTemplatesDto {
|
|
7685
|
+
/** The page of rows. */
|
|
7686
|
+
items: NotificationTemplateDto[];
|
|
7687
|
+
/** Exact count of all rows matching the filter, pre-pagination (RLS-scoped). */
|
|
7688
|
+
total: number;
|
|
7689
|
+
/** Effective max rows applied (after defaults/clamp). */
|
|
7690
|
+
limit: number;
|
|
7691
|
+
/** Effective rows skipped applied. */
|
|
7692
|
+
offset: number;
|
|
7693
|
+
}
|
|
7694
|
+
export type CreateNotificationTemplateDtoChannel = typeof CreateNotificationTemplateDtoChannel[keyof typeof CreateNotificationTemplateDtoChannel];
|
|
7695
|
+
export declare const CreateNotificationTemplateDtoChannel: {
|
|
7696
|
+
readonly email: "email";
|
|
7697
|
+
readonly sms: "sms";
|
|
7698
|
+
readonly push: "push";
|
|
7699
|
+
readonly webhook: "webhook";
|
|
7700
|
+
};
|
|
7701
|
+
export interface CreateNotificationTemplateDto {
|
|
7702
|
+
eventKey: string;
|
|
7703
|
+
channel: CreateNotificationTemplateDtoChannel;
|
|
7704
|
+
locale?: string;
|
|
7705
|
+
name: string;
|
|
7706
|
+
/** NULL = the tenant default; set = that organization's override. */
|
|
7707
|
+
organizationId?: string;
|
|
7708
|
+
/** Clone this template's published content into the first draft — the Customize action on a system template, and the tenant-default → org-override path. */
|
|
7709
|
+
sourceTemplateId?: string;
|
|
7710
|
+
}
|
|
7711
|
+
export type TemplateVersionSummaryDtoLifecycleStatus = typeof TemplateVersionSummaryDtoLifecycleStatus[keyof typeof TemplateVersionSummaryDtoLifecycleStatus];
|
|
7712
|
+
export declare const TemplateVersionSummaryDtoLifecycleStatus: {
|
|
7713
|
+
readonly draft: "draft";
|
|
7714
|
+
readonly published: "published";
|
|
7715
|
+
readonly archived: "archived";
|
|
7716
|
+
};
|
|
7717
|
+
export interface TemplateVersionSummaryDto {
|
|
7718
|
+
notificationTemplateVersionId: string;
|
|
7719
|
+
notificationTemplateId: string;
|
|
7720
|
+
version: number;
|
|
7721
|
+
lifecycleStatus: TemplateVersionSummaryDtoLifecycleStatus;
|
|
7722
|
+
eventVersion: number;
|
|
7723
|
+
createdAt: string;
|
|
7724
|
+
/** @nullable */
|
|
7725
|
+
publishedAt: string | null;
|
|
7726
|
+
/** @nullable */
|
|
7727
|
+
archivedAt: string | null;
|
|
7728
|
+
}
|
|
7729
|
+
export type NotificationTemplateDetailDtoChannel = typeof NotificationTemplateDetailDtoChannel[keyof typeof NotificationTemplateDetailDtoChannel];
|
|
7730
|
+
export declare const NotificationTemplateDetailDtoChannel: {
|
|
7731
|
+
readonly email: "email";
|
|
7732
|
+
readonly sms: "sms";
|
|
7733
|
+
readonly push: "push";
|
|
7734
|
+
readonly webhook: "webhook";
|
|
7735
|
+
};
|
|
7736
|
+
export type NotificationTemplateDetailDtoEngine = typeof NotificationTemplateDetailDtoEngine[keyof typeof NotificationTemplateDetailDtoEngine];
|
|
7737
|
+
export declare const NotificationTemplateDetailDtoEngine: {
|
|
7738
|
+
readonly handlebars: "handlebars";
|
|
7739
|
+
readonly mjml: "mjml";
|
|
7740
|
+
readonly react_email: "react_email";
|
|
7741
|
+
readonly plain_text: "plain_text";
|
|
7742
|
+
};
|
|
7743
|
+
export interface NotificationTemplateDetailDto {
|
|
7744
|
+
notificationTemplateId: string;
|
|
7745
|
+
/** @nullable */
|
|
7746
|
+
organizationId: string | null;
|
|
7747
|
+
channel: NotificationTemplateDetailDtoChannel;
|
|
7748
|
+
eventKey: string;
|
|
7749
|
+
locale: string;
|
|
7750
|
+
name: string;
|
|
7751
|
+
engine: NotificationTemplateDetailDtoEngine;
|
|
7752
|
+
isSystem: boolean;
|
|
7753
|
+
/** @nullable */
|
|
7754
|
+
publishedVersionId: string | null;
|
|
7755
|
+
createdAt: string;
|
|
7756
|
+
updatedAt: string;
|
|
7757
|
+
versions: TemplateVersionSummaryDto[];
|
|
7758
|
+
}
|
|
7759
|
+
export interface UpdateNotificationTemplateDto {
|
|
7760
|
+
/** The only mutable field: event, channel, locale and organization are the template's identity. */
|
|
7761
|
+
name: string;
|
|
7762
|
+
}
|
|
7763
|
+
export interface CreateTemplateVersionDto {
|
|
7764
|
+
/** Start from this version's content. Cloning an ARCHIVED version is the rollback-with-edits path; the archived row itself is never mutated. */
|
|
7765
|
+
cloneFromVersionId?: string;
|
|
7766
|
+
/** The contract version to author against. Defaults to the cloned version's, else the event's active version. */
|
|
7767
|
+
eventVersion?: number;
|
|
7768
|
+
}
|
|
7769
|
+
export type TemplateVersionDtoLifecycleStatus = typeof TemplateVersionDtoLifecycleStatus[keyof typeof TemplateVersionDtoLifecycleStatus];
|
|
7770
|
+
export declare const TemplateVersionDtoLifecycleStatus: {
|
|
7771
|
+
readonly draft: "draft";
|
|
7772
|
+
readonly published: "published";
|
|
7773
|
+
readonly archived: "archived";
|
|
7774
|
+
};
|
|
7775
|
+
/**
|
|
7776
|
+
* @nullable
|
|
7777
|
+
*/
|
|
7778
|
+
export type TemplateVersionDtoPreviewData = {
|
|
7779
|
+
[key: string]: unknown;
|
|
7780
|
+
} | null;
|
|
7781
|
+
export interface TemplateVersionDto {
|
|
7782
|
+
notificationTemplateVersionId: string;
|
|
7783
|
+
notificationTemplateId: string;
|
|
7784
|
+
version: number;
|
|
7785
|
+
lifecycleStatus: TemplateVersionDtoLifecycleStatus;
|
|
7786
|
+
eventVersion: number;
|
|
7787
|
+
createdAt: string;
|
|
7788
|
+
/** @nullable */
|
|
7789
|
+
publishedAt: string | null;
|
|
7790
|
+
/** @nullable */
|
|
7791
|
+
archivedAt: string | null;
|
|
7792
|
+
/** @nullable */
|
|
7793
|
+
subject: string | null;
|
|
7794
|
+
/** @nullable */
|
|
7795
|
+
preheader: string | null;
|
|
7796
|
+
/** @nullable */
|
|
7797
|
+
bodyHtml: string | null;
|
|
7798
|
+
/** @nullable */
|
|
7799
|
+
bodyText: string | null;
|
|
7800
|
+
referencedVariables: string[];
|
|
7801
|
+
/** @nullable */
|
|
7802
|
+
previewData: TemplateVersionDtoPreviewData;
|
|
7803
|
+
/** @nullable */
|
|
7804
|
+
fromAddress: string | null;
|
|
7805
|
+
/** @nullable */
|
|
7806
|
+
replyTo: string | null;
|
|
7807
|
+
}
|
|
7808
|
+
/**
|
|
7809
|
+
* Sample payload for preview and test-send — contract-validated against eventVersion.
|
|
7810
|
+
*/
|
|
7811
|
+
export type UpdateTemplateVersionDtoPreviewData = {
|
|
7812
|
+
[key: string]: unknown;
|
|
7813
|
+
};
|
|
7814
|
+
export interface UpdateTemplateVersionDto {
|
|
7815
|
+
/**
|
|
7816
|
+
* @maxLength 500
|
|
7817
|
+
* @nullable
|
|
7818
|
+
*/
|
|
7819
|
+
subject?: string | null;
|
|
7820
|
+
/** @nullable */
|
|
7821
|
+
preheader?: string | null;
|
|
7822
|
+
/**
|
|
7823
|
+
* Raw HTML — requires the `template:author_html` capability (04 §5.1).
|
|
7824
|
+
* @nullable
|
|
7825
|
+
*/
|
|
7826
|
+
bodyHtml?: string | null;
|
|
7827
|
+
/**
|
|
7828
|
+
* The plain-text alternative for email; THE message for SMS.
|
|
7829
|
+
* @nullable
|
|
7830
|
+
*/
|
|
7831
|
+
bodyText?: string | null;
|
|
7832
|
+
/** @nullable */
|
|
7833
|
+
fromAddress?: string | null;
|
|
7834
|
+
/** @nullable */
|
|
7835
|
+
replyTo?: string | null;
|
|
7836
|
+
/** Sample payload for preview and test-send — contract-validated against eventVersion. */
|
|
7837
|
+
previewData?: UpdateTemplateVersionDtoPreviewData;
|
|
7838
|
+
/** Re-target the draft at another contract version. */
|
|
7839
|
+
eventVersion?: number;
|
|
7840
|
+
}
|
|
7841
|
+
/**
|
|
7842
|
+
* Defaults to the version's previewData; a supplied payload is contract-validated first.
|
|
7843
|
+
*/
|
|
7844
|
+
export type PreviewTemplateVersionDtoPayload = {
|
|
7845
|
+
[key: string]: unknown;
|
|
7846
|
+
};
|
|
7847
|
+
export interface PreviewTemplateVersionDto {
|
|
7848
|
+
/** Defaults to the version's previewData; a supplied payload is contract-validated first. */
|
|
7849
|
+
payload?: PreviewTemplateVersionDtoPayload;
|
|
7850
|
+
}
|
|
7851
|
+
export type SanitizationWarningDtoKind = typeof SanitizationWarningDtoKind[keyof typeof SanitizationWarningDtoKind];
|
|
7852
|
+
export declare const SanitizationWarningDtoKind: {
|
|
7853
|
+
readonly stripped_tag: "stripped_tag";
|
|
7854
|
+
readonly stripped_attribute: "stripped_attribute";
|
|
7855
|
+
readonly stripped_style: "stripped_style";
|
|
7856
|
+
};
|
|
7857
|
+
export interface SanitizationWarningDto {
|
|
7858
|
+
kind: SanitizationWarningDtoKind;
|
|
7859
|
+
detail: string;
|
|
7860
|
+
}
|
|
7861
|
+
export interface TemplatePreviewDto {
|
|
7862
|
+
subject: string;
|
|
7863
|
+
html: string;
|
|
7864
|
+
text: string;
|
|
7865
|
+
/** SMS only: the segment count for this render. */
|
|
7866
|
+
smsSegments?: number;
|
|
7867
|
+
sanitizationWarnings: SanitizationWarningDto[];
|
|
7868
|
+
links: string[];
|
|
7869
|
+
/** Engine errors. A non-empty list means the version cannot render this payload. */
|
|
7870
|
+
renderErrors: string[];
|
|
7871
|
+
}
|
|
7872
|
+
/**
|
|
7873
|
+
* Defaults to the version's previewData.
|
|
7874
|
+
*/
|
|
7875
|
+
export type TestSendDtoPayload = {
|
|
7876
|
+
[key: string]: unknown;
|
|
7877
|
+
};
|
|
7878
|
+
export interface TestSendDto {
|
|
7879
|
+
/** Format-validated per channel. */
|
|
7880
|
+
to: string;
|
|
7881
|
+
/** Defaults to the version's previewData. */
|
|
7882
|
+
payload?: TestSendDtoPayload;
|
|
7883
|
+
}
|
|
7884
|
+
/**
|
|
7885
|
+
* `suppressed` when the address carries an active suppression: the row is written terminal, not sent. A test cannot punch through a hard block.
|
|
7886
|
+
*/
|
|
7887
|
+
export type TestSendResultDtoGateOutcome = typeof TestSendResultDtoGateOutcome[keyof typeof TestSendResultDtoGateOutcome];
|
|
7888
|
+
export declare const TestSendResultDtoGateOutcome: {
|
|
7889
|
+
readonly queued: "queued";
|
|
7890
|
+
readonly suppressed: "suppressed";
|
|
7891
|
+
};
|
|
7892
|
+
export interface TestSendResultDto {
|
|
7893
|
+
notificationDispatchId: string;
|
|
7894
|
+
/** `suppressed` when the address carries an active suppression: the row is written terminal, not sent. A test cannot punch through a hard block. */
|
|
7895
|
+
gateOutcome: TestSendResultDtoGateOutcome;
|
|
7896
|
+
}
|
|
7897
|
+
export interface PublishFailureDto {
|
|
7898
|
+
/** The 02 §4.2 check that failed. */
|
|
7899
|
+
gate: string;
|
|
7900
|
+
detail: string;
|
|
7901
|
+
/** The content field the failure is in. */
|
|
7902
|
+
field?: string;
|
|
7903
|
+
}
|
|
7904
|
+
export type PublishedTemplateVersionDtoLifecycleStatus = typeof PublishedTemplateVersionDtoLifecycleStatus[keyof typeof PublishedTemplateVersionDtoLifecycleStatus];
|
|
7905
|
+
export declare const PublishedTemplateVersionDtoLifecycleStatus: {
|
|
7906
|
+
readonly draft: "draft";
|
|
7907
|
+
readonly published: "published";
|
|
7908
|
+
readonly archived: "archived";
|
|
7909
|
+
};
|
|
7910
|
+
/**
|
|
7911
|
+
* @nullable
|
|
7912
|
+
*/
|
|
7913
|
+
export type PublishedTemplateVersionDtoPreviewData = {
|
|
7914
|
+
[key: string]: unknown;
|
|
7915
|
+
} | null;
|
|
7916
|
+
export interface PublishedTemplateVersionDto {
|
|
7917
|
+
notificationTemplateVersionId: string;
|
|
7918
|
+
notificationTemplateId: string;
|
|
7919
|
+
version: number;
|
|
7920
|
+
lifecycleStatus: PublishedTemplateVersionDtoLifecycleStatus;
|
|
7921
|
+
eventVersion: number;
|
|
7922
|
+
createdAt: string;
|
|
7923
|
+
/** @nullable */
|
|
7924
|
+
publishedAt: string | null;
|
|
7925
|
+
/** @nullable */
|
|
7926
|
+
archivedAt: string | null;
|
|
7927
|
+
/** @nullable */
|
|
7928
|
+
subject: string | null;
|
|
7929
|
+
/** @nullable */
|
|
7930
|
+
preheader: string | null;
|
|
7931
|
+
/** @nullable */
|
|
7932
|
+
bodyHtml: string | null;
|
|
7933
|
+
/** @nullable */
|
|
7934
|
+
bodyText: string | null;
|
|
7935
|
+
referencedVariables: string[];
|
|
7936
|
+
/** @nullable */
|
|
7937
|
+
previewData: PublishedTemplateVersionDtoPreviewData;
|
|
7938
|
+
/** @nullable */
|
|
7939
|
+
fromAddress: string | null;
|
|
7940
|
+
/** @nullable */
|
|
7941
|
+
replyTo: string | null;
|
|
7942
|
+
warnings: PublishFailureDto[];
|
|
7943
|
+
}
|
|
7944
|
+
export type PreferenceDtoCategory = typeof PreferenceDtoCategory[keyof typeof PreferenceDtoCategory];
|
|
7945
|
+
export declare const PreferenceDtoCategory: {
|
|
7946
|
+
readonly marketing: "marketing";
|
|
7947
|
+
readonly operational: "operational";
|
|
7948
|
+
readonly transactional: "transactional";
|
|
7949
|
+
readonly billing: "billing";
|
|
7950
|
+
readonly security: "security";
|
|
7951
|
+
readonly system: "system";
|
|
7952
|
+
};
|
|
7953
|
+
/**
|
|
7954
|
+
* @nullable
|
|
7955
|
+
*/
|
|
7956
|
+
export type PreferenceDtoChannel = typeof PreferenceDtoChannel[keyof typeof PreferenceDtoChannel] | null;
|
|
7957
|
+
export declare const PreferenceDtoChannel: {
|
|
7958
|
+
readonly email: "email";
|
|
7959
|
+
readonly sms: "sms";
|
|
7960
|
+
readonly push: "push";
|
|
7961
|
+
readonly webhook: "webhook";
|
|
7962
|
+
};
|
|
7963
|
+
export interface PreferenceDto {
|
|
7964
|
+
notificationPreferenceId: string;
|
|
7965
|
+
/** @nullable */
|
|
7966
|
+
userSub: string | null;
|
|
7967
|
+
/** @nullable */
|
|
7968
|
+
contactAddress: string | null;
|
|
7969
|
+
category: PreferenceDtoCategory;
|
|
7970
|
+
/** @nullable */
|
|
7971
|
+
channel: PreferenceDtoChannel;
|
|
7972
|
+
isEnabled: boolean;
|
|
7973
|
+
source: string;
|
|
7974
|
+
updatedAt: string;
|
|
7975
|
+
}
|
|
7976
|
+
export type AddressVerdictDtoCategory = typeof AddressVerdictDtoCategory[keyof typeof AddressVerdictDtoCategory];
|
|
7977
|
+
export declare const AddressVerdictDtoCategory: {
|
|
7978
|
+
readonly marketing: "marketing";
|
|
7979
|
+
readonly operational: "operational";
|
|
7980
|
+
readonly transactional: "transactional";
|
|
7981
|
+
readonly billing: "billing";
|
|
7982
|
+
readonly security: "security";
|
|
7983
|
+
readonly system: "system";
|
|
7984
|
+
};
|
|
7985
|
+
export type AddressVerdictDtoChannel = typeof AddressVerdictDtoChannel[keyof typeof AddressVerdictDtoChannel];
|
|
7986
|
+
export declare const AddressVerdictDtoChannel: {
|
|
7987
|
+
readonly email: "email";
|
|
7988
|
+
readonly sms: "sms";
|
|
7989
|
+
readonly push: "push";
|
|
7990
|
+
readonly webhook: "webhook";
|
|
7991
|
+
};
|
|
7992
|
+
/**
|
|
7993
|
+
* @nullable
|
|
7994
|
+
*/
|
|
7995
|
+
export type AddressVerdictDtoBlockedBy = typeof AddressVerdictDtoBlockedBy[keyof typeof AddressVerdictDtoBlockedBy] | null;
|
|
7996
|
+
export declare const AddressVerdictDtoBlockedBy: {
|
|
7997
|
+
readonly suppression: "suppression";
|
|
7998
|
+
readonly preference: "preference";
|
|
7999
|
+
};
|
|
8000
|
+
export type AddressVerdictDtoMatrixRule = typeof AddressVerdictDtoMatrixRule[keyof typeof AddressVerdictDtoMatrixRule];
|
|
8001
|
+
export declare const AddressVerdictDtoMatrixRule: {
|
|
8002
|
+
readonly hard_bounce_always_wins: "hard_bounce_always_wins";
|
|
8003
|
+
readonly complaint_always_wins: "complaint_always_wins";
|
|
8004
|
+
readonly sms_stop_legal_hard_block: "sms_stop_legal_hard_block";
|
|
8005
|
+
readonly manual_suppression: "manual_suppression";
|
|
8006
|
+
readonly provider_suppression: "provider_suppression";
|
|
8007
|
+
readonly preference_opt_out: "preference_opt_out";
|
|
8008
|
+
readonly billing_category_opt_out_ignored: "billing_category_opt_out_ignored";
|
|
8009
|
+
readonly category_not_preference_suppressible: "category_not_preference_suppressible";
|
|
8010
|
+
readonly no_block: "no_block";
|
|
8011
|
+
};
|
|
8012
|
+
export interface AddressVerdictDto {
|
|
8013
|
+
category: AddressVerdictDtoCategory;
|
|
8014
|
+
channel: AddressVerdictDtoChannel;
|
|
8015
|
+
wouldSend: boolean;
|
|
8016
|
+
/** @nullable */
|
|
8017
|
+
blockedBy: AddressVerdictDtoBlockedBy;
|
|
8018
|
+
matrixRule: AddressVerdictDtoMatrixRule;
|
|
8019
|
+
/** @nullable */
|
|
8020
|
+
recordId: string | null;
|
|
8021
|
+
}
|
|
8022
|
+
export interface AddressInspectionDto {
|
|
8023
|
+
address: string;
|
|
8024
|
+
verdicts: AddressVerdictDto[];
|
|
8025
|
+
}
|
|
8026
|
+
export type SuppressionDtoChannel = typeof SuppressionDtoChannel[keyof typeof SuppressionDtoChannel];
|
|
8027
|
+
export declare const SuppressionDtoChannel: {
|
|
8028
|
+
readonly email: "email";
|
|
8029
|
+
readonly sms: "sms";
|
|
8030
|
+
readonly push: "push";
|
|
8031
|
+
readonly webhook: "webhook";
|
|
8032
|
+
};
|
|
8033
|
+
export type SuppressionDtoReason = typeof SuppressionDtoReason[keyof typeof SuppressionDtoReason];
|
|
8034
|
+
export declare const SuppressionDtoReason: {
|
|
8035
|
+
readonly hard_bounce: "hard_bounce";
|
|
8036
|
+
readonly complaint: "complaint";
|
|
8037
|
+
readonly sms_stop: "sms_stop";
|
|
8038
|
+
readonly manual: "manual";
|
|
8039
|
+
readonly provider_suppression: "provider_suppression";
|
|
8040
|
+
};
|
|
8041
|
+
/**
|
|
8042
|
+
* @nullable
|
|
8043
|
+
*/
|
|
8044
|
+
export type SuppressionDtoSourceProvider = typeof SuppressionDtoSourceProvider[keyof typeof SuppressionDtoSourceProvider] | null;
|
|
8045
|
+
export declare const SuppressionDtoSourceProvider: {
|
|
8046
|
+
readonly ses: "ses";
|
|
8047
|
+
readonly aws_eum_sms: "aws_eum_sms";
|
|
8048
|
+
readonly apns: "apns";
|
|
8049
|
+
readonly fcm: "fcm";
|
|
8050
|
+
};
|
|
8051
|
+
export interface SuppressionDto {
|
|
8052
|
+
suppressionId: string;
|
|
8053
|
+
channel: SuppressionDtoChannel;
|
|
8054
|
+
address: string;
|
|
8055
|
+
reason: SuppressionDtoReason;
|
|
8056
|
+
/** @nullable */
|
|
8057
|
+
sourceProvider: SuppressionDtoSourceProvider;
|
|
8058
|
+
createdAt: string;
|
|
8059
|
+
/** @nullable */
|
|
8060
|
+
expiresAt: string | null;
|
|
8061
|
+
/** @nullable */
|
|
8062
|
+
releasedAt: string | null;
|
|
8063
|
+
/** @nullable */
|
|
8064
|
+
releasedByUserSub: string | null;
|
|
8065
|
+
}
|
|
8066
|
+
export interface PaginatedSuppressionsDto {
|
|
8067
|
+
/** The page of rows. */
|
|
8068
|
+
items: SuppressionDto[];
|
|
8069
|
+
/** Exact count of all rows matching the filter, pre-pagination (RLS-scoped). */
|
|
8070
|
+
total: number;
|
|
8071
|
+
/** Effective max rows applied (after defaults/clamp). */
|
|
8072
|
+
limit: number;
|
|
8073
|
+
/** Effective rows skipped applied. */
|
|
8074
|
+
offset: number;
|
|
8075
|
+
}
|
|
8076
|
+
export type NotificationDispatchDtoChannel = typeof NotificationDispatchDtoChannel[keyof typeof NotificationDispatchDtoChannel];
|
|
8077
|
+
export declare const NotificationDispatchDtoChannel: {
|
|
8078
|
+
readonly email: "email";
|
|
8079
|
+
readonly sms: "sms";
|
|
8080
|
+
readonly push: "push";
|
|
8081
|
+
readonly webhook: "webhook";
|
|
8082
|
+
};
|
|
8083
|
+
export type NotificationDispatchDtoCategory = typeof NotificationDispatchDtoCategory[keyof typeof NotificationDispatchDtoCategory];
|
|
8084
|
+
export declare const NotificationDispatchDtoCategory: {
|
|
8085
|
+
readonly marketing: "marketing";
|
|
8086
|
+
readonly operational: "operational";
|
|
8087
|
+
readonly transactional: "transactional";
|
|
8088
|
+
readonly billing: "billing";
|
|
8089
|
+
readonly security: "security";
|
|
8090
|
+
readonly system: "system";
|
|
8091
|
+
};
|
|
8092
|
+
/**
|
|
8093
|
+
* @nullable
|
|
8094
|
+
*/
|
|
8095
|
+
export type NotificationDispatchDtoProvider = typeof NotificationDispatchDtoProvider[keyof typeof NotificationDispatchDtoProvider] | null;
|
|
8096
|
+
export declare const NotificationDispatchDtoProvider: {
|
|
8097
|
+
readonly ses: "ses";
|
|
8098
|
+
readonly aws_eum_sms: "aws_eum_sms";
|
|
8099
|
+
readonly apns: "apns";
|
|
8100
|
+
readonly fcm: "fcm";
|
|
8101
|
+
};
|
|
8102
|
+
export type NotificationDispatchDtoRecipientKind = typeof NotificationDispatchDtoRecipientKind[keyof typeof NotificationDispatchDtoRecipientKind];
|
|
8103
|
+
export declare const NotificationDispatchDtoRecipientKind: {
|
|
8104
|
+
readonly event_field: "event_field";
|
|
8105
|
+
readonly org_contact_role: "org_contact_role";
|
|
8106
|
+
readonly tenant_role: "tenant_role";
|
|
8107
|
+
readonly static_email: "static_email";
|
|
8108
|
+
readonly static_phone: "static_phone";
|
|
8109
|
+
};
|
|
8110
|
+
export type NotificationDispatchDtoStatus = typeof NotificationDispatchDtoStatus[keyof typeof NotificationDispatchDtoStatus];
|
|
8111
|
+
export declare const NotificationDispatchDtoStatus: {
|
|
8112
|
+
readonly queued: "queued";
|
|
8113
|
+
readonly rendering: "rendering";
|
|
8114
|
+
readonly render_failed: "render_failed";
|
|
8115
|
+
readonly suppressed: "suppressed";
|
|
8116
|
+
readonly skipped_opt_out: "skipped_opt_out";
|
|
8117
|
+
readonly skipped_disabled: "skipped_disabled";
|
|
8118
|
+
readonly skipped_cost_capped: "skipped_cost_capped";
|
|
8119
|
+
readonly sent: "sent";
|
|
8120
|
+
readonly delivered: "delivered";
|
|
8121
|
+
readonly opened: "opened";
|
|
8122
|
+
readonly clicked: "clicked";
|
|
8123
|
+
readonly soft_bounced: "soft_bounced";
|
|
8124
|
+
readonly hard_bounced: "hard_bounced";
|
|
8125
|
+
readonly complaint: "complaint";
|
|
8126
|
+
readonly failed: "failed";
|
|
8127
|
+
readonly dead_lettered: "dead_lettered";
|
|
8128
|
+
readonly permanently_failed: "permanently_failed";
|
|
8129
|
+
};
|
|
8130
|
+
export interface NotificationDispatchDto {
|
|
8131
|
+
notificationDispatchId: string;
|
|
8132
|
+
/** @nullable */
|
|
8133
|
+
organizationId: string | null;
|
|
8134
|
+
/** @nullable */
|
|
8135
|
+
notificationRequestId: string | null;
|
|
8136
|
+
/** @nullable */
|
|
8137
|
+
tenantNotificationRuleId: string | null;
|
|
8138
|
+
/** @nullable */
|
|
8139
|
+
notificationTemplateVersionId: string | null;
|
|
8140
|
+
channel: NotificationDispatchDtoChannel;
|
|
8141
|
+
category: NotificationDispatchDtoCategory;
|
|
8142
|
+
/** @nullable */
|
|
8143
|
+
provider: NotificationDispatchDtoProvider;
|
|
8144
|
+
/** @nullable */
|
|
8145
|
+
providerMessageId: string | null;
|
|
8146
|
+
recipientKind: NotificationDispatchDtoRecipientKind;
|
|
8147
|
+
recipientAddress: string;
|
|
8148
|
+
/** @nullable */
|
|
8149
|
+
recipientName: string | null;
|
|
8150
|
+
/**
|
|
8151
|
+
* to | cc | bcc
|
|
8152
|
+
* @nullable
|
|
8153
|
+
*/
|
|
8154
|
+
recipientRole: string | null;
|
|
8155
|
+
/** @nullable */
|
|
8156
|
+
fromAddress: string | null;
|
|
8157
|
+
/** @nullable */
|
|
8158
|
+
subject: string | null;
|
|
8159
|
+
/** @nullable */
|
|
8160
|
+
locale: string | null;
|
|
8161
|
+
status: NotificationDispatchDtoStatus;
|
|
8162
|
+
isTest: boolean;
|
|
8163
|
+
attemptCount: number;
|
|
8164
|
+
/** @nullable */
|
|
8165
|
+
errorMessage: string | null;
|
|
8166
|
+
queuedAt: string;
|
|
8167
|
+
/** @nullable */
|
|
8168
|
+
sentAt: string | null;
|
|
8169
|
+
/** @nullable */
|
|
8170
|
+
deliveredAt: string | null;
|
|
8171
|
+
/** @nullable */
|
|
8172
|
+
failedAt: string | null;
|
|
8173
|
+
createdAt: string;
|
|
8174
|
+
}
|
|
8175
|
+
export interface PaginatedNotificationDispatchesDto {
|
|
8176
|
+
/** The page of rows. */
|
|
8177
|
+
items: NotificationDispatchDto[];
|
|
8178
|
+
/** Exact count of all rows matching the filter, pre-pagination (RLS-scoped). */
|
|
8179
|
+
total: number;
|
|
8180
|
+
/** Effective max rows applied (after defaults/clamp). */
|
|
8181
|
+
limit: number;
|
|
8182
|
+
/** Effective rows skipped applied. */
|
|
8183
|
+
offset: number;
|
|
8184
|
+
}
|
|
8185
|
+
export type ResolutionReasonDtoKind = typeof ResolutionReasonDtoKind[keyof typeof ResolutionReasonDtoKind];
|
|
8186
|
+
export declare const ResolutionReasonDtoKind: {
|
|
8187
|
+
readonly event_field: "event_field";
|
|
8188
|
+
readonly org_contact_role: "org_contact_role";
|
|
8189
|
+
readonly tenant_role: "tenant_role";
|
|
8190
|
+
readonly static_email: "static_email";
|
|
8191
|
+
readonly static_phone: "static_phone";
|
|
8192
|
+
};
|
|
8193
|
+
export interface ResolutionReasonDto {
|
|
8194
|
+
rule_id?: string;
|
|
8195
|
+
spec_index?: number;
|
|
8196
|
+
kind?: ResolutionReasonDtoKind;
|
|
8197
|
+
role?: string;
|
|
8198
|
+
path?: string;
|
|
8199
|
+
/** The source row the address came from. */
|
|
8200
|
+
source_id?: string;
|
|
8201
|
+
}
|
|
8202
|
+
export type DeliveryEventDtoProvider = typeof DeliveryEventDtoProvider[keyof typeof DeliveryEventDtoProvider];
|
|
8203
|
+
export declare const DeliveryEventDtoProvider: {
|
|
8204
|
+
readonly ses: "ses";
|
|
8205
|
+
readonly aws_eum_sms: "aws_eum_sms";
|
|
8206
|
+
readonly apns: "apns";
|
|
8207
|
+
readonly fcm: "fcm";
|
|
8208
|
+
};
|
|
8209
|
+
/**
|
|
8210
|
+
* @nullable
|
|
8211
|
+
*/
|
|
8212
|
+
export type DeliveryEventDtoEventData = {
|
|
8213
|
+
[key: string]: unknown;
|
|
8214
|
+
} | null;
|
|
8215
|
+
export interface DeliveryEventDto {
|
|
8216
|
+
deliveryEventId: string;
|
|
8217
|
+
provider: DeliveryEventDtoProvider;
|
|
8218
|
+
/** @nullable */
|
|
8219
|
+
providerMessageId: string | null;
|
|
8220
|
+
/** delivered | bounce | complaint | open | click | sms_delivered | sms_failed */
|
|
8221
|
+
eventType: string;
|
|
8222
|
+
/** @nullable */
|
|
8223
|
+
eventData: DeliveryEventDtoEventData;
|
|
8224
|
+
eventAt: string;
|
|
8225
|
+
receivedAt: string;
|
|
8226
|
+
}
|
|
8227
|
+
export type NotificationDispatchDetailDtoChannel = typeof NotificationDispatchDetailDtoChannel[keyof typeof NotificationDispatchDetailDtoChannel];
|
|
8228
|
+
export declare const NotificationDispatchDetailDtoChannel: {
|
|
8229
|
+
readonly email: "email";
|
|
8230
|
+
readonly sms: "sms";
|
|
8231
|
+
readonly push: "push";
|
|
8232
|
+
readonly webhook: "webhook";
|
|
8233
|
+
};
|
|
8234
|
+
export type NotificationDispatchDetailDtoCategory = typeof NotificationDispatchDetailDtoCategory[keyof typeof NotificationDispatchDetailDtoCategory];
|
|
8235
|
+
export declare const NotificationDispatchDetailDtoCategory: {
|
|
8236
|
+
readonly marketing: "marketing";
|
|
8237
|
+
readonly operational: "operational";
|
|
8238
|
+
readonly transactional: "transactional";
|
|
8239
|
+
readonly billing: "billing";
|
|
8240
|
+
readonly security: "security";
|
|
8241
|
+
readonly system: "system";
|
|
8242
|
+
};
|
|
8243
|
+
/**
|
|
8244
|
+
* @nullable
|
|
8245
|
+
*/
|
|
8246
|
+
export type NotificationDispatchDetailDtoProvider = typeof NotificationDispatchDetailDtoProvider[keyof typeof NotificationDispatchDetailDtoProvider] | null;
|
|
8247
|
+
export declare const NotificationDispatchDetailDtoProvider: {
|
|
8248
|
+
readonly ses: "ses";
|
|
8249
|
+
readonly aws_eum_sms: "aws_eum_sms";
|
|
8250
|
+
readonly apns: "apns";
|
|
8251
|
+
readonly fcm: "fcm";
|
|
8252
|
+
};
|
|
8253
|
+
export type NotificationDispatchDetailDtoRecipientKind = typeof NotificationDispatchDetailDtoRecipientKind[keyof typeof NotificationDispatchDetailDtoRecipientKind];
|
|
8254
|
+
export declare const NotificationDispatchDetailDtoRecipientKind: {
|
|
8255
|
+
readonly event_field: "event_field";
|
|
8256
|
+
readonly org_contact_role: "org_contact_role";
|
|
8257
|
+
readonly tenant_role: "tenant_role";
|
|
8258
|
+
readonly static_email: "static_email";
|
|
8259
|
+
readonly static_phone: "static_phone";
|
|
8260
|
+
};
|
|
8261
|
+
export type NotificationDispatchDetailDtoStatus = typeof NotificationDispatchDetailDtoStatus[keyof typeof NotificationDispatchDetailDtoStatus];
|
|
8262
|
+
export declare const NotificationDispatchDetailDtoStatus: {
|
|
8263
|
+
readonly queued: "queued";
|
|
8264
|
+
readonly rendering: "rendering";
|
|
8265
|
+
readonly render_failed: "render_failed";
|
|
8266
|
+
readonly suppressed: "suppressed";
|
|
8267
|
+
readonly skipped_opt_out: "skipped_opt_out";
|
|
8268
|
+
readonly skipped_disabled: "skipped_disabled";
|
|
8269
|
+
readonly skipped_cost_capped: "skipped_cost_capped";
|
|
8270
|
+
readonly sent: "sent";
|
|
8271
|
+
readonly delivered: "delivered";
|
|
8272
|
+
readonly opened: "opened";
|
|
8273
|
+
readonly clicked: "clicked";
|
|
8274
|
+
readonly soft_bounced: "soft_bounced";
|
|
8275
|
+
readonly hard_bounced: "hard_bounced";
|
|
8276
|
+
readonly complaint: "complaint";
|
|
8277
|
+
readonly failed: "failed";
|
|
8278
|
+
readonly dead_lettered: "dead_lettered";
|
|
8279
|
+
readonly permanently_failed: "permanently_failed";
|
|
8280
|
+
};
|
|
8281
|
+
/**
|
|
8282
|
+
* @nullable
|
|
8283
|
+
*/
|
|
8284
|
+
export type NotificationDispatchDetailDtoResolutionReason = ResolutionReasonDto | null;
|
|
8285
|
+
export interface NotificationDispatchDetailDto {
|
|
8286
|
+
notificationDispatchId: string;
|
|
8287
|
+
/** @nullable */
|
|
8288
|
+
organizationId: string | null;
|
|
8289
|
+
/** @nullable */
|
|
8290
|
+
notificationRequestId: string | null;
|
|
8291
|
+
/** @nullable */
|
|
8292
|
+
tenantNotificationRuleId: string | null;
|
|
8293
|
+
/** @nullable */
|
|
8294
|
+
notificationTemplateVersionId: string | null;
|
|
8295
|
+
channel: NotificationDispatchDetailDtoChannel;
|
|
8296
|
+
category: NotificationDispatchDetailDtoCategory;
|
|
8297
|
+
/** @nullable */
|
|
8298
|
+
provider: NotificationDispatchDetailDtoProvider;
|
|
8299
|
+
/** @nullable */
|
|
8300
|
+
providerMessageId: string | null;
|
|
8301
|
+
recipientKind: NotificationDispatchDetailDtoRecipientKind;
|
|
8302
|
+
recipientAddress: string;
|
|
8303
|
+
/** @nullable */
|
|
8304
|
+
recipientName: string | null;
|
|
8305
|
+
/**
|
|
8306
|
+
* to | cc | bcc
|
|
8307
|
+
* @nullable
|
|
8308
|
+
*/
|
|
8309
|
+
recipientRole: string | null;
|
|
8310
|
+
/** @nullable */
|
|
8311
|
+
fromAddress: string | null;
|
|
8312
|
+
/** @nullable */
|
|
8313
|
+
subject: string | null;
|
|
8314
|
+
/** @nullable */
|
|
8315
|
+
locale: string | null;
|
|
8316
|
+
status: NotificationDispatchDetailDtoStatus;
|
|
8317
|
+
isTest: boolean;
|
|
8318
|
+
attemptCount: number;
|
|
8319
|
+
/** @nullable */
|
|
8320
|
+
errorMessage: string | null;
|
|
8321
|
+
queuedAt: string;
|
|
8322
|
+
/** @nullable */
|
|
8323
|
+
sentAt: string | null;
|
|
8324
|
+
/** @nullable */
|
|
8325
|
+
deliveredAt: string | null;
|
|
8326
|
+
/** @nullable */
|
|
8327
|
+
failedAt: string | null;
|
|
8328
|
+
createdAt: string;
|
|
8329
|
+
/** @nullable */
|
|
8330
|
+
resolutionReason: NotificationDispatchDetailDtoResolutionReason;
|
|
8331
|
+
/** @nullable */
|
|
8332
|
+
renderedBody: string | null;
|
|
8333
|
+
/** false when the tenant has body storage off, or the row is older than the 90-day scrub window, or the body was never stored. */
|
|
8334
|
+
bodyRetained: boolean;
|
|
8335
|
+
deliveryEvents: DeliveryEventDto[];
|
|
8336
|
+
}
|
|
8337
|
+
export type DispatchStatusCountDtoStatus = typeof DispatchStatusCountDtoStatus[keyof typeof DispatchStatusCountDtoStatus];
|
|
8338
|
+
export declare const DispatchStatusCountDtoStatus: {
|
|
8339
|
+
readonly queued: "queued";
|
|
8340
|
+
readonly rendering: "rendering";
|
|
8341
|
+
readonly render_failed: "render_failed";
|
|
8342
|
+
readonly suppressed: "suppressed";
|
|
8343
|
+
readonly skipped_opt_out: "skipped_opt_out";
|
|
8344
|
+
readonly skipped_disabled: "skipped_disabled";
|
|
8345
|
+
readonly skipped_cost_capped: "skipped_cost_capped";
|
|
8346
|
+
readonly sent: "sent";
|
|
8347
|
+
readonly delivered: "delivered";
|
|
8348
|
+
readonly opened: "opened";
|
|
8349
|
+
readonly clicked: "clicked";
|
|
8350
|
+
readonly soft_bounced: "soft_bounced";
|
|
8351
|
+
readonly hard_bounced: "hard_bounced";
|
|
8352
|
+
readonly complaint: "complaint";
|
|
8353
|
+
readonly failed: "failed";
|
|
8354
|
+
readonly dead_lettered: "dead_lettered";
|
|
8355
|
+
readonly permanently_failed: "permanently_failed";
|
|
8356
|
+
};
|
|
8357
|
+
export interface DispatchStatusCountDto {
|
|
8358
|
+
status: DispatchStatusCountDtoStatus;
|
|
8359
|
+
count: number;
|
|
8360
|
+
}
|
|
8361
|
+
export type NotificationRequestDtoEventPayload = {
|
|
8362
|
+
[key: string]: unknown;
|
|
8363
|
+
};
|
|
8364
|
+
export type NotificationRequestDtoStatus = typeof NotificationRequestDtoStatus[keyof typeof NotificationRequestDtoStatus];
|
|
8365
|
+
export declare const NotificationRequestDtoStatus: {
|
|
8366
|
+
readonly received: "received";
|
|
8367
|
+
readonly matched: "matched";
|
|
8368
|
+
readonly no_match: "no_match";
|
|
8369
|
+
readonly fanned_out: "fanned_out";
|
|
8370
|
+
readonly failed: "failed";
|
|
8371
|
+
};
|
|
8372
|
+
export interface NotificationRequestDto {
|
|
8373
|
+
notificationRequestId: string;
|
|
8374
|
+
/** @nullable */
|
|
8375
|
+
organizationId: string | null;
|
|
8376
|
+
eventKey: string;
|
|
8377
|
+
eventVersion: number;
|
|
8378
|
+
idempotencyKey: string;
|
|
8379
|
+
/** @nullable */
|
|
8380
|
+
sourceOutboxEventKey: string | null;
|
|
8381
|
+
eventPayload: NotificationRequestDtoEventPayload;
|
|
8382
|
+
status: NotificationRequestDtoStatus;
|
|
8383
|
+
/** @nullable */
|
|
8384
|
+
matchedRuleCount: number | null;
|
|
8385
|
+
createdAt: string;
|
|
8386
|
+
/** @nullable */
|
|
8387
|
+
processedAt: string | null;
|
|
8388
|
+
dispatchStatusCounts: DispatchStatusCountDto[];
|
|
8389
|
+
/** Total dispatches fanned out from this request. */
|
|
8390
|
+
dispatchCount: number;
|
|
8391
|
+
}
|
|
8392
|
+
export interface HealthRateWindowDto {
|
|
8393
|
+
numerator: number;
|
|
8394
|
+
denominator: number;
|
|
8395
|
+
/** @nullable */
|
|
8396
|
+
rate: number | null;
|
|
8397
|
+
}
|
|
8398
|
+
export interface HealthRateDto {
|
|
8399
|
+
last7Days: HealthRateWindowDto;
|
|
8400
|
+
last30Days: HealthRateWindowDto;
|
|
8401
|
+
}
|
|
8402
|
+
export interface HealthCountDto {
|
|
8403
|
+
last7Days: number;
|
|
8404
|
+
last30Days: number;
|
|
8405
|
+
}
|
|
8406
|
+
export interface NotificationHealthDto {
|
|
8407
|
+
bounceRate: HealthRateDto;
|
|
8408
|
+
complaintRate: HealthRateDto;
|
|
8409
|
+
renderFailureRate: HealthRateDto;
|
|
8410
|
+
suppressionGrowth: HealthCountDto;
|
|
8411
|
+
computedAt: string;
|
|
8412
|
+
}
|
|
8413
|
+
export interface NotificationSettingsDto {
|
|
8414
|
+
sendingPaused: boolean;
|
|
8415
|
+
/** @nullable */
|
|
8416
|
+
pausedByUserSub: string | null;
|
|
8417
|
+
/** @nullable */
|
|
8418
|
+
pausedAt: string | null;
|
|
8419
|
+
/** @nullable */
|
|
8420
|
+
pauseReason: string | null;
|
|
8421
|
+
smsEnabled: boolean;
|
|
8422
|
+
storeRenderedNotifications: boolean;
|
|
8423
|
+
/** @nullable */
|
|
8424
|
+
sendCapPerDay: number | null;
|
|
8425
|
+
/** @nullable */
|
|
8426
|
+
smsSpendCeiling: number | null;
|
|
8427
|
+
}
|
|
8428
|
+
export type SenderIdentityDtoChannel = typeof SenderIdentityDtoChannel[keyof typeof SenderIdentityDtoChannel];
|
|
8429
|
+
export declare const SenderIdentityDtoChannel: {
|
|
8430
|
+
readonly email: "email";
|
|
8431
|
+
readonly sms: "sms";
|
|
8432
|
+
readonly push: "push";
|
|
8433
|
+
readonly webhook: "webhook";
|
|
8434
|
+
};
|
|
8435
|
+
export type SenderIdentityDtoProvider = typeof SenderIdentityDtoProvider[keyof typeof SenderIdentityDtoProvider];
|
|
8436
|
+
export declare const SenderIdentityDtoProvider: {
|
|
8437
|
+
readonly ses: "ses";
|
|
8438
|
+
readonly aws_eum_sms: "aws_eum_sms";
|
|
8439
|
+
readonly apns: "apns";
|
|
8440
|
+
readonly fcm: "fcm";
|
|
8441
|
+
};
|
|
8442
|
+
export type SenderIdentityDtoVerificationStatus = typeof SenderIdentityDtoVerificationStatus[keyof typeof SenderIdentityDtoVerificationStatus];
|
|
8443
|
+
export declare const SenderIdentityDtoVerificationStatus: {
|
|
8444
|
+
readonly pending: "pending";
|
|
8445
|
+
readonly verified: "verified";
|
|
8446
|
+
readonly failed: "failed";
|
|
8447
|
+
};
|
|
8448
|
+
export interface SenderIdentityDto {
|
|
8449
|
+
senderIdentityId: string;
|
|
8450
|
+
channel: SenderIdentityDtoChannel;
|
|
8451
|
+
provider: SenderIdentityDtoProvider;
|
|
8452
|
+
identityValue: string;
|
|
8453
|
+
/** @nullable */
|
|
8454
|
+
displayName: string | null;
|
|
8455
|
+
/** @nullable */
|
|
8456
|
+
providerConfigRef: string | null;
|
|
8457
|
+
/** @nullable */
|
|
8458
|
+
providerIdentityArn: string | null;
|
|
8459
|
+
verificationStatus: SenderIdentityDtoVerificationStatus;
|
|
8460
|
+
isDefault: boolean;
|
|
8461
|
+
createdAt: string;
|
|
8462
|
+
updatedAt: string;
|
|
8463
|
+
}
|
|
8464
|
+
export interface SenderDnsRecordDto {
|
|
8465
|
+
recordType: string;
|
|
8466
|
+
name: string;
|
|
8467
|
+
value: string;
|
|
8468
|
+
}
|
|
8469
|
+
export type SenderIdentityDetailDtoChannel = typeof SenderIdentityDetailDtoChannel[keyof typeof SenderIdentityDetailDtoChannel];
|
|
8470
|
+
export declare const SenderIdentityDetailDtoChannel: {
|
|
8471
|
+
readonly email: "email";
|
|
8472
|
+
readonly sms: "sms";
|
|
8473
|
+
readonly push: "push";
|
|
8474
|
+
readonly webhook: "webhook";
|
|
8475
|
+
};
|
|
8476
|
+
export type SenderIdentityDetailDtoProvider = typeof SenderIdentityDetailDtoProvider[keyof typeof SenderIdentityDetailDtoProvider];
|
|
8477
|
+
export declare const SenderIdentityDetailDtoProvider: {
|
|
8478
|
+
readonly ses: "ses";
|
|
8479
|
+
readonly aws_eum_sms: "aws_eum_sms";
|
|
8480
|
+
readonly apns: "apns";
|
|
8481
|
+
readonly fcm: "fcm";
|
|
8482
|
+
};
|
|
8483
|
+
export type SenderIdentityDetailDtoVerificationStatus = typeof SenderIdentityDetailDtoVerificationStatus[keyof typeof SenderIdentityDetailDtoVerificationStatus];
|
|
8484
|
+
export declare const SenderIdentityDetailDtoVerificationStatus: {
|
|
8485
|
+
readonly pending: "pending";
|
|
8486
|
+
readonly verified: "verified";
|
|
8487
|
+
readonly failed: "failed";
|
|
8488
|
+
};
|
|
8489
|
+
export interface SenderIdentityDetailDto {
|
|
8490
|
+
senderIdentityId: string;
|
|
8491
|
+
channel: SenderIdentityDetailDtoChannel;
|
|
8492
|
+
provider: SenderIdentityDetailDtoProvider;
|
|
8493
|
+
identityValue: string;
|
|
8494
|
+
/** @nullable */
|
|
8495
|
+
displayName: string | null;
|
|
8496
|
+
/** @nullable */
|
|
8497
|
+
providerConfigRef: string | null;
|
|
8498
|
+
/** @nullable */
|
|
8499
|
+
providerIdentityArn: string | null;
|
|
8500
|
+
verificationStatus: SenderIdentityDetailDtoVerificationStatus;
|
|
8501
|
+
isDefault: boolean;
|
|
8502
|
+
createdAt: string;
|
|
8503
|
+
updatedAt: string;
|
|
8504
|
+
/** DKIM/DNS records to publish for an email identity. Empty until the SES read lands with the verify command in the write slice. */
|
|
8505
|
+
dnsRecords: SenderDnsRecordDto[];
|
|
8506
|
+
}
|
|
8507
|
+
export type OrdersControllerListV1Params = {
|
|
8508
|
+
/**
|
|
8509
|
+
* Max rows to return (1–100).
|
|
8510
|
+
* @minimum 1
|
|
8511
|
+
* @maximum 100
|
|
8512
|
+
*/
|
|
8513
|
+
limit?: number;
|
|
8514
|
+
/**
|
|
8515
|
+
* Rows to skip.
|
|
8516
|
+
* @minimum 0
|
|
8517
|
+
*/
|
|
8518
|
+
offset?: number;
|
|
8519
|
+
/**
|
|
8520
|
+
* Filter by sales_order status. Repeatable — pass ?status=A&status=B for a set; a single value is accepted too.
|
|
8521
|
+
*/
|
|
8522
|
+
status?: string[];
|
|
8523
|
+
type?: OrdersControllerListV1Type;
|
|
8524
|
+
/**
|
|
8525
|
+
* Narrow to one organization (within the caller's RLS scope).
|
|
8526
|
+
*/
|
|
8527
|
+
organizationId?: string;
|
|
8528
|
+
/**
|
|
8529
|
+
* created_at lower bound, inclusive (ISO-8601).
|
|
8530
|
+
*/
|
|
8531
|
+
fromDate?: string;
|
|
8532
|
+
/**
|
|
8533
|
+
* created_at upper bound, inclusive (ISO-8601).
|
|
8534
|
+
*/
|
|
8535
|
+
toDate?: string;
|
|
8536
|
+
};
|
|
8537
|
+
export type OrdersControllerListV1Type = typeof OrdersControllerListV1Type[keyof typeof OrdersControllerListV1Type];
|
|
8538
|
+
export declare const OrdersControllerListV1Type: {
|
|
8539
|
+
readonly PICKUP: "PICKUP";
|
|
8540
|
+
readonly DELIVERY: "DELIVERY";
|
|
8541
|
+
readonly MOVE: "MOVE";
|
|
8542
|
+
readonly DROP_OFF: "DROP_OFF";
|
|
8543
|
+
readonly TRANSFER: "TRANSFER";
|
|
8544
|
+
readonly PICKING: "PICKING";
|
|
8545
|
+
readonly MERCHANDISE_SALE: "MERCHANDISE_SALE";
|
|
8546
|
+
};
|
|
8547
|
+
export type OrderGroupsControllerListV1Params = {
|
|
8548
|
+
/**
|
|
8549
|
+
* Max rows to return (1–100).
|
|
8550
|
+
* @minimum 1
|
|
8551
|
+
* @maximum 100
|
|
7145
8552
|
*/
|
|
7146
8553
|
limit?: number;
|
|
7147
8554
|
/**
|
|
@@ -7842,6 +9249,25 @@ export declare const LookupsControllerListV1Kind: {
|
|
|
7842
9249
|
readonly 'transport-slot-kind': "transport-slot-kind";
|
|
7843
9250
|
readonly 'organization-type': "organization-type";
|
|
7844
9251
|
};
|
|
9252
|
+
export type ServicePointsControllerListV1Params = {
|
|
9253
|
+
/**
|
|
9254
|
+
* Postal code to search near.
|
|
9255
|
+
*/
|
|
9256
|
+
zipCode?: string;
|
|
9257
|
+
/**
|
|
9258
|
+
* ISO 3166-1 alpha-2
|
|
9259
|
+
*/
|
|
9260
|
+
countryCode?: string;
|
|
9261
|
+
provider?: ServicePointsControllerListV1Provider;
|
|
9262
|
+
/**
|
|
9263
|
+
* Provider-specific service-point type filter.
|
|
9264
|
+
*/
|
|
9265
|
+
type?: string;
|
|
9266
|
+
};
|
|
9267
|
+
export type ServicePointsControllerListV1Provider = typeof ServicePointsControllerListV1Provider[keyof typeof ServicePointsControllerListV1Provider];
|
|
9268
|
+
export declare const ServicePointsControllerListV1Provider: {
|
|
9269
|
+
readonly POSTI: "POSTI";
|
|
9270
|
+
};
|
|
7845
9271
|
export type IntegrationsControllerGetByIdV1200 = StripeAccountDto | FortnoxAccountDto;
|
|
7846
9272
|
export type BillingAccountsControllerListAccountsV1Params = {
|
|
7847
9273
|
/**
|
|
@@ -8088,4 +9514,284 @@ export declare const EmployeeAssignmentsControllerListV1Kind: {
|
|
|
8088
9514
|
readonly carrier: "carrier";
|
|
8089
9515
|
readonly tenant_wide: "tenant_wide";
|
|
8090
9516
|
};
|
|
9517
|
+
export type NotificationEventsControllerListV1Params = {
|
|
9518
|
+
/**
|
|
9519
|
+
* Filter on defaultCategory.
|
|
9520
|
+
*/
|
|
9521
|
+
category?: NotificationEventsControllerListV1Category;
|
|
9522
|
+
/**
|
|
9523
|
+
* Only events whose availableChannels contain this channel.
|
|
9524
|
+
*/
|
|
9525
|
+
channel?: NotificationEventsControllerListV1Channel;
|
|
9526
|
+
/**
|
|
9527
|
+
* Filter on lifecycleStatus. Omitted, every lifecycle is returned.
|
|
9528
|
+
*/
|
|
9529
|
+
lifecycle?: NotificationEventsControllerListV1Lifecycle;
|
|
9530
|
+
};
|
|
9531
|
+
export type NotificationEventsControllerListV1Category = typeof NotificationEventsControllerListV1Category[keyof typeof NotificationEventsControllerListV1Category];
|
|
9532
|
+
export declare const NotificationEventsControllerListV1Category: {
|
|
9533
|
+
readonly marketing: "marketing";
|
|
9534
|
+
readonly operational: "operational";
|
|
9535
|
+
readonly transactional: "transactional";
|
|
9536
|
+
readonly billing: "billing";
|
|
9537
|
+
readonly security: "security";
|
|
9538
|
+
readonly system: "system";
|
|
9539
|
+
};
|
|
9540
|
+
export type NotificationEventsControllerListV1Channel = typeof NotificationEventsControllerListV1Channel[keyof typeof NotificationEventsControllerListV1Channel];
|
|
9541
|
+
export declare const NotificationEventsControllerListV1Channel: {
|
|
9542
|
+
readonly email: "email";
|
|
9543
|
+
readonly sms: "sms";
|
|
9544
|
+
readonly push: "push";
|
|
9545
|
+
readonly webhook: "webhook";
|
|
9546
|
+
};
|
|
9547
|
+
export type NotificationEventsControllerListV1Lifecycle = typeof NotificationEventsControllerListV1Lifecycle[keyof typeof NotificationEventsControllerListV1Lifecycle];
|
|
9548
|
+
export declare const NotificationEventsControllerListV1Lifecycle: {
|
|
9549
|
+
readonly active: "active";
|
|
9550
|
+
readonly deprecated: "deprecated";
|
|
9551
|
+
readonly retired: "retired";
|
|
9552
|
+
};
|
|
9553
|
+
export type NotificationEventsControllerGetByKeyV1Params = {
|
|
9554
|
+
/**
|
|
9555
|
+
* Pin a contract version. Omitted, the active version is returned — the one a new rule or template would be authored against.
|
|
9556
|
+
* @minimum 1
|
|
9557
|
+
*/
|
|
9558
|
+
version?: number;
|
|
9559
|
+
};
|
|
9560
|
+
export type NotificationRulesControllerListV1Params = {
|
|
9561
|
+
/**
|
|
9562
|
+
* Filter to one event.
|
|
9563
|
+
*/
|
|
9564
|
+
eventKey?: string;
|
|
9565
|
+
channel?: NotificationRulesControllerListV1Channel;
|
|
9566
|
+
category?: NotificationRulesControllerListV1Category;
|
|
9567
|
+
/**
|
|
9568
|
+
* Filter on isEnabled. Omitted, both enabled and disabled rules are returned.
|
|
9569
|
+
*/
|
|
9570
|
+
enabled?: boolean;
|
|
9571
|
+
};
|
|
9572
|
+
export type NotificationRulesControllerListV1Channel = typeof NotificationRulesControllerListV1Channel[keyof typeof NotificationRulesControllerListV1Channel];
|
|
9573
|
+
export declare const NotificationRulesControllerListV1Channel: {
|
|
9574
|
+
readonly email: "email";
|
|
9575
|
+
readonly sms: "sms";
|
|
9576
|
+
readonly push: "push";
|
|
9577
|
+
readonly webhook: "webhook";
|
|
9578
|
+
};
|
|
9579
|
+
export type NotificationRulesControllerListV1Category = typeof NotificationRulesControllerListV1Category[keyof typeof NotificationRulesControllerListV1Category];
|
|
9580
|
+
export declare const NotificationRulesControllerListV1Category: {
|
|
9581
|
+
readonly marketing: "marketing";
|
|
9582
|
+
readonly operational: "operational";
|
|
9583
|
+
readonly transactional: "transactional";
|
|
9584
|
+
readonly billing: "billing";
|
|
9585
|
+
readonly security: "security";
|
|
9586
|
+
readonly system: "system";
|
|
9587
|
+
};
|
|
9588
|
+
export type NotificationTemplatesControllerListV1Params = {
|
|
9589
|
+
/**
|
|
9590
|
+
* Max rows to return (1–100).
|
|
9591
|
+
* @minimum 1
|
|
9592
|
+
* @maximum 100
|
|
9593
|
+
*/
|
|
9594
|
+
limit?: number;
|
|
9595
|
+
/**
|
|
9596
|
+
* Rows to skip.
|
|
9597
|
+
* @minimum 0
|
|
9598
|
+
*/
|
|
9599
|
+
offset?: number;
|
|
9600
|
+
/**
|
|
9601
|
+
* Filter to one event.
|
|
9602
|
+
*/
|
|
9603
|
+
eventKey?: string;
|
|
9604
|
+
channel?: NotificationTemplatesControllerListV1Channel;
|
|
9605
|
+
/**
|
|
9606
|
+
* `tenant` = the tenant defaults (organizationId IS NULL); `organization` = org overrides.
|
|
9607
|
+
*/
|
|
9608
|
+
scope?: NotificationTemplatesControllerListV1Scope;
|
|
9609
|
+
/**
|
|
9610
|
+
* Narrow to one organization's overrides. Implies scope=organization.
|
|
9611
|
+
*/
|
|
9612
|
+
organizationId?: string;
|
|
9613
|
+
locale?: string;
|
|
9614
|
+
/**
|
|
9615
|
+
* Filter on the state of the template's versions: `published` returns templates with a live version, `draft` those with an unpublished draft.
|
|
9616
|
+
*/
|
|
9617
|
+
state?: NotificationTemplatesControllerListV1State;
|
|
9618
|
+
};
|
|
9619
|
+
export type NotificationTemplatesControllerListV1Channel = typeof NotificationTemplatesControllerListV1Channel[keyof typeof NotificationTemplatesControllerListV1Channel];
|
|
9620
|
+
export declare const NotificationTemplatesControllerListV1Channel: {
|
|
9621
|
+
readonly email: "email";
|
|
9622
|
+
readonly sms: "sms";
|
|
9623
|
+
readonly push: "push";
|
|
9624
|
+
readonly webhook: "webhook";
|
|
9625
|
+
};
|
|
9626
|
+
export type NotificationTemplatesControllerListV1Scope = typeof NotificationTemplatesControllerListV1Scope[keyof typeof NotificationTemplatesControllerListV1Scope];
|
|
9627
|
+
export declare const NotificationTemplatesControllerListV1Scope: {
|
|
9628
|
+
readonly tenant: "tenant";
|
|
9629
|
+
readonly organization: "organization";
|
|
9630
|
+
};
|
|
9631
|
+
export type NotificationTemplatesControllerListV1State = typeof NotificationTemplatesControllerListV1State[keyof typeof NotificationTemplatesControllerListV1State];
|
|
9632
|
+
export declare const NotificationTemplatesControllerListV1State: {
|
|
9633
|
+
readonly draft: "draft";
|
|
9634
|
+
readonly published: "published";
|
|
9635
|
+
readonly archived: "archived";
|
|
9636
|
+
};
|
|
9637
|
+
export type NotificationPreferencesControllerSearchV1Params = {
|
|
9638
|
+
/**
|
|
9639
|
+
* The subject's Keycloak sub. Mutually exclusive with `address`; one is required.
|
|
9640
|
+
*/
|
|
9641
|
+
userSub?: string;
|
|
9642
|
+
/**
|
|
9643
|
+
* The subject's email or phone. Mutually exclusive with `userSub`; one is required.
|
|
9644
|
+
*/
|
|
9645
|
+
address?: string;
|
|
9646
|
+
};
|
|
9647
|
+
export type SuppressionsControllerInspectV1Params = {
|
|
9648
|
+
/**
|
|
9649
|
+
* The email or phone to evaluate.
|
|
9650
|
+
*/
|
|
9651
|
+
address: string;
|
|
9652
|
+
/**
|
|
9653
|
+
* Narrow to one category. Omitted, every category is evaluated.
|
|
9654
|
+
*/
|
|
9655
|
+
category?: SuppressionsControllerInspectV1Category;
|
|
9656
|
+
/**
|
|
9657
|
+
* Narrow to one channel. Omitted, email and sms are evaluated.
|
|
9658
|
+
*/
|
|
9659
|
+
channel?: SuppressionsControllerInspectV1Channel;
|
|
9660
|
+
};
|
|
9661
|
+
export type SuppressionsControllerInspectV1Category = typeof SuppressionsControllerInspectV1Category[keyof typeof SuppressionsControllerInspectV1Category];
|
|
9662
|
+
export declare const SuppressionsControllerInspectV1Category: {
|
|
9663
|
+
readonly marketing: "marketing";
|
|
9664
|
+
readonly operational: "operational";
|
|
9665
|
+
readonly transactional: "transactional";
|
|
9666
|
+
readonly billing: "billing";
|
|
9667
|
+
readonly security: "security";
|
|
9668
|
+
readonly system: "system";
|
|
9669
|
+
};
|
|
9670
|
+
export type SuppressionsControllerInspectV1Channel = typeof SuppressionsControllerInspectV1Channel[keyof typeof SuppressionsControllerInspectV1Channel];
|
|
9671
|
+
export declare const SuppressionsControllerInspectV1Channel: {
|
|
9672
|
+
readonly email: "email";
|
|
9673
|
+
readonly sms: "sms";
|
|
9674
|
+
readonly push: "push";
|
|
9675
|
+
readonly webhook: "webhook";
|
|
9676
|
+
};
|
|
9677
|
+
export type SuppressionsControllerListV1Params = {
|
|
9678
|
+
/**
|
|
9679
|
+
* Max rows to return (1–100).
|
|
9680
|
+
* @minimum 1
|
|
9681
|
+
* @maximum 100
|
|
9682
|
+
*/
|
|
9683
|
+
limit?: number;
|
|
9684
|
+
/**
|
|
9685
|
+
* Rows to skip.
|
|
9686
|
+
* @minimum 0
|
|
9687
|
+
*/
|
|
9688
|
+
offset?: number;
|
|
9689
|
+
/**
|
|
9690
|
+
* Exact-match on the normalized address.
|
|
9691
|
+
*/
|
|
9692
|
+
address?: string;
|
|
9693
|
+
channel?: SuppressionsControllerListV1Channel;
|
|
9694
|
+
reason?: SuppressionsControllerListV1Reason;
|
|
9695
|
+
/**
|
|
9696
|
+
* `true` (the default) returns only blocks still in force — not released and not expired. `false` returns only the released/expired history; omit nothing to get both.
|
|
9697
|
+
*/
|
|
9698
|
+
active?: boolean;
|
|
9699
|
+
};
|
|
9700
|
+
export type SuppressionsControllerListV1Channel = typeof SuppressionsControllerListV1Channel[keyof typeof SuppressionsControllerListV1Channel];
|
|
9701
|
+
export declare const SuppressionsControllerListV1Channel: {
|
|
9702
|
+
readonly email: "email";
|
|
9703
|
+
readonly sms: "sms";
|
|
9704
|
+
readonly push: "push";
|
|
9705
|
+
readonly webhook: "webhook";
|
|
9706
|
+
};
|
|
9707
|
+
export type SuppressionsControllerListV1Reason = typeof SuppressionsControllerListV1Reason[keyof typeof SuppressionsControllerListV1Reason];
|
|
9708
|
+
export declare const SuppressionsControllerListV1Reason: {
|
|
9709
|
+
readonly hard_bounce: "hard_bounce";
|
|
9710
|
+
readonly complaint: "complaint";
|
|
9711
|
+
readonly sms_stop: "sms_stop";
|
|
9712
|
+
readonly manual: "manual";
|
|
9713
|
+
readonly provider_suppression: "provider_suppression";
|
|
9714
|
+
};
|
|
9715
|
+
export type NotificationDispatchesControllerListV1Params = {
|
|
9716
|
+
/**
|
|
9717
|
+
* Max rows to return (1–100).
|
|
9718
|
+
* @minimum 1
|
|
9719
|
+
* @maximum 100
|
|
9720
|
+
*/
|
|
9721
|
+
limit?: number;
|
|
9722
|
+
/**
|
|
9723
|
+
* Rows to skip.
|
|
9724
|
+
* @minimum 0
|
|
9725
|
+
*/
|
|
9726
|
+
offset?: number;
|
|
9727
|
+
status?: NotificationDispatchesControllerListV1Status;
|
|
9728
|
+
category?: NotificationDispatchesControllerListV1Category;
|
|
9729
|
+
channel?: NotificationDispatchesControllerListV1Channel;
|
|
9730
|
+
/**
|
|
9731
|
+
* Exact-match on the snapshotted recipient address.
|
|
9732
|
+
*/
|
|
9733
|
+
recipientAddress?: string;
|
|
9734
|
+
/**
|
|
9735
|
+
* Filter by business event, resolved through the parent notification_request.
|
|
9736
|
+
*/
|
|
9737
|
+
eventKey?: string;
|
|
9738
|
+
/**
|
|
9739
|
+
* Test-sends are hidden by default. `true` shows only them; omit for the default.
|
|
9740
|
+
*/
|
|
9741
|
+
isTest?: boolean;
|
|
9742
|
+
/**
|
|
9743
|
+
* Inclusive lower bound on createdAt. Defaults to 30 days ago.
|
|
9744
|
+
*/
|
|
9745
|
+
createdFrom?: string;
|
|
9746
|
+
/**
|
|
9747
|
+
* Exclusive upper bound on createdAt. Defaults to now.
|
|
9748
|
+
*/
|
|
9749
|
+
createdTo?: string;
|
|
9750
|
+
};
|
|
9751
|
+
export type NotificationDispatchesControllerListV1Status = typeof NotificationDispatchesControllerListV1Status[keyof typeof NotificationDispatchesControllerListV1Status];
|
|
9752
|
+
export declare const NotificationDispatchesControllerListV1Status: {
|
|
9753
|
+
readonly queued: "queued";
|
|
9754
|
+
readonly rendering: "rendering";
|
|
9755
|
+
readonly render_failed: "render_failed";
|
|
9756
|
+
readonly suppressed: "suppressed";
|
|
9757
|
+
readonly skipped_opt_out: "skipped_opt_out";
|
|
9758
|
+
readonly skipped_disabled: "skipped_disabled";
|
|
9759
|
+
readonly skipped_cost_capped: "skipped_cost_capped";
|
|
9760
|
+
readonly sent: "sent";
|
|
9761
|
+
readonly delivered: "delivered";
|
|
9762
|
+
readonly opened: "opened";
|
|
9763
|
+
readonly clicked: "clicked";
|
|
9764
|
+
readonly soft_bounced: "soft_bounced";
|
|
9765
|
+
readonly hard_bounced: "hard_bounced";
|
|
9766
|
+
readonly complaint: "complaint";
|
|
9767
|
+
readonly failed: "failed";
|
|
9768
|
+
readonly dead_lettered: "dead_lettered";
|
|
9769
|
+
readonly permanently_failed: "permanently_failed";
|
|
9770
|
+
};
|
|
9771
|
+
export type NotificationDispatchesControllerListV1Category = typeof NotificationDispatchesControllerListV1Category[keyof typeof NotificationDispatchesControllerListV1Category];
|
|
9772
|
+
export declare const NotificationDispatchesControllerListV1Category: {
|
|
9773
|
+
readonly marketing: "marketing";
|
|
9774
|
+
readonly operational: "operational";
|
|
9775
|
+
readonly transactional: "transactional";
|
|
9776
|
+
readonly billing: "billing";
|
|
9777
|
+
readonly security: "security";
|
|
9778
|
+
readonly system: "system";
|
|
9779
|
+
};
|
|
9780
|
+
export type NotificationDispatchesControllerListV1Channel = typeof NotificationDispatchesControllerListV1Channel[keyof typeof NotificationDispatchesControllerListV1Channel];
|
|
9781
|
+
export declare const NotificationDispatchesControllerListV1Channel: {
|
|
9782
|
+
readonly email: "email";
|
|
9783
|
+
readonly sms: "sms";
|
|
9784
|
+
readonly push: "push";
|
|
9785
|
+
readonly webhook: "webhook";
|
|
9786
|
+
};
|
|
9787
|
+
export type SenderIdentitiesControllerListV1Params = {
|
|
9788
|
+
channel?: SenderIdentitiesControllerListV1Channel;
|
|
9789
|
+
};
|
|
9790
|
+
export type SenderIdentitiesControllerListV1Channel = typeof SenderIdentitiesControllerListV1Channel[keyof typeof SenderIdentitiesControllerListV1Channel];
|
|
9791
|
+
export declare const SenderIdentitiesControllerListV1Channel: {
|
|
9792
|
+
readonly email: "email";
|
|
9793
|
+
readonly sms: "sms";
|
|
9794
|
+
readonly push: "push";
|
|
9795
|
+
readonly webhook: "webhook";
|
|
9796
|
+
};
|
|
8091
9797
|
//# sourceMappingURL=index.schemas.d.ts.map
|