samva 0.6.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/{categories-4u9Az4No.js → categories-DvsHUJtX.js} +9 -1
- package/dist/client/sdk.gen.d.ts +119 -33
- package/dist/client/types.gen.d.ts +643 -142
- package/dist/{client-DCM6U0-I.js → client-ByJHYp7r.js} +612 -223
- package/dist/{client-attribution-DYUSAa76.js → client-attribution-N5A784Zo.js} +2 -2
- package/dist/effect/analytics.js +1 -1
- package/dist/effect/api-keys.js +1 -1
- package/dist/effect/attachments.js +1 -1
- package/dist/effect/brands.d.ts +212 -0
- package/dist/effect/brands.js +24 -0
- package/dist/effect/campaigns.d.ts +35 -1
- package/dist/effect/campaigns.js +1 -1
- package/dist/effect/categories.js +1 -1
- package/dist/effect/client.js +1 -1
- package/dist/effect/contact-groups.js +1 -1
- package/dist/effect/contacts.js +1 -1
- package/dist/effect/conversations.d.ts +21 -12
- package/dist/effect/conversations.js +1 -1
- package/dist/effect/custom-fields.js +1 -1
- package/dist/effect/email.d.ts +17 -6
- package/dist/effect/email.js +2 -2
- package/dist/effect/generated-metadata.d.ts +8 -0
- package/dist/effect/generated.d.ts +2880 -1661
- package/dist/effect/index.d.ts +2 -2
- package/dist/effect/index.js +4 -4
- package/dist/effect/internal/operation.d.ts +10 -4
- package/dist/effect/media.js +1 -1
- package/dist/effect/messages.d.ts +24 -6
- package/dist/effect/messages.js +1 -1
- package/dist/effect/operations.js +1 -1
- package/dist/effect/organizations.d.ts +5 -268
- package/dist/effect/organizations.js +4 -2
- package/dist/effect/retry.js +1 -1
- package/dist/effect/scheduled-messages.d.ts +16 -0
- package/dist/effect/scheduled-messages.js +1 -1
- package/dist/effect/templates.d.ts +260 -38
- package/dist/effect/templates.js +7 -3
- package/dist/effect/unsubscribe-groups.d.ts +17 -0
- package/dist/effect/unsubscribe-groups.js +4 -2
- package/dist/effect/webhooks.d.ts +6 -6
- package/dist/effect/webhooks.js +2 -2
- package/dist/index.js +2 -2
- package/dist/{operation-02YX3hY9.js → operation-D2nEeKBD.js} +34 -5
- package/dist/promises/errors.gen.d.ts +22 -4
- package/dist/promises/index.d.ts +3 -3
- package/dist/promises/index.js +2 -2
- package/dist/promises/types.gen.d.ts +1 -1
- package/dist/{promises-8MaPNAam.js → promises-DAv8ZtOX.js} +376 -52
- package/dist/service-map.d.ts +45 -6
- package/package.json +7 -7
- package/dist/effect/design.d.ts +0 -209
- package/dist/effect/design.js +0 -13
|
@@ -130,7 +130,8 @@ export type Message = {
|
|
|
130
130
|
scheduling: {
|
|
131
131
|
dueAt: string;
|
|
132
132
|
expiresAt: string;
|
|
133
|
-
waitReason: "rate" | "daily-quota" | "domain-health" | "sending-paused" | "upstream-unavailable" | "retry" | "campaign-paused" | "domain-warming" | "onboarding-review" | null;
|
|
133
|
+
waitReason: "rate" | "daily-quota" | "domain-health" | "sending-paused" | "upstream-unavailable" | "retry" | "campaign-paused" | "domain-warming" | "onboarding-review" | "content-review" | null;
|
|
134
|
+
reviewExpectedAt: string | null;
|
|
134
135
|
} | null;
|
|
135
136
|
id: string;
|
|
136
137
|
messageId: string;
|
|
@@ -191,6 +192,8 @@ export type Message = {
|
|
|
191
192
|
createdAt: string;
|
|
192
193
|
updatedAt: string;
|
|
193
194
|
}>;
|
|
195
|
+
waitReason: "rate" | "daily-quota" | "domain-health" | "sending-paused" | "upstream-unavailable" | "retry" | "campaign-paused" | "domain-warming" | "onboarding-review" | "content-review" | null;
|
|
196
|
+
reviewExpectedAt: string | null;
|
|
194
197
|
};
|
|
195
198
|
export type PaginationMeta = {
|
|
196
199
|
page: number;
|
|
@@ -255,6 +258,8 @@ export type TemplatePublicationId = string;
|
|
|
255
258
|
export type TemplateInputContractId = string;
|
|
256
259
|
export type TemplateId = string;
|
|
257
260
|
export type TemplateData = JsonObject | null;
|
|
261
|
+
export type RenderLocale = string;
|
|
262
|
+
export type RenderTimeZone = string;
|
|
258
263
|
export type ReplyToAddresses = Array<string> | null | null;
|
|
259
264
|
export type UnsubscribeId = string;
|
|
260
265
|
export type EmailFooterOverride = {
|
|
@@ -270,6 +275,8 @@ export type EmailContent = {
|
|
|
270
275
|
templateId?: TemplateId | null | undefined;
|
|
271
276
|
templateSlug?: string | null | undefined;
|
|
272
277
|
templateData?: TemplateData | undefined;
|
|
278
|
+
locale?: RenderLocale | undefined;
|
|
279
|
+
timeZone?: RenderTimeZone | undefined;
|
|
273
280
|
inReplyToMessageId?: MessageId | null | undefined;
|
|
274
281
|
replyTo?: ReplyToAddresses | undefined;
|
|
275
282
|
unsubscribeGroupId?: UnsubscribeId | null | undefined;
|
|
@@ -321,7 +328,7 @@ export type ValidationError = {
|
|
|
321
328
|
export type OnboardingReviewRequiredError = {
|
|
322
329
|
_tag: "OnboardingReviewRequiredError";
|
|
323
330
|
code: "review_required" | "review_in_progress" | "information_required" | "review_rejected" | "identity_review_required" | "identity_review_rejected" | "identity_changed";
|
|
324
|
-
decision: "undecided" | "approved" | "rejected"
|
|
331
|
+
decision: "undecided" | "approved" | "rejected";
|
|
325
332
|
stage: "collecting" | "automated_review" | "manual_review" | "information_requested" | "complete";
|
|
326
333
|
nextAction: "wait_for_review" | "provide_information" | "verify_sending_identity" | "reapply" | "contact_support";
|
|
327
334
|
identityId?: string | null | undefined;
|
|
@@ -396,6 +403,8 @@ export type EmailDispatchContent = {
|
|
|
396
403
|
templateId?: TemplateId | null | undefined;
|
|
397
404
|
templateSlug?: string | null | undefined;
|
|
398
405
|
templateData?: TemplateData | undefined;
|
|
406
|
+
locale?: RenderLocale | undefined;
|
|
407
|
+
timeZone?: RenderTimeZone | undefined;
|
|
399
408
|
inReplyToMessageId?: MessageId | null | undefined;
|
|
400
409
|
replyTo?: ReplyToAddresses | undefined;
|
|
401
410
|
unsubscribeGroupId?: UnsubscribeId | null | undefined;
|
|
@@ -540,6 +549,15 @@ export type CampaignRun = {
|
|
|
540
549
|
createdAt: string;
|
|
541
550
|
updatedAt: string;
|
|
542
551
|
};
|
|
552
|
+
export type BrandAddressRequiredError = {
|
|
553
|
+
_tag: "BrandAddressRequiredError";
|
|
554
|
+
message: string;
|
|
555
|
+
brand: string | null;
|
|
556
|
+
};
|
|
557
|
+
export type CampaignFooterRequiredError = {
|
|
558
|
+
_tag: "CampaignFooterRequiredError";
|
|
559
|
+
message: string;
|
|
560
|
+
};
|
|
543
561
|
export type CampaignRunAction = {
|
|
544
562
|
success: boolean;
|
|
545
563
|
item: CampaignRun;
|
|
@@ -555,7 +573,8 @@ export type IdentityClearanceStatus = {
|
|
|
555
573
|
updatedAt: string;
|
|
556
574
|
};
|
|
557
575
|
export type OnboardingReviewStatus = {
|
|
558
|
-
decision: "undecided" | "approved" | "rejected"
|
|
576
|
+
decision: "undecided" | "approved" | "rejected";
|
|
577
|
+
trustTier: "screened" | "probation" | "established";
|
|
559
578
|
stage: "collecting" | "automated_review" | "manual_review" | "information_requested" | "complete";
|
|
560
579
|
generation: number;
|
|
561
580
|
canSend: boolean;
|
|
@@ -734,7 +753,7 @@ export type EmailDomainVerification = {
|
|
|
734
753
|
staleAt: string | null;
|
|
735
754
|
nextRetryAt: string | null;
|
|
736
755
|
status: "ready" | "blocked" | "unknown";
|
|
737
|
-
reason: "domain-not-ready" | "domain-observation-stale" | "operator-paused" | "sending-paused" | "sending-status-
|
|
756
|
+
reason: "domain-not-ready" | "domain-observation-stale" | "operator-paused" | "sending-paused" | "sending-status-unknown" | "ready";
|
|
738
757
|
};
|
|
739
758
|
dmarc: {
|
|
740
759
|
status: "valid" | "missing" | "invalid" | "multiple" | "unknown";
|
|
@@ -975,7 +994,7 @@ export type ActorTracking = {
|
|
|
975
994
|
activeActorIds: Array<ActorId>;
|
|
976
995
|
actorHistory: Array<{
|
|
977
996
|
actorId: ActorId;
|
|
978
|
-
actorType: "contact" | "system" | "
|
|
997
|
+
actorType: "contact" | "system" | "sender" | "agent" | "user";
|
|
979
998
|
joinedAt: string;
|
|
980
999
|
leftAt?: string | null | undefined;
|
|
981
1000
|
role: "initiator" | "responder" | "observer";
|
|
@@ -1043,7 +1062,7 @@ export type Conversation = {
|
|
|
1043
1062
|
};
|
|
1044
1063
|
export type ConversationParticipant = {
|
|
1045
1064
|
actorId: ActorId;
|
|
1046
|
-
actorType: "contact" | "system" | "
|
|
1065
|
+
actorType: "contact" | "system" | "sender" | "agent" | "user";
|
|
1047
1066
|
contact: MessageContact;
|
|
1048
1067
|
};
|
|
1049
1068
|
export type ConversationDetail = {
|
|
@@ -1220,6 +1239,20 @@ export type TemplateFromDefault = {
|
|
|
1220
1239
|
email: string;
|
|
1221
1240
|
name?: string | null | undefined;
|
|
1222
1241
|
};
|
|
1242
|
+
export type TemplatePublicationBrand = {
|
|
1243
|
+
/**
|
|
1244
|
+
* The brand the publication imports.
|
|
1245
|
+
*/
|
|
1246
|
+
slug: string;
|
|
1247
|
+
/**
|
|
1248
|
+
* The brand's digest when the publication was built.
|
|
1249
|
+
*/
|
|
1250
|
+
digest: string;
|
|
1251
|
+
/**
|
|
1252
|
+
* Whether the brand has changed since this publication was built. Publishing the same commit again picks up the change.
|
|
1253
|
+
*/
|
|
1254
|
+
stale: boolean;
|
|
1255
|
+
};
|
|
1223
1256
|
export type Template = {
|
|
1224
1257
|
id: TemplateId;
|
|
1225
1258
|
organizationId: OrganizationId;
|
|
@@ -1245,6 +1278,7 @@ export type Template = {
|
|
|
1245
1278
|
} | null;
|
|
1246
1279
|
} | null;
|
|
1247
1280
|
publicationId: TemplatePublicationId | null;
|
|
1281
|
+
brand: TemplatePublicationBrand | null;
|
|
1248
1282
|
inputContractId: TemplateInputContractId | null;
|
|
1249
1283
|
inputSchema: {
|
|
1250
1284
|
[key: string]: JsonValue;
|
|
@@ -1284,15 +1318,24 @@ export type CreateTemplatePayload = {
|
|
|
1284
1318
|
projectName?: string | null | undefined;
|
|
1285
1319
|
slug?: string | null | undefined;
|
|
1286
1320
|
galleryTemplateId?: string | null | undefined;
|
|
1321
|
+
useBrand?: boolean | null | undefined;
|
|
1287
1322
|
description?: string | null | null | undefined;
|
|
1288
1323
|
category?: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null | null | undefined;
|
|
1289
1324
|
isActive?: boolean | null | undefined;
|
|
1290
1325
|
idempotencyKey: string;
|
|
1291
1326
|
};
|
|
1327
|
+
export type AddTemplateEntryPayload = {
|
|
1328
|
+
entryPath: string;
|
|
1329
|
+
name: string;
|
|
1330
|
+
slug: string;
|
|
1331
|
+
description?: string | null | null | undefined;
|
|
1332
|
+
category?: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null | null | undefined;
|
|
1333
|
+
};
|
|
1292
1334
|
export type UpdateTemplatePayload = {
|
|
1293
1335
|
data: {
|
|
1294
1336
|
name?: string | null | undefined;
|
|
1295
1337
|
slug?: string | null | undefined;
|
|
1338
|
+
entryPath?: string | null | undefined;
|
|
1296
1339
|
description?: string | null | null | undefined;
|
|
1297
1340
|
category?: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null | null | undefined;
|
|
1298
1341
|
fromDefault?: TemplateFromDefault | null | null | undefined;
|
|
@@ -1300,81 +1343,83 @@ export type UpdateTemplatePayload = {
|
|
|
1300
1343
|
isActive?: boolean | null | undefined;
|
|
1301
1344
|
};
|
|
1302
1345
|
};
|
|
1303
|
-
export type
|
|
1304
|
-
|
|
1346
|
+
export type BrandAssets = {
|
|
1347
|
+
logoUrl?: string | null | undefined;
|
|
1348
|
+
logoDarkUrl?: string | null | undefined;
|
|
1349
|
+
iconUrl?: string | null | undefined;
|
|
1305
1350
|
};
|
|
1306
|
-
export type
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
fontFamilies?: {
|
|
1314
|
-
[key: string]: {
|
|
1315
|
-
source: "system" | "google" | "custom";
|
|
1316
|
-
family: string;
|
|
1317
|
-
fallback: string;
|
|
1318
|
-
faces?: Array<{
|
|
1319
|
-
weight: number;
|
|
1320
|
-
style: "normal" | "italic";
|
|
1321
|
-
src: string;
|
|
1322
|
-
unicodeRange?: string | null | undefined;
|
|
1323
|
-
}> | null | undefined;
|
|
1324
|
-
};
|
|
1325
|
-
} | null | undefined;
|
|
1326
|
-
fontWeights?: {
|
|
1327
|
-
[key: string]: number;
|
|
1328
|
-
} | null | undefined;
|
|
1329
|
-
text?: {
|
|
1330
|
-
[key: string]: {
|
|
1331
|
-
sizePx: number;
|
|
1332
|
-
lineHeightPx: number;
|
|
1333
|
-
};
|
|
1334
|
-
} | null | undefined;
|
|
1335
|
-
leading?: {
|
|
1336
|
-
[key: string]: number;
|
|
1337
|
-
} | null | undefined;
|
|
1338
|
-
spacingPx?: number | null | undefined;
|
|
1339
|
-
containerPx?: {
|
|
1340
|
-
[key: string]: number;
|
|
1341
|
-
} | null | undefined;
|
|
1342
|
-
tracking?: {
|
|
1343
|
-
[key: string]: number;
|
|
1344
|
-
} | null | undefined;
|
|
1345
|
-
} | null | undefined;
|
|
1346
|
-
assets?: {
|
|
1347
|
-
logoUrl?: string | null | null | undefined;
|
|
1348
|
-
logoDarkUrl?: string | null | null | undefined;
|
|
1349
|
-
iconUrl?: string | null | null | undefined;
|
|
1350
|
-
} | null | undefined;
|
|
1351
|
-
footer?: {
|
|
1352
|
-
companyName?: string | null | undefined;
|
|
1353
|
-
address?: {
|
|
1354
|
-
street1: string;
|
|
1355
|
-
street2?: string | null | undefined;
|
|
1356
|
-
city: string;
|
|
1357
|
-
region: string;
|
|
1358
|
-
postalCode: string;
|
|
1359
|
-
country: string;
|
|
1360
|
-
} | null | undefined;
|
|
1361
|
-
socialLinks?: Array<{
|
|
1362
|
-
label: string;
|
|
1363
|
-
url: string;
|
|
1364
|
-
}> | null | undefined;
|
|
1365
|
-
customHtml?: string | null | undefined;
|
|
1366
|
-
} | null | undefined;
|
|
1351
|
+
export type BrandAddress = {
|
|
1352
|
+
street1: string;
|
|
1353
|
+
street2?: string | null | undefined;
|
|
1354
|
+
city: string;
|
|
1355
|
+
region: string;
|
|
1356
|
+
postalCode: string;
|
|
1357
|
+
country: string;
|
|
1367
1358
|
};
|
|
1368
|
-
export type
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
|
|
1359
|
+
export type BrandSocialLink = {
|
|
1360
|
+
label: string;
|
|
1361
|
+
url: string;
|
|
1362
|
+
};
|
|
1363
|
+
export type BrandFooter = {
|
|
1364
|
+
companyName?: string | null | undefined;
|
|
1365
|
+
address?: BrandAddress | null | undefined;
|
|
1366
|
+
socialLinks?: Array<BrandSocialLink> | null | undefined;
|
|
1367
|
+
};
|
|
1368
|
+
export type BrandFooterBlock = {
|
|
1369
|
+
html: string;
|
|
1370
|
+
text: string;
|
|
1371
|
+
};
|
|
1372
|
+
export type BrandRenderedFooter = {
|
|
1373
|
+
withUnsubscribe: BrandFooterBlock;
|
|
1374
|
+
withoutUnsubscribe: BrandFooterBlock;
|
|
1375
|
+
};
|
|
1376
|
+
export type BrandId = string;
|
|
1377
|
+
export type Brand = {
|
|
1378
|
+
id: BrandId;
|
|
1379
|
+
/**
|
|
1380
|
+
* The brand's handle, unique in the organization; `samva:brand/<slug>` names it.
|
|
1381
|
+
*/
|
|
1382
|
+
slug: string;
|
|
1383
|
+
name: string;
|
|
1384
|
+
/**
|
|
1385
|
+
* Whether bare `samva:brand` and domains without a brand resolve to this brand.
|
|
1386
|
+
*/
|
|
1387
|
+
isDefault: boolean;
|
|
1388
|
+
/**
|
|
1389
|
+
* Brand theme CSS: `@theme` variables, one dark-mode `@theme` of colors, and `@font-face` rules with https WOFF2 sources.
|
|
1390
|
+
*/
|
|
1391
|
+
css: string;
|
|
1392
|
+
assets: BrandAssets;
|
|
1393
|
+
footer: BrandFooter;
|
|
1394
|
+
/**
|
|
1395
|
+
* SHA-256 of the brand's css, assets and footer. A publication built against a different digest predates the brand's current content.
|
|
1396
|
+
*/
|
|
1397
|
+
digest: string;
|
|
1398
|
+
createdAt: string;
|
|
1399
|
+
updatedAt: string;
|
|
1400
|
+
};
|
|
1401
|
+
export type BrandList = {
|
|
1402
|
+
items: Array<Brand>;
|
|
1403
|
+
};
|
|
1404
|
+
export type CreateBrand = {
|
|
1405
|
+
slug: string;
|
|
1406
|
+
name: string;
|
|
1407
|
+
css?: string | null | undefined;
|
|
1408
|
+
assets?: BrandAssets | null | undefined;
|
|
1409
|
+
footer?: BrandFooter | null | undefined;
|
|
1410
|
+
isDefault?: boolean | null | undefined;
|
|
1411
|
+
};
|
|
1412
|
+
export type UpdateBrand = {
|
|
1413
|
+
newSlug?: string | null | undefined;
|
|
1414
|
+
name?: string | null | undefined;
|
|
1415
|
+
css?: string | null | undefined;
|
|
1416
|
+
assets?: BrandAssets | null | undefined;
|
|
1417
|
+
footer?: BrandFooter | null | undefined;
|
|
1373
1418
|
};
|
|
1374
1419
|
export type CreateWebhookPayload = {
|
|
1375
1420
|
name: string;
|
|
1376
1421
|
url: string;
|
|
1377
|
-
eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "contact.created" | "contact.updated" | "contact.deleted" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated">;
|
|
1422
|
+
eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.unsubscribed" | "contact.resubscribed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated">;
|
|
1378
1423
|
channels?: Array<"email"> | null | undefined;
|
|
1379
1424
|
headers?: {
|
|
1380
1425
|
[key: string]: string;
|
|
@@ -1385,7 +1430,7 @@ export type WebhookEndpoint = {
|
|
|
1385
1430
|
id: WebhookEndpointId;
|
|
1386
1431
|
name: string;
|
|
1387
1432
|
url: string;
|
|
1388
|
-
eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "contact.created" | "contact.updated" | "contact.deleted" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated">;
|
|
1433
|
+
eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.unsubscribed" | "contact.resubscribed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated">;
|
|
1389
1434
|
channels: Array<"email"> | null;
|
|
1390
1435
|
status: "active" | "disabled";
|
|
1391
1436
|
hasCustomHeaders: boolean;
|
|
@@ -1405,7 +1450,7 @@ export type WebhookEndpointListItem = {
|
|
|
1405
1450
|
id: WebhookEndpointId;
|
|
1406
1451
|
name: string;
|
|
1407
1452
|
url: string;
|
|
1408
|
-
eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "contact.created" | "contact.updated" | "contact.deleted" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated">;
|
|
1453
|
+
eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.unsubscribed" | "contact.resubscribed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated">;
|
|
1409
1454
|
channels: Array<"email"> | null;
|
|
1410
1455
|
status: "active" | "disabled";
|
|
1411
1456
|
hasCustomHeaders: boolean;
|
|
@@ -1418,7 +1463,7 @@ export type WebhookEndpointListItem = {
|
|
|
1418
1463
|
export type UpdateWebhookPayload = {
|
|
1419
1464
|
name?: string | null | undefined;
|
|
1420
1465
|
url?: string | null | undefined;
|
|
1421
|
-
eventTypes?: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "contact.created" | "contact.updated" | "contact.deleted" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated"> | null | undefined;
|
|
1466
|
+
eventTypes?: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.unsubscribed" | "contact.resubscribed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated"> | null | undefined;
|
|
1422
1467
|
channels?: Array<"email"> | null | null | undefined;
|
|
1423
1468
|
headers?: {
|
|
1424
1469
|
[key: string]: string;
|
|
@@ -1462,9 +1507,7 @@ export type Organization = {
|
|
|
1462
1507
|
metadata: {
|
|
1463
1508
|
[key: string]: JsonValue;
|
|
1464
1509
|
} | null;
|
|
1465
|
-
design: Design | null;
|
|
1466
1510
|
replyToDefault: Array<string> | null;
|
|
1467
|
-
defaultUnsubscribeGroupId: UnsubscribeId | null;
|
|
1468
1511
|
emailFooterEnabledDefault: boolean | null;
|
|
1469
1512
|
messagesUsed: number;
|
|
1470
1513
|
messagesUsedThisMonth: number;
|
|
@@ -1761,7 +1804,8 @@ export type MessagesGetEmailResponses = {
|
|
|
1761
1804
|
scheduling: {
|
|
1762
1805
|
dueAt: string;
|
|
1763
1806
|
expiresAt: string;
|
|
1764
|
-
waitReason: "rate" | "daily-quota" | "domain-health" | "sending-paused" | "upstream-unavailable" | "retry" | "campaign-paused" | "domain-warming" | "onboarding-review" | null;
|
|
1807
|
+
waitReason: "rate" | "daily-quota" | "domain-health" | "sending-paused" | "upstream-unavailable" | "retry" | "campaign-paused" | "domain-warming" | "onboarding-review" | "content-review" | null;
|
|
1808
|
+
reviewExpectedAt: string | null;
|
|
1765
1809
|
} | null;
|
|
1766
1810
|
id: string;
|
|
1767
1811
|
messageId: string;
|
|
@@ -2615,9 +2659,9 @@ export type CampaignsScheduleRunErrors = {
|
|
|
2615
2659
|
*/
|
|
2616
2660
|
409: ConflictError;
|
|
2617
2661
|
/**
|
|
2618
|
-
* ValidationError
|
|
2662
|
+
* ValidationError | BrandAddressRequiredError | CampaignFooterRequiredError
|
|
2619
2663
|
*/
|
|
2620
|
-
422: ValidationError;
|
|
2664
|
+
422: ValidationError | BrandAddressRequiredError | CampaignFooterRequiredError;
|
|
2621
2665
|
/**
|
|
2622
2666
|
* InternalError
|
|
2623
2667
|
*/
|
|
@@ -3147,6 +3191,7 @@ export type EmailListDomainsData = {
|
|
|
3147
3191
|
query?: {
|
|
3148
3192
|
page?: string | null | undefined;
|
|
3149
3193
|
limit?: string | null | undefined;
|
|
3194
|
+
sendable?: "true" | null | undefined;
|
|
3150
3195
|
};
|
|
3151
3196
|
url: "/v1/email/domains";
|
|
3152
3197
|
};
|
|
@@ -3826,6 +3871,7 @@ export type EmailUpdateDomainConfigData = {
|
|
|
3826
3871
|
replyTo?: Array<string> | null | null | undefined;
|
|
3827
3872
|
unsubscribeGroupId?: UnsubscribeId | null | null | undefined;
|
|
3828
3873
|
footerEnabled?: boolean | null | null | undefined;
|
|
3874
|
+
brandSlug?: string | null | null | undefined;
|
|
3829
3875
|
};
|
|
3830
3876
|
path: {
|
|
3831
3877
|
id: EmailDomainId;
|
|
@@ -3867,6 +3913,7 @@ export type EmailUpdateDomainConfigResponses = {
|
|
|
3867
3913
|
replyTo: Array<string> | null;
|
|
3868
3914
|
unsubscribeGroupId: UnsubscribeId | null;
|
|
3869
3915
|
footerEnabled: boolean | null;
|
|
3916
|
+
brandSlug: string | null;
|
|
3870
3917
|
};
|
|
3871
3918
|
};
|
|
3872
3919
|
export type EmailUpdateDomainConfigResponse = EmailUpdateDomainConfigResponses[keyof EmailUpdateDomainConfigResponses];
|
|
@@ -7920,6 +7967,7 @@ export type UnsubscribeListResponses = {
|
|
|
7920
7967
|
organizationId: string;
|
|
7921
7968
|
name: string;
|
|
7922
7969
|
description: string | null;
|
|
7970
|
+
isDefault: boolean;
|
|
7923
7971
|
memberCount: number;
|
|
7924
7972
|
createdAt: string;
|
|
7925
7973
|
updatedAt: string;
|
|
@@ -7965,6 +8013,7 @@ export type UnsubscribeCreateResponses = {
|
|
|
7965
8013
|
organizationId: string;
|
|
7966
8014
|
name: string;
|
|
7967
8015
|
description: string | null;
|
|
8016
|
+
isDefault: boolean;
|
|
7968
8017
|
memberCount: number;
|
|
7969
8018
|
createdAt: string;
|
|
7970
8019
|
updatedAt: string;
|
|
@@ -7992,6 +8041,10 @@ export type UnsubscribeRemoveErrors = {
|
|
|
7992
8041
|
* ResourceNotFoundError
|
|
7993
8042
|
*/
|
|
7994
8043
|
404: ResourceNotFoundError;
|
|
8044
|
+
/**
|
|
8045
|
+
* ConflictError
|
|
8046
|
+
*/
|
|
8047
|
+
409: ConflictError;
|
|
7995
8048
|
/**
|
|
7996
8049
|
* InternalError
|
|
7997
8050
|
*/
|
|
@@ -8054,12 +8107,60 @@ export type UnsubscribeUpdateResponses = {
|
|
|
8054
8107
|
organizationId: string;
|
|
8055
8108
|
name: string;
|
|
8056
8109
|
description: string | null;
|
|
8110
|
+
isDefault: boolean;
|
|
8057
8111
|
memberCount: number;
|
|
8058
8112
|
createdAt: string;
|
|
8059
8113
|
updatedAt: string;
|
|
8060
8114
|
};
|
|
8061
8115
|
};
|
|
8062
8116
|
export type UnsubscribeUpdateResponse = UnsubscribeUpdateResponses[keyof UnsubscribeUpdateResponses];
|
|
8117
|
+
export type UnsubscribeSetDefaultData = {
|
|
8118
|
+
body?: never;
|
|
8119
|
+
path: {
|
|
8120
|
+
id: UnsubscribeId;
|
|
8121
|
+
};
|
|
8122
|
+
query?: never;
|
|
8123
|
+
url: "/v1/unsubscribe-groups/{id}/default";
|
|
8124
|
+
};
|
|
8125
|
+
export type UnsubscribeSetDefaultErrors = {
|
|
8126
|
+
/**
|
|
8127
|
+
* UnauthorizedError
|
|
8128
|
+
*/
|
|
8129
|
+
401: UnauthorizedError;
|
|
8130
|
+
/**
|
|
8131
|
+
* ForbiddenError
|
|
8132
|
+
*/
|
|
8133
|
+
403: ForbiddenError;
|
|
8134
|
+
/**
|
|
8135
|
+
* ResourceNotFoundError
|
|
8136
|
+
*/
|
|
8137
|
+
404: ResourceNotFoundError;
|
|
8138
|
+
/**
|
|
8139
|
+
* InternalError
|
|
8140
|
+
*/
|
|
8141
|
+
500: InternalError;
|
|
8142
|
+
/**
|
|
8143
|
+
* GatewayTimeoutError
|
|
8144
|
+
*/
|
|
8145
|
+
504: GatewayTimeoutError;
|
|
8146
|
+
};
|
|
8147
|
+
export type UnsubscribeSetDefaultError = UnsubscribeSetDefaultErrors[keyof UnsubscribeSetDefaultErrors];
|
|
8148
|
+
export type UnsubscribeSetDefaultResponses = {
|
|
8149
|
+
/**
|
|
8150
|
+
* Success
|
|
8151
|
+
*/
|
|
8152
|
+
200: {
|
|
8153
|
+
id: UnsubscribeId;
|
|
8154
|
+
organizationId: string;
|
|
8155
|
+
name: string;
|
|
8156
|
+
description: string | null;
|
|
8157
|
+
isDefault: boolean;
|
|
8158
|
+
memberCount: number;
|
|
8159
|
+
createdAt: string;
|
|
8160
|
+
updatedAt: string;
|
|
8161
|
+
};
|
|
8162
|
+
};
|
|
8163
|
+
export type UnsubscribeSetDefaultResponse = UnsubscribeSetDefaultResponses[keyof UnsubscribeSetDefaultResponses];
|
|
8063
8164
|
export type UnsubscribeRemoveEmailsData = {
|
|
8064
8165
|
body: {
|
|
8065
8166
|
emails: Array<string>;
|
|
@@ -8529,6 +8630,7 @@ export type TemplatesListData = {
|
|
|
8529
8630
|
channel?: "email" | null | undefined;
|
|
8530
8631
|
status?: "draft" | "pending" | "approved" | "published" | "rejected" | "archived" | null | undefined;
|
|
8531
8632
|
search?: string | null | undefined;
|
|
8633
|
+
projectId?: TemplateProjectId | null | undefined;
|
|
8532
8634
|
sortBy?: "name" | "createdAt" | "updatedAt" | "usageCount" | "lastUsedAt" | null | undefined;
|
|
8533
8635
|
sortOrder?: "asc" | "desc" | null | undefined;
|
|
8534
8636
|
};
|
|
@@ -8569,6 +8671,7 @@ export type TemplatesCreateData = {
|
|
|
8569
8671
|
projectName?: string | null | undefined;
|
|
8570
8672
|
slug?: string | null | undefined;
|
|
8571
8673
|
galleryTemplateId?: string | null | undefined;
|
|
8674
|
+
useBrand?: boolean | null | undefined;
|
|
8572
8675
|
description?: string | null | null | undefined;
|
|
8573
8676
|
category?: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null | null | undefined;
|
|
8574
8677
|
isActive?: boolean | null | undefined;
|
|
@@ -9027,6 +9130,7 @@ export type TemplatesUpdateData = {
|
|
|
9027
9130
|
data: {
|
|
9028
9131
|
name?: string | null | undefined;
|
|
9029
9132
|
slug?: string | null | undefined;
|
|
9133
|
+
entryPath?: string | null | undefined;
|
|
9030
9134
|
description?: string | null | null | undefined;
|
|
9031
9135
|
category?: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null | null | undefined;
|
|
9032
9136
|
fromDefault?: TemplateFromDefault | null | null | undefined;
|
|
@@ -9078,6 +9182,58 @@ export type TemplatesUpdateResponses = {
|
|
|
9078
9182
|
200: Template;
|
|
9079
9183
|
};
|
|
9080
9184
|
export type TemplatesUpdateResponse = TemplatesUpdateResponses[keyof TemplatesUpdateResponses];
|
|
9185
|
+
export type TemplatesAddEntryData = {
|
|
9186
|
+
body: {
|
|
9187
|
+
entryPath: string;
|
|
9188
|
+
name: string;
|
|
9189
|
+
slug: string;
|
|
9190
|
+
description?: string | null | null | undefined;
|
|
9191
|
+
category?: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null | null | undefined;
|
|
9192
|
+
};
|
|
9193
|
+
path: {
|
|
9194
|
+
projectId: TemplateProjectId;
|
|
9195
|
+
};
|
|
9196
|
+
query?: never;
|
|
9197
|
+
url: "/v1/templates/projects/{projectId}/entries";
|
|
9198
|
+
};
|
|
9199
|
+
export type TemplatesAddEntryErrors = {
|
|
9200
|
+
/**
|
|
9201
|
+
* UnauthorizedError
|
|
9202
|
+
*/
|
|
9203
|
+
401: UnauthorizedError;
|
|
9204
|
+
/**
|
|
9205
|
+
* ForbiddenError
|
|
9206
|
+
*/
|
|
9207
|
+
403: ForbiddenError;
|
|
9208
|
+
/**
|
|
9209
|
+
* ResourceNotFoundError
|
|
9210
|
+
*/
|
|
9211
|
+
404: ResourceNotFoundError;
|
|
9212
|
+
/**
|
|
9213
|
+
* ConflictError
|
|
9214
|
+
*/
|
|
9215
|
+
409: ConflictError;
|
|
9216
|
+
/**
|
|
9217
|
+
* ValidationError
|
|
9218
|
+
*/
|
|
9219
|
+
422: ValidationError;
|
|
9220
|
+
/**
|
|
9221
|
+
* InternalError
|
|
9222
|
+
*/
|
|
9223
|
+
500: InternalError;
|
|
9224
|
+
/**
|
|
9225
|
+
* GatewayTimeoutError
|
|
9226
|
+
*/
|
|
9227
|
+
504: GatewayTimeoutError;
|
|
9228
|
+
};
|
|
9229
|
+
export type TemplatesAddEntryError = TemplatesAddEntryErrors[keyof TemplatesAddEntryErrors];
|
|
9230
|
+
export type TemplatesAddEntryResponses = {
|
|
9231
|
+
/**
|
|
9232
|
+
* Success
|
|
9233
|
+
*/
|
|
9234
|
+
201: Template;
|
|
9235
|
+
};
|
|
9236
|
+
export type TemplatesAddEntryResponse = TemplatesAddEntryResponses[keyof TemplatesAddEntryResponses];
|
|
9081
9237
|
export type TemplatesPatchWorkspaceData = {
|
|
9082
9238
|
body: {
|
|
9083
9239
|
expectedRevision: string;
|
|
@@ -9387,6 +9543,138 @@ export type TemplatesDiffWorkspaceResponses = {
|
|
|
9387
9543
|
};
|
|
9388
9544
|
};
|
|
9389
9545
|
export type TemplatesDiffWorkspaceResponse = TemplatesDiffWorkspaceResponses[keyof TemplatesDiffWorkspaceResponses];
|
|
9546
|
+
export type TemplatesPutWorkspaceAssetData = {
|
|
9547
|
+
body: {
|
|
9548
|
+
expectedRevision: string;
|
|
9549
|
+
path: string;
|
|
9550
|
+
contentBase64: string;
|
|
9551
|
+
replace: boolean;
|
|
9552
|
+
idempotencyKey: string;
|
|
9553
|
+
};
|
|
9554
|
+
path: {
|
|
9555
|
+
id: TemplateId;
|
|
9556
|
+
};
|
|
9557
|
+
query?: never;
|
|
9558
|
+
url: "/v1/templates/{id}/workspace/assets";
|
|
9559
|
+
};
|
|
9560
|
+
export type TemplatesPutWorkspaceAssetErrors = {
|
|
9561
|
+
/**
|
|
9562
|
+
* UnauthorizedError
|
|
9563
|
+
*/
|
|
9564
|
+
401: UnauthorizedError;
|
|
9565
|
+
/**
|
|
9566
|
+
* ForbiddenError
|
|
9567
|
+
*/
|
|
9568
|
+
403: ForbiddenError;
|
|
9569
|
+
/**
|
|
9570
|
+
* ResourceNotFoundError
|
|
9571
|
+
*/
|
|
9572
|
+
404: ResourceNotFoundError;
|
|
9573
|
+
/**
|
|
9574
|
+
* ConflictError
|
|
9575
|
+
*/
|
|
9576
|
+
409: ConflictError;
|
|
9577
|
+
/**
|
|
9578
|
+
* ValidationError
|
|
9579
|
+
*/
|
|
9580
|
+
422: ValidationError;
|
|
9581
|
+
/**
|
|
9582
|
+
* InternalError
|
|
9583
|
+
*/
|
|
9584
|
+
500: InternalError;
|
|
9585
|
+
/**
|
|
9586
|
+
* GatewayTimeoutError
|
|
9587
|
+
*/
|
|
9588
|
+
504: GatewayTimeoutError;
|
|
9589
|
+
};
|
|
9590
|
+
export type TemplatesPutWorkspaceAssetError = TemplatesPutWorkspaceAssetErrors[keyof TemplatesPutWorkspaceAssetErrors];
|
|
9591
|
+
export type TemplatesPutWorkspaceAssetResponses = {
|
|
9592
|
+
/**
|
|
9593
|
+
* Success
|
|
9594
|
+
*/
|
|
9595
|
+
200: {
|
|
9596
|
+
workspace: {
|
|
9597
|
+
projectId: TemplateProjectId;
|
|
9598
|
+
organizationId: OrganizationId | null;
|
|
9599
|
+
ownerEpoch: number;
|
|
9600
|
+
repositoryName: string;
|
|
9601
|
+
defaultBranch: string;
|
|
9602
|
+
baseCommit: string;
|
|
9603
|
+
remoteHead: string;
|
|
9604
|
+
pendingRemoteHead: string | null;
|
|
9605
|
+
revision: string;
|
|
9606
|
+
overlay: {
|
|
9607
|
+
[key: string]: string | null;
|
|
9608
|
+
};
|
|
9609
|
+
assetChanges: Array<{
|
|
9610
|
+
path: string;
|
|
9611
|
+
status: "added" | "modified" | "deleted";
|
|
9612
|
+
}>;
|
|
9613
|
+
conflicts: Array<{
|
|
9614
|
+
path: string;
|
|
9615
|
+
base: string | null;
|
|
9616
|
+
draft: string | null;
|
|
9617
|
+
main: string | null;
|
|
9618
|
+
}>;
|
|
9619
|
+
provenance: {
|
|
9620
|
+
references: Array<{
|
|
9621
|
+
kind: string;
|
|
9622
|
+
digest: string;
|
|
9623
|
+
locator?: string | undefined;
|
|
9624
|
+
}>;
|
|
9625
|
+
};
|
|
9626
|
+
mounts: Array<{
|
|
9627
|
+
kind: "project";
|
|
9628
|
+
root: "/project";
|
|
9629
|
+
access: "read-write";
|
|
9630
|
+
} | {
|
|
9631
|
+
root: string;
|
|
9632
|
+
digest: string;
|
|
9633
|
+
fileCount: number;
|
|
9634
|
+
byteSize: number;
|
|
9635
|
+
kind: "started-from";
|
|
9636
|
+
access: "read-only";
|
|
9637
|
+
templateId: string;
|
|
9638
|
+
slug: string;
|
|
9639
|
+
name: string;
|
|
9640
|
+
} | {
|
|
9641
|
+
root: string;
|
|
9642
|
+
digest: string;
|
|
9643
|
+
fileCount: number;
|
|
9644
|
+
byteSize: number;
|
|
9645
|
+
kind: "resource";
|
|
9646
|
+
access: "read-only";
|
|
9647
|
+
resourceId: string;
|
|
9648
|
+
name: string;
|
|
9649
|
+
} | {
|
|
9650
|
+
root: string;
|
|
9651
|
+
digest: string;
|
|
9652
|
+
fileCount: number;
|
|
9653
|
+
byteSize: number;
|
|
9654
|
+
kind: "library-template";
|
|
9655
|
+
access: "read-only";
|
|
9656
|
+
templateId: string;
|
|
9657
|
+
slug: string;
|
|
9658
|
+
name: string;
|
|
9659
|
+
}>;
|
|
9660
|
+
libraryManifestDigest: string;
|
|
9661
|
+
createdAt: string;
|
|
9662
|
+
updatedAt: string;
|
|
9663
|
+
createdBy: {
|
|
9664
|
+
userId: UserId;
|
|
9665
|
+
via: "api" | "mcp" | "agent";
|
|
9666
|
+
};
|
|
9667
|
+
updatedBy: {
|
|
9668
|
+
userId: UserId;
|
|
9669
|
+
via: "api" | "mcp" | "agent";
|
|
9670
|
+
};
|
|
9671
|
+
};
|
|
9672
|
+
files: {
|
|
9673
|
+
[key: string]: string;
|
|
9674
|
+
};
|
|
9675
|
+
};
|
|
9676
|
+
};
|
|
9677
|
+
export type TemplatesPutWorkspaceAssetResponse = TemplatesPutWorkspaceAssetResponses[keyof TemplatesPutWorkspaceAssetResponses];
|
|
9390
9678
|
export type TemplatesReconcileWorkspaceData = {
|
|
9391
9679
|
body: {
|
|
9392
9680
|
expectedRevision: string;
|
|
@@ -9989,10 +10277,6 @@ export type TemplatesCheckWorkspaceResponses = {
|
|
|
9989
10277
|
schemaDigest: string;
|
|
9990
10278
|
contractDigest: string;
|
|
9991
10279
|
};
|
|
9992
|
-
runtime: {
|
|
9993
|
-
now?: number | undefined;
|
|
9994
|
-
randomSeed?: number | undefined;
|
|
9995
|
-
};
|
|
9996
10280
|
fixtures: Array<string>;
|
|
9997
10281
|
} | null;
|
|
9998
10282
|
diagnostics: Array<{
|
|
@@ -10100,10 +10384,6 @@ export type TemplatesRenderWorkspaceFixtureResponses = {
|
|
|
10100
10384
|
schemaDigest: string;
|
|
10101
10385
|
contractDigest: string;
|
|
10102
10386
|
};
|
|
10103
|
-
runtime: {
|
|
10104
|
-
now?: number | undefined;
|
|
10105
|
-
randomSeed?: number | undefined;
|
|
10106
|
-
};
|
|
10107
10387
|
fixtures: Array<string>;
|
|
10108
10388
|
} | null;
|
|
10109
10389
|
diagnostics: Array<{
|
|
@@ -10183,6 +10463,7 @@ export type TemplatesPublishData = {
|
|
|
10183
10463
|
commitSha: string;
|
|
10184
10464
|
entryPath: string;
|
|
10185
10465
|
expectedWorkspaceRevision: string;
|
|
10466
|
+
ifCurrentPublicationId?: TemplatePublicationId | null | undefined;
|
|
10186
10467
|
};
|
|
10187
10468
|
path: {
|
|
10188
10469
|
id: TemplateId;
|
|
@@ -10237,26 +10518,16 @@ export type TemplatesPublishResponses = {
|
|
|
10237
10518
|
buildIdentity: string;
|
|
10238
10519
|
manifest: {
|
|
10239
10520
|
templateKey: string;
|
|
10240
|
-
|
|
10241
|
-
|
|
10521
|
+
ir: {
|
|
10522
|
+
version: number;
|
|
10523
|
+
digest: string;
|
|
10242
10524
|
bytes: number;
|
|
10243
10525
|
};
|
|
10526
|
+
compiler: string;
|
|
10244
10527
|
input: {
|
|
10245
10528
|
schemaDigest: string;
|
|
10246
10529
|
contractDigest: string;
|
|
10247
10530
|
};
|
|
10248
|
-
environment: {
|
|
10249
|
-
locale: string;
|
|
10250
|
-
timeZone: "UTC";
|
|
10251
|
-
now?: number | undefined;
|
|
10252
|
-
randomSeed?: number | undefined;
|
|
10253
|
-
compiler: string;
|
|
10254
|
-
runtime: string;
|
|
10255
|
-
checker: string;
|
|
10256
|
-
lockKind: "bun" | "npm";
|
|
10257
|
-
lockDigest: string;
|
|
10258
|
-
digest: string;
|
|
10259
|
-
};
|
|
10260
10531
|
assets: {
|
|
10261
10532
|
base: string;
|
|
10262
10533
|
entries: Array<{
|
|
@@ -10274,8 +10545,17 @@ export type TemplatesPublishResponses = {
|
|
|
10274
10545
|
entryPath: string;
|
|
10275
10546
|
treeDigest: string;
|
|
10276
10547
|
};
|
|
10548
|
+
brand?: {
|
|
10549
|
+
slug: string;
|
|
10550
|
+
css: string;
|
|
10551
|
+
assets: BrandAssets;
|
|
10552
|
+
footer: BrandFooter;
|
|
10553
|
+
renderedFooter: BrandRenderedFooter;
|
|
10554
|
+
digest: string;
|
|
10555
|
+
rendersFooter: "every" | "some" | "none";
|
|
10556
|
+
} | undefined;
|
|
10277
10557
|
};
|
|
10278
|
-
|
|
10558
|
+
ir: {
|
|
10279
10559
|
key: string;
|
|
10280
10560
|
digest: string;
|
|
10281
10561
|
};
|
|
@@ -10388,26 +10668,16 @@ export type TemplatesGetPublicationResponses = {
|
|
|
10388
10668
|
buildIdentity: string;
|
|
10389
10669
|
manifest: {
|
|
10390
10670
|
templateKey: string;
|
|
10391
|
-
|
|
10392
|
-
|
|
10671
|
+
ir: {
|
|
10672
|
+
version: number;
|
|
10673
|
+
digest: string;
|
|
10393
10674
|
bytes: number;
|
|
10394
10675
|
};
|
|
10676
|
+
compiler: string;
|
|
10395
10677
|
input: {
|
|
10396
10678
|
schemaDigest: string;
|
|
10397
10679
|
contractDigest: string;
|
|
10398
10680
|
};
|
|
10399
|
-
environment: {
|
|
10400
|
-
locale: string;
|
|
10401
|
-
timeZone: "UTC";
|
|
10402
|
-
now?: number | undefined;
|
|
10403
|
-
randomSeed?: number | undefined;
|
|
10404
|
-
compiler: string;
|
|
10405
|
-
runtime: string;
|
|
10406
|
-
checker: string;
|
|
10407
|
-
lockKind: "bun" | "npm";
|
|
10408
|
-
lockDigest: string;
|
|
10409
|
-
digest: string;
|
|
10410
|
-
};
|
|
10411
10681
|
assets: {
|
|
10412
10682
|
base: string;
|
|
10413
10683
|
entries: Array<{
|
|
@@ -10425,8 +10695,17 @@ export type TemplatesGetPublicationResponses = {
|
|
|
10425
10695
|
entryPath: string;
|
|
10426
10696
|
treeDigest: string;
|
|
10427
10697
|
};
|
|
10698
|
+
brand?: {
|
|
10699
|
+
slug: string;
|
|
10700
|
+
css: string;
|
|
10701
|
+
assets: BrandAssets;
|
|
10702
|
+
footer: BrandFooter;
|
|
10703
|
+
renderedFooter: BrandRenderedFooter;
|
|
10704
|
+
digest: string;
|
|
10705
|
+
rendersFooter: "every" | "some" | "none";
|
|
10706
|
+
} | undefined;
|
|
10428
10707
|
};
|
|
10429
|
-
|
|
10708
|
+
ir: {
|
|
10430
10709
|
key: string;
|
|
10431
10710
|
digest: string;
|
|
10432
10711
|
};
|
|
@@ -10932,13 +11211,13 @@ export type TemplatesRemoveWorkspaceResourceResponses = {
|
|
|
10932
11211
|
};
|
|
10933
11212
|
};
|
|
10934
11213
|
export type TemplatesRemoveWorkspaceResourceResponse = TemplatesRemoveWorkspaceResourceResponses[keyof TemplatesRemoveWorkspaceResourceResponses];
|
|
10935
|
-
export type
|
|
11214
|
+
export type BrandsListData = {
|
|
10936
11215
|
body?: never;
|
|
10937
11216
|
path?: never;
|
|
10938
11217
|
query?: never;
|
|
10939
|
-
url: "/v1/
|
|
11218
|
+
url: "/v1/brands";
|
|
10940
11219
|
};
|
|
10941
|
-
export type
|
|
11220
|
+
export type BrandsListErrors = {
|
|
10942
11221
|
/**
|
|
10943
11222
|
* UnauthorizedError
|
|
10944
11223
|
*/
|
|
@@ -10956,23 +11235,156 @@ export type DesignGetErrors = {
|
|
|
10956
11235
|
*/
|
|
10957
11236
|
504: GatewayTimeoutError;
|
|
10958
11237
|
};
|
|
10959
|
-
export type
|
|
10960
|
-
export type
|
|
11238
|
+
export type BrandsListError = BrandsListErrors[keyof BrandsListErrors];
|
|
11239
|
+
export type BrandsListResponses = {
|
|
10961
11240
|
/**
|
|
10962
|
-
*
|
|
11241
|
+
* BrandList
|
|
10963
11242
|
*/
|
|
10964
|
-
200:
|
|
11243
|
+
200: BrandList;
|
|
10965
11244
|
};
|
|
10966
|
-
export type
|
|
10967
|
-
export type
|
|
11245
|
+
export type BrandsListResponse = BrandsListResponses[keyof BrandsListResponses];
|
|
11246
|
+
export type BrandsCreateData = {
|
|
10968
11247
|
body: {
|
|
10969
|
-
|
|
11248
|
+
slug: string;
|
|
11249
|
+
name: string;
|
|
11250
|
+
css?: string | null | undefined;
|
|
11251
|
+
assets?: BrandAssets | null | undefined;
|
|
11252
|
+
footer?: BrandFooter | null | undefined;
|
|
11253
|
+
isDefault?: boolean | null | undefined;
|
|
10970
11254
|
};
|
|
10971
11255
|
path?: never;
|
|
10972
11256
|
query?: never;
|
|
10973
|
-
url: "/v1/
|
|
11257
|
+
url: "/v1/brands";
|
|
11258
|
+
};
|
|
11259
|
+
export type BrandsCreateErrors = {
|
|
11260
|
+
/**
|
|
11261
|
+
* UnauthorizedError
|
|
11262
|
+
*/
|
|
11263
|
+
401: UnauthorizedError;
|
|
11264
|
+
/**
|
|
11265
|
+
* ForbiddenError
|
|
11266
|
+
*/
|
|
11267
|
+
403: ForbiddenError;
|
|
11268
|
+
/**
|
|
11269
|
+
* ConflictError
|
|
11270
|
+
*/
|
|
11271
|
+
409: ConflictError;
|
|
11272
|
+
/**
|
|
11273
|
+
* ValidationError
|
|
11274
|
+
*/
|
|
11275
|
+
422: ValidationError;
|
|
11276
|
+
/**
|
|
11277
|
+
* InternalError
|
|
11278
|
+
*/
|
|
11279
|
+
500: InternalError;
|
|
11280
|
+
/**
|
|
11281
|
+
* GatewayTimeoutError
|
|
11282
|
+
*/
|
|
11283
|
+
504: GatewayTimeoutError;
|
|
11284
|
+
};
|
|
11285
|
+
export type BrandsCreateError = BrandsCreateErrors[keyof BrandsCreateErrors];
|
|
11286
|
+
export type BrandsCreateResponses = {
|
|
11287
|
+
/**
|
|
11288
|
+
* Success
|
|
11289
|
+
*/
|
|
11290
|
+
201: Brand;
|
|
11291
|
+
};
|
|
11292
|
+
export type BrandsCreateResponse = BrandsCreateResponses[keyof BrandsCreateResponses];
|
|
11293
|
+
export type BrandsRemoveData = {
|
|
11294
|
+
body?: never;
|
|
11295
|
+
path: {
|
|
11296
|
+
slug: string;
|
|
11297
|
+
};
|
|
11298
|
+
query?: never;
|
|
11299
|
+
url: "/v1/brands/{slug}";
|
|
11300
|
+
};
|
|
11301
|
+
export type BrandsRemoveErrors = {
|
|
11302
|
+
/**
|
|
11303
|
+
* UnauthorizedError
|
|
11304
|
+
*/
|
|
11305
|
+
401: UnauthorizedError;
|
|
11306
|
+
/**
|
|
11307
|
+
* ForbiddenError
|
|
11308
|
+
*/
|
|
11309
|
+
403: ForbiddenError;
|
|
11310
|
+
/**
|
|
11311
|
+
* ResourceNotFoundError
|
|
11312
|
+
*/
|
|
11313
|
+
404: ResourceNotFoundError;
|
|
11314
|
+
/**
|
|
11315
|
+
* ConflictError
|
|
11316
|
+
*/
|
|
11317
|
+
409: ConflictError;
|
|
11318
|
+
/**
|
|
11319
|
+
* InternalError
|
|
11320
|
+
*/
|
|
11321
|
+
500: InternalError;
|
|
11322
|
+
/**
|
|
11323
|
+
* GatewayTimeoutError
|
|
11324
|
+
*/
|
|
11325
|
+
504: GatewayTimeoutError;
|
|
11326
|
+
};
|
|
11327
|
+
export type BrandsRemoveError = BrandsRemoveErrors[keyof BrandsRemoveErrors];
|
|
11328
|
+
export type BrandsRemoveResponses = {
|
|
11329
|
+
/**
|
|
11330
|
+
* SuccessResponse
|
|
11331
|
+
*/
|
|
11332
|
+
200: SuccessResponse;
|
|
11333
|
+
};
|
|
11334
|
+
export type BrandsRemoveResponse = BrandsRemoveResponses[keyof BrandsRemoveResponses];
|
|
11335
|
+
export type BrandsGetData = {
|
|
11336
|
+
body?: never;
|
|
11337
|
+
path: {
|
|
11338
|
+
slug: string;
|
|
11339
|
+
};
|
|
11340
|
+
query?: never;
|
|
11341
|
+
url: "/v1/brands/{slug}";
|
|
11342
|
+
};
|
|
11343
|
+
export type BrandsGetErrors = {
|
|
11344
|
+
/**
|
|
11345
|
+
* UnauthorizedError
|
|
11346
|
+
*/
|
|
11347
|
+
401: UnauthorizedError;
|
|
11348
|
+
/**
|
|
11349
|
+
* ForbiddenError
|
|
11350
|
+
*/
|
|
11351
|
+
403: ForbiddenError;
|
|
11352
|
+
/**
|
|
11353
|
+
* ResourceNotFoundError
|
|
11354
|
+
*/
|
|
11355
|
+
404: ResourceNotFoundError;
|
|
11356
|
+
/**
|
|
11357
|
+
* InternalError
|
|
11358
|
+
*/
|
|
11359
|
+
500: InternalError;
|
|
11360
|
+
/**
|
|
11361
|
+
* GatewayTimeoutError
|
|
11362
|
+
*/
|
|
11363
|
+
504: GatewayTimeoutError;
|
|
11364
|
+
};
|
|
11365
|
+
export type BrandsGetError = BrandsGetErrors[keyof BrandsGetErrors];
|
|
11366
|
+
export type BrandsGetResponses = {
|
|
11367
|
+
/**
|
|
11368
|
+
* Brand
|
|
11369
|
+
*/
|
|
11370
|
+
200: Brand;
|
|
11371
|
+
};
|
|
11372
|
+
export type BrandsGetResponse = BrandsGetResponses[keyof BrandsGetResponses];
|
|
11373
|
+
export type BrandsUpdateData = {
|
|
11374
|
+
body: {
|
|
11375
|
+
newSlug?: string | null | undefined;
|
|
11376
|
+
name?: string | null | undefined;
|
|
11377
|
+
css?: string | null | undefined;
|
|
11378
|
+
assets?: BrandAssets | null | undefined;
|
|
11379
|
+
footer?: BrandFooter | null | undefined;
|
|
11380
|
+
};
|
|
11381
|
+
path: {
|
|
11382
|
+
slug: string;
|
|
11383
|
+
};
|
|
11384
|
+
query?: never;
|
|
11385
|
+
url: "/v1/brands/{slug}";
|
|
10974
11386
|
};
|
|
10975
|
-
export type
|
|
11387
|
+
export type BrandsUpdateErrors = {
|
|
10976
11388
|
/**
|
|
10977
11389
|
* UnauthorizedError
|
|
10978
11390
|
*/
|
|
@@ -10981,6 +11393,14 @@ export type DesignUpdateErrors = {
|
|
|
10981
11393
|
* ForbiddenError
|
|
10982
11394
|
*/
|
|
10983
11395
|
403: ForbiddenError;
|
|
11396
|
+
/**
|
|
11397
|
+
* ResourceNotFoundError
|
|
11398
|
+
*/
|
|
11399
|
+
404: ResourceNotFoundError;
|
|
11400
|
+
/**
|
|
11401
|
+
* ConflictError
|
|
11402
|
+
*/
|
|
11403
|
+
409: ConflictError;
|
|
10984
11404
|
/**
|
|
10985
11405
|
* ValidationError
|
|
10986
11406
|
*/
|
|
@@ -10994,14 +11414,52 @@ export type DesignUpdateErrors = {
|
|
|
10994
11414
|
*/
|
|
10995
11415
|
504: GatewayTimeoutError;
|
|
10996
11416
|
};
|
|
10997
|
-
export type
|
|
10998
|
-
export type
|
|
11417
|
+
export type BrandsUpdateError = BrandsUpdateErrors[keyof BrandsUpdateErrors];
|
|
11418
|
+
export type BrandsUpdateResponses = {
|
|
10999
11419
|
/**
|
|
11000
|
-
*
|
|
11420
|
+
* Brand
|
|
11001
11421
|
*/
|
|
11002
|
-
200:
|
|
11422
|
+
200: Brand;
|
|
11423
|
+
};
|
|
11424
|
+
export type BrandsUpdateResponse = BrandsUpdateResponses[keyof BrandsUpdateResponses];
|
|
11425
|
+
export type BrandsSetDefaultData = {
|
|
11426
|
+
body?: never;
|
|
11427
|
+
path: {
|
|
11428
|
+
slug: string;
|
|
11429
|
+
};
|
|
11430
|
+
query?: never;
|
|
11431
|
+
url: "/v1/brands/{slug}/default";
|
|
11003
11432
|
};
|
|
11004
|
-
export type
|
|
11433
|
+
export type BrandsSetDefaultErrors = {
|
|
11434
|
+
/**
|
|
11435
|
+
* UnauthorizedError
|
|
11436
|
+
*/
|
|
11437
|
+
401: UnauthorizedError;
|
|
11438
|
+
/**
|
|
11439
|
+
* ForbiddenError
|
|
11440
|
+
*/
|
|
11441
|
+
403: ForbiddenError;
|
|
11442
|
+
/**
|
|
11443
|
+
* ResourceNotFoundError
|
|
11444
|
+
*/
|
|
11445
|
+
404: ResourceNotFoundError;
|
|
11446
|
+
/**
|
|
11447
|
+
* InternalError
|
|
11448
|
+
*/
|
|
11449
|
+
500: InternalError;
|
|
11450
|
+
/**
|
|
11451
|
+
* GatewayTimeoutError
|
|
11452
|
+
*/
|
|
11453
|
+
504: GatewayTimeoutError;
|
|
11454
|
+
};
|
|
11455
|
+
export type BrandsSetDefaultError = BrandsSetDefaultErrors[keyof BrandsSetDefaultErrors];
|
|
11456
|
+
export type BrandsSetDefaultResponses = {
|
|
11457
|
+
/**
|
|
11458
|
+
* Brand
|
|
11459
|
+
*/
|
|
11460
|
+
200: Brand;
|
|
11461
|
+
};
|
|
11462
|
+
export type BrandsSetDefaultResponse = BrandsSetDefaultResponses[keyof BrandsSetDefaultResponses];
|
|
11005
11463
|
export type WebhooksListData = {
|
|
11006
11464
|
body?: never;
|
|
11007
11465
|
path?: never;
|
|
@@ -11046,7 +11504,7 @@ export type WebhooksCreateData = {
|
|
|
11046
11504
|
body: {
|
|
11047
11505
|
name: string;
|
|
11048
11506
|
url: string;
|
|
11049
|
-
eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "contact.created" | "contact.updated" | "contact.deleted" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated">;
|
|
11507
|
+
eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.unsubscribed" | "contact.resubscribed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated">;
|
|
11050
11508
|
channels?: Array<"email"> | null | undefined;
|
|
11051
11509
|
headers?: {
|
|
11052
11510
|
[key: string]: string;
|
|
@@ -11186,7 +11644,7 @@ export type WebhooksUpdateData = {
|
|
|
11186
11644
|
body: {
|
|
11187
11645
|
name?: string | null | undefined;
|
|
11188
11646
|
url?: string | null | undefined;
|
|
11189
|
-
eventTypes?: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "contact.created" | "contact.updated" | "contact.deleted" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated"> | null | undefined;
|
|
11647
|
+
eventTypes?: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.unsubscribed" | "contact.resubscribed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated"> | null | undefined;
|
|
11190
11648
|
channels?: Array<"email"> | null | null | undefined;
|
|
11191
11649
|
headers?: {
|
|
11192
11650
|
[key: string]: string;
|
|
@@ -11578,9 +12036,7 @@ export type OrganizationsUpdateData = {
|
|
|
11578
12036
|
metadata?: {
|
|
11579
12037
|
[key: string]: JsonValue;
|
|
11580
12038
|
} | null | undefined;
|
|
11581
|
-
design?: Design | null | null | undefined;
|
|
11582
12039
|
replyToDefault?: Array<string> | null | null | undefined;
|
|
11583
|
-
defaultUnsubscribeGroupId?: UnsubscribeId | null | null | undefined;
|
|
11584
12040
|
emailFooterEnabledDefault?: boolean | null | null | undefined;
|
|
11585
12041
|
};
|
|
11586
12042
|
path?: never;
|
|
@@ -11621,6 +12077,51 @@ export type OrganizationsUpdateResponses = {
|
|
|
11621
12077
|
200: Organization;
|
|
11622
12078
|
};
|
|
11623
12079
|
export type OrganizationsUpdateResponse = OrganizationsUpdateResponses[keyof OrganizationsUpdateResponses];
|
|
12080
|
+
export type OrganizationsGetProfileData = {
|
|
12081
|
+
body?: never;
|
|
12082
|
+
path?: never;
|
|
12083
|
+
query?: never;
|
|
12084
|
+
url: "/v1/organizations/current/profile";
|
|
12085
|
+
};
|
|
12086
|
+
export type OrganizationsGetProfileErrors = {
|
|
12087
|
+
/**
|
|
12088
|
+
* UnauthorizedError
|
|
12089
|
+
*/
|
|
12090
|
+
401: UnauthorizedError;
|
|
12091
|
+
/**
|
|
12092
|
+
* ForbiddenError
|
|
12093
|
+
*/
|
|
12094
|
+
403: ForbiddenError;
|
|
12095
|
+
/**
|
|
12096
|
+
* InternalError
|
|
12097
|
+
*/
|
|
12098
|
+
500: InternalError;
|
|
12099
|
+
/**
|
|
12100
|
+
* GatewayTimeoutError
|
|
12101
|
+
*/
|
|
12102
|
+
504: GatewayTimeoutError;
|
|
12103
|
+
};
|
|
12104
|
+
export type OrganizationsGetProfileError = OrganizationsGetProfileErrors[keyof OrganizationsGetProfileErrors];
|
|
12105
|
+
export type OrganizationsGetProfileResponses = {
|
|
12106
|
+
/**
|
|
12107
|
+
* Success
|
|
12108
|
+
*/
|
|
12109
|
+
200: {
|
|
12110
|
+
/**
|
|
12111
|
+
* Opaque identity for your organization membership
|
|
12112
|
+
*/
|
|
12113
|
+
id: string;
|
|
12114
|
+
/**
|
|
12115
|
+
* Your display name
|
|
12116
|
+
*/
|
|
12117
|
+
name: string;
|
|
12118
|
+
/**
|
|
12119
|
+
* Your display name and organization name
|
|
12120
|
+
*/
|
|
12121
|
+
nickname: string;
|
|
12122
|
+
};
|
|
12123
|
+
};
|
|
12124
|
+
export type OrganizationsGetProfileResponse = OrganizationsGetProfileResponses[keyof OrganizationsGetProfileResponses];
|
|
11624
12125
|
export type OrganizationsGetUsageData = {
|
|
11625
12126
|
body?: never;
|
|
11626
12127
|
path?: never;
|