@apollo-deploy/signal-schemas 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +117 -0
- package/dist/.tsbuildinfo +1 -0
- package/dist/definitions/common.d.ts +72 -0
- package/dist/definitions/common.d.ts.map +1 -0
- package/dist/definitions/common.js +95 -0
- package/dist/definitions/common.js.map +1 -0
- package/dist/definitions/deliverability/deliverability.schema.d.ts +98 -0
- package/dist/definitions/deliverability/deliverability.schema.d.ts.map +1 -0
- package/dist/definitions/deliverability/deliverability.schema.js +77 -0
- package/dist/definitions/deliverability/domain.schema.d.ts +23 -0
- package/dist/definitions/deliverability/domain.schema.d.ts.map +1 -0
- package/dist/definitions/deliverability/domain.schema.js +12 -0
- package/dist/definitions/deliverability/domain.schema.js.map +1 -0
- package/dist/definitions/deliverability/index.d.ts +4 -0
- package/dist/definitions/deliverability/index.d.ts.map +1 -0
- package/dist/definitions/deliverability/index.js +4 -0
- package/dist/definitions/deliverability/index.js.map +1 -0
- package/dist/definitions/deliverability/request.schema.d.ts +27 -0
- package/dist/definitions/deliverability/request.schema.d.ts.map +1 -0
- package/dist/definitions/deliverability/request.schema.js +17 -0
- package/dist/definitions/deliverability/request.schema.js.map +1 -0
- package/dist/definitions/deliverability/response.schema.d.ts +72 -0
- package/dist/definitions/deliverability/response.schema.d.ts.map +1 -0
- package/dist/definitions/deliverability/response.schema.js +37 -0
- package/dist/definitions/deliverability/response.schema.js.map +1 -0
- package/dist/definitions/deliverability/schemas.d.ts +91 -0
- package/dist/definitions/deliverability/schemas.d.ts.map +1 -0
- package/dist/definitions/deliverability/schemas.js +67 -0
- package/dist/definitions/domains/domain.schema.d.ts +160 -0
- package/dist/definitions/domains/domain.schema.d.ts.map +1 -0
- package/dist/definitions/domains/domain.schema.js +36 -0
- package/dist/definitions/domains/domain.schema.js.map +1 -0
- package/dist/definitions/domains/domains.schema.d.ts +668 -0
- package/dist/definitions/domains/domains.schema.d.ts.map +1 -0
- package/dist/definitions/domains/domains.schema.js +113 -0
- package/dist/definitions/domains/index.d.ts +4 -0
- package/dist/definitions/domains/index.d.ts.map +1 -0
- package/dist/definitions/domains/index.js +4 -0
- package/dist/definitions/domains/index.js.map +1 -0
- package/dist/definitions/domains/request.schema.d.ts +26 -0
- package/dist/definitions/domains/request.schema.d.ts.map +1 -0
- package/dist/definitions/domains/request.schema.js +21 -0
- package/dist/definitions/domains/request.schema.js.map +1 -0
- package/dist/definitions/domains/response.schema.d.ts +491 -0
- package/dist/definitions/domains/response.schema.d.ts.map +1 -0
- package/dist/definitions/domains/response.schema.js +24 -0
- package/dist/definitions/domains/response.schema.js.map +1 -0
- package/dist/definitions/domains/schemas.d.ts +545 -0
- package/dist/definitions/domains/schemas.d.ts.map +1 -0
- package/dist/definitions/domains/schemas.js +110 -0
- package/dist/definitions/emails/domain.schema.d.ts +20 -0
- package/dist/definitions/emails/domain.schema.d.ts.map +1 -0
- package/dist/definitions/emails/domain.schema.js +11 -0
- package/dist/definitions/emails/domain.schema.js.map +1 -0
- package/dist/definitions/emails/emails.schema.d.ts +230 -0
- package/dist/definitions/emails/emails.schema.d.ts.map +1 -0
- package/dist/definitions/emails/emails.schema.js +176 -0
- package/dist/definitions/emails/index.d.ts +4 -0
- package/dist/definitions/emails/index.d.ts.map +1 -0
- package/dist/definitions/emails/index.js +4 -0
- package/dist/definitions/emails/index.js.map +1 -0
- package/dist/definitions/emails/request.schema.d.ts +96 -0
- package/dist/definitions/emails/request.schema.d.ts.map +1 -0
- package/dist/definitions/emails/request.schema.js +65 -0
- package/dist/definitions/emails/request.schema.js.map +1 -0
- package/dist/definitions/emails/response.schema.d.ts +141 -0
- package/dist/definitions/emails/response.schema.d.ts.map +1 -0
- package/dist/definitions/emails/response.schema.js +54 -0
- package/dist/definitions/emails/response.schema.js.map +1 -0
- package/dist/definitions/emails/schemas.d.ts +284 -0
- package/dist/definitions/emails/schemas.d.ts.map +1 -0
- package/dist/definitions/emails/schemas.js +227 -0
- package/dist/definitions/health/domain.schema.d.ts +11 -0
- package/dist/definitions/health/domain.schema.d.ts.map +1 -0
- package/dist/definitions/health/domain.schema.js +8 -0
- package/dist/definitions/health/domain.schema.js.map +1 -0
- package/dist/definitions/health/health.schema.d.ts +27 -0
- package/dist/definitions/health/health.schema.d.ts.map +1 -0
- package/dist/definitions/health/health.schema.js +23 -0
- package/dist/definitions/health/index.d.ts +3 -0
- package/dist/definitions/health/index.d.ts.map +1 -0
- package/dist/definitions/health/index.js +3 -0
- package/dist/definitions/health/index.js.map +1 -0
- package/dist/definitions/health/request.schema.d.ts +8 -0
- package/dist/definitions/health/request.schema.d.ts.map +1 -0
- package/dist/definitions/health/request.schema.js +8 -0
- package/dist/definitions/health/request.schema.js.map +1 -0
- package/dist/definitions/health/response.schema.d.ts +26 -0
- package/dist/definitions/health/response.schema.d.ts.map +1 -0
- package/dist/definitions/health/response.schema.js +16 -0
- package/dist/definitions/health/response.schema.js.map +1 -0
- package/dist/definitions/health/schemas.d.ts +30 -0
- package/dist/definitions/health/schemas.d.ts.map +1 -0
- package/dist/definitions/health/schemas.js +23 -0
- package/dist/definitions/index.d.ts +25 -0
- package/dist/definitions/index.d.ts.map +1 -0
- package/dist/definitions/index.js +25 -0
- package/dist/definitions/index.js.map +1 -0
- package/dist/definitions/projects/domain.schema.d.ts +42 -0
- package/dist/definitions/projects/domain.schema.d.ts.map +1 -0
- package/dist/definitions/projects/domain.schema.js +46 -0
- package/dist/definitions/projects/domain.schema.js.map +1 -0
- package/dist/definitions/projects/index.d.ts +4 -0
- package/dist/definitions/projects/index.d.ts.map +1 -0
- package/dist/definitions/projects/index.js +4 -0
- package/dist/definitions/projects/index.js.map +1 -0
- package/dist/definitions/projects/projects.schema.d.ts +8 -0
- package/dist/definitions/projects/projects.schema.d.ts.map +1 -0
- package/dist/definitions/projects/projects.schema.js +23 -0
- package/dist/definitions/projects/request.schema.d.ts +41 -0
- package/dist/definitions/projects/request.schema.d.ts.map +1 -0
- package/dist/definitions/projects/request.schema.js +43 -0
- package/dist/definitions/projects/request.schema.js.map +1 -0
- package/dist/definitions/projects/response.schema.d.ts +79 -0
- package/dist/definitions/projects/response.schema.d.ts.map +1 -0
- package/dist/definitions/projects/response.schema.js +43 -0
- package/dist/definitions/projects/response.schema.js.map +1 -0
- package/dist/definitions/projects/schemas.d.ts +114 -0
- package/dist/definitions/projects/schemas.d.ts.map +1 -0
- package/dist/definitions/projects/schemas.js +87 -0
- package/dist/definitions/signal-email/domain.schema.d.ts +135 -0
- package/dist/definitions/signal-email/domain.schema.d.ts.map +1 -0
- package/dist/definitions/signal-email/domain.schema.js +130 -0
- package/dist/definitions/signal-email/domain.schema.js.map +1 -0
- package/dist/definitions/signal-email/index.d.ts +23 -0
- package/dist/definitions/signal-email/index.d.ts.map +1 -0
- package/dist/definitions/signal-email/index.js +26 -0
- package/dist/definitions/signal-email/index.js.map +1 -0
- package/dist/definitions/signal-email/request.schema.d.ts +123 -0
- package/dist/definitions/signal-email/request.schema.d.ts.map +1 -0
- package/dist/definitions/signal-email/request.schema.js +201 -0
- package/dist/definitions/signal-email/request.schema.js.map +1 -0
- package/dist/definitions/signal-email/response.schema.d.ts +73 -0
- package/dist/definitions/signal-email/response.schema.d.ts.map +1 -0
- package/dist/definitions/signal-email/response.schema.js +83 -0
- package/dist/definitions/signal-email/response.schema.js.map +1 -0
- package/dist/definitions/signal-projects/domain.schema.d.ts +227 -0
- package/dist/definitions/signal-projects/domain.schema.d.ts.map +1 -0
- package/dist/definitions/signal-projects/domain.schema.js +230 -0
- package/dist/definitions/signal-projects/domain.schema.js.map +1 -0
- package/dist/definitions/signal-projects/index.d.ts +16 -0
- package/dist/definitions/signal-projects/index.d.ts.map +1 -0
- package/dist/definitions/signal-projects/index.js +16 -0
- package/dist/definitions/signal-projects/index.js.map +1 -0
- package/dist/definitions/signal-projects/request.schema.d.ts +254 -0
- package/dist/definitions/signal-projects/request.schema.d.ts.map +1 -0
- package/dist/definitions/signal-projects/request.schema.js +213 -0
- package/dist/definitions/signal-projects/request.schema.js.map +1 -0
- package/dist/definitions/signal-projects/response.schema.d.ts +615 -0
- package/dist/definitions/signal-projects/response.schema.d.ts.map +1 -0
- package/dist/definitions/signal-projects/response.schema.js +267 -0
- package/dist/definitions/signal-projects/response.schema.js.map +1 -0
- package/dist/definitions/suppressions/domain.schema.d.ts +13 -0
- package/dist/definitions/suppressions/domain.schema.d.ts.map +1 -0
- package/dist/definitions/suppressions/domain.schema.js +8 -0
- package/dist/definitions/suppressions/domain.schema.js.map +1 -0
- package/dist/definitions/suppressions/index.d.ts +4 -0
- package/dist/definitions/suppressions/index.d.ts.map +1 -0
- package/dist/definitions/suppressions/index.js +4 -0
- package/dist/definitions/suppressions/index.js.map +1 -0
- package/dist/definitions/suppressions/request.schema.d.ts +39 -0
- package/dist/definitions/suppressions/request.schema.d.ts.map +1 -0
- package/dist/definitions/suppressions/request.schema.js +27 -0
- package/dist/definitions/suppressions/request.schema.js.map +1 -0
- package/dist/definitions/suppressions/response.schema.d.ts +42 -0
- package/dist/definitions/suppressions/response.schema.d.ts.map +1 -0
- package/dist/definitions/suppressions/response.schema.js +18 -0
- package/dist/definitions/suppressions/response.schema.js.map +1 -0
- package/dist/definitions/suppressions/schemas.d.ts +90 -0
- package/dist/definitions/suppressions/schemas.d.ts.map +1 -0
- package/dist/definitions/suppressions/schemas.js +68 -0
- package/dist/definitions/suppressions/suppressions.schema.d.ts +79 -0
- package/dist/definitions/suppressions/suppressions.schema.d.ts.map +1 -0
- package/dist/definitions/suppressions/suppressions.schema.js +63 -0
- package/dist/definitions/templates/domain.schema.d.ts +11 -0
- package/dist/definitions/templates/domain.schema.d.ts.map +1 -0
- package/dist/definitions/templates/domain.schema.js +14 -0
- package/dist/definitions/templates/domain.schema.js.map +1 -0
- package/dist/definitions/templates/index.d.ts +4 -0
- package/dist/definitions/templates/index.d.ts.map +1 -0
- package/dist/definitions/templates/index.js +4 -0
- package/dist/definitions/templates/index.js.map +1 -0
- package/dist/definitions/templates/request.schema.d.ts +33 -0
- package/dist/definitions/templates/request.schema.d.ts.map +1 -0
- package/dist/definitions/templates/request.schema.js +32 -0
- package/dist/definitions/templates/request.schema.js.map +1 -0
- package/dist/definitions/templates/response.schema.d.ts +91 -0
- package/dist/definitions/templates/response.schema.d.ts.map +1 -0
- package/dist/definitions/templates/response.schema.js +49 -0
- package/dist/definitions/templates/response.schema.js.map +1 -0
- package/dist/definitions/templates/schemas.d.ts +113 -0
- package/dist/definitions/templates/schemas.d.ts.map +1 -0
- package/dist/definitions/templates/schemas.js +80 -0
- package/dist/definitions/usage/domain.schema.d.ts +60 -0
- package/dist/definitions/usage/domain.schema.d.ts.map +1 -0
- package/dist/definitions/usage/domain.schema.js +23 -0
- package/dist/definitions/usage/domain.schema.js.map +1 -0
- package/dist/definitions/usage/index.d.ts +4 -0
- package/dist/definitions/usage/index.d.ts.map +1 -0
- package/dist/definitions/usage/index.js +4 -0
- package/dist/definitions/usage/index.js.map +1 -0
- package/dist/definitions/usage/request.schema.d.ts +12 -0
- package/dist/definitions/usage/request.schema.d.ts.map +1 -0
- package/dist/definitions/usage/request.schema.js +13 -0
- package/dist/definitions/usage/request.schema.js.map +1 -0
- package/dist/definitions/usage/response.schema.d.ts +76 -0
- package/dist/definitions/usage/response.schema.d.ts.map +1 -0
- package/dist/definitions/usage/response.schema.js +22 -0
- package/dist/definitions/usage/response.schema.js.map +1 -0
- package/dist/definitions/usage/schemas.d.ts +156 -0
- package/dist/definitions/usage/schemas.d.ts.map +1 -0
- package/dist/definitions/usage/schemas.js +83 -0
- package/dist/definitions/usage/usage.schema.d.ts +140 -0
- package/dist/definitions/usage/usage.schema.d.ts.map +1 -0
- package/dist/definitions/usage/usage.schema.js +77 -0
- package/dist/definitions/webhooks/domain.schema.d.ts +26 -0
- package/dist/definitions/webhooks/domain.schema.d.ts.map +1 -0
- package/dist/definitions/webhooks/domain.schema.js +14 -0
- package/dist/definitions/webhooks/domain.schema.js.map +1 -0
- package/dist/definitions/webhooks/index.d.ts +4 -0
- package/dist/definitions/webhooks/index.d.ts.map +1 -0
- package/dist/definitions/webhooks/index.js +4 -0
- package/dist/definitions/webhooks/index.js.map +1 -0
- package/dist/definitions/webhooks/request.schema.d.ts +64 -0
- package/dist/definitions/webhooks/request.schema.d.ts.map +1 -0
- package/dist/definitions/webhooks/request.schema.js +32 -0
- package/dist/definitions/webhooks/request.schema.js.map +1 -0
- package/dist/definitions/webhooks/response.schema.d.ts +76 -0
- package/dist/definitions/webhooks/response.schema.d.ts.map +1 -0
- package/dist/definitions/webhooks/response.schema.js +27 -0
- package/dist/definitions/webhooks/response.schema.js.map +1 -0
- package/dist/definitions/webhooks/schemas.d.ts +145 -0
- package/dist/definitions/webhooks/schemas.d.ts.map +1 -0
- package/dist/definitions/webhooks/schemas.js +97 -0
- package/dist/definitions/webhooks/webhooks.schema.d.ts +152 -0
- package/dist/definitions/webhooks/webhooks.schema.d.ts.map +1 -0
- package/dist/definitions/webhooks/webhooks.schema.js +96 -0
- package/dist/generators/generate-schemas.d.ts +10 -0
- package/dist/generators/generate-schemas.d.ts.map +1 -0
- package/dist/generators/generate-schemas.js +119 -0
- package/dist/generators/generate-schemas.js.map +1 -0
- package/dist/generators/index.d.ts +8 -0
- package/dist/generators/index.d.ts.map +1 -0
- package/dist/generators/index.js +8 -0
- package/dist/generators/index.js.map +1 -0
- package/dist/generators/register-global-registry.d.ts +14 -0
- package/dist/generators/register-global-registry.d.ts.map +1 -0
- package/dist/generators/register-global-registry.js +516 -0
- package/dist/generators/register-global-registry.js.map +1 -0
- package/dist/generators/zod-to-json-schema.d.ts +64 -0
- package/dist/generators/zod-to-json-schema.d.ts.map +1 -0
- package/dist/generators/zod-to-json-schema.js +300 -0
- package/dist/generators/zod-to-json-schema.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/package.json +103 -0
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Apollo Signal — Signal Projects Domain Schemas
|
|
3
|
+
*
|
|
4
|
+
* Stable building blocks for the Signal dashboard/management API.
|
|
5
|
+
* Covers projects, sending domains, suppressions, usage, webhooks,
|
|
6
|
+
* and the dashboard (project-owner) view of emails.
|
|
7
|
+
*
|
|
8
|
+
* Subpath: @apollo-deploy/signal-schemas/signal-projects
|
|
9
|
+
*/
|
|
10
|
+
import { z } from 'zod';
|
|
11
|
+
/**
|
|
12
|
+
* Lifecycle status of a Signal project.
|
|
13
|
+
*
|
|
14
|
+
* active - project is operational
|
|
15
|
+
* suspended - sending suspended (abuse / billing)
|
|
16
|
+
* disabled - administratively disabled
|
|
17
|
+
* deleted - soft-deleted
|
|
18
|
+
*/
|
|
19
|
+
export declare const SignalProjectStatusSchema: z.ZodEnum<{
|
|
20
|
+
deleted: "deleted";
|
|
21
|
+
active: "active";
|
|
22
|
+
suspended: "suspended";
|
|
23
|
+
disabled: "disabled";
|
|
24
|
+
}>;
|
|
25
|
+
/**
|
|
26
|
+
* Per-project sending limits enforced at runtime.
|
|
27
|
+
*/
|
|
28
|
+
export declare const SignalProjectLimitsSchema: z.ZodObject<{
|
|
29
|
+
dailySends: z.ZodNumber;
|
|
30
|
+
perSecondSends: z.ZodNumber;
|
|
31
|
+
maxRecipientsPerMessage: z.ZodNumber;
|
|
32
|
+
maxDomains: z.ZodNumber;
|
|
33
|
+
maxApiKeys: z.ZodNumber;
|
|
34
|
+
maxWebhooks: z.ZodNumber;
|
|
35
|
+
}, z.core.$strip>;
|
|
36
|
+
/**
|
|
37
|
+
* Per-project email tracking settings.
|
|
38
|
+
*
|
|
39
|
+
* openTracking - inject a 1×1 pixel into HTML emails to detect opens
|
|
40
|
+
* clickTracking - rewrite <a href> links through a redirect to detect clicks
|
|
41
|
+
* unsubscribeTracking - inject a List-Unsubscribe header and footer link
|
|
42
|
+
* readEngagement - inject a second pixel at the bottom of the email
|
|
43
|
+
* trackingDomain - custom domain for tracking URLs (e.g. "track.acme.com")
|
|
44
|
+
* trackingDomainStatus - verification state of the custom tracking domain
|
|
45
|
+
*
|
|
46
|
+
* All boolean flags default to false.
|
|
47
|
+
*/
|
|
48
|
+
export declare const SignalProjectTrackingSettingsSchema: z.ZodObject<{
|
|
49
|
+
openTracking: z.ZodDefault<z.ZodBoolean>;
|
|
50
|
+
clickTracking: z.ZodDefault<z.ZodBoolean>;
|
|
51
|
+
unsubscribeTracking: z.ZodDefault<z.ZodBoolean>;
|
|
52
|
+
readEngagement: z.ZodDefault<z.ZodBoolean>;
|
|
53
|
+
trackingDomain: z.ZodDefault<z.ZodNullable<z.ZodString>>;
|
|
54
|
+
trackingDomainStatus: z.ZodDefault<z.ZodNullable<z.ZodEnum<{
|
|
55
|
+
pending: "pending";
|
|
56
|
+
verified: "verified";
|
|
57
|
+
failed: "failed";
|
|
58
|
+
}>>>;
|
|
59
|
+
}, z.core.$strip>;
|
|
60
|
+
/**
|
|
61
|
+
* Top-level verification status of a sending domain.
|
|
62
|
+
*/
|
|
63
|
+
export declare const SignalDomainStatusSchema: z.ZodEnum<{
|
|
64
|
+
pending: "pending";
|
|
65
|
+
verified: "verified";
|
|
66
|
+
failed: "failed";
|
|
67
|
+
deleted: "deleted";
|
|
68
|
+
}>;
|
|
69
|
+
/**
|
|
70
|
+
* Sub-component verification status for DNS record checks.
|
|
71
|
+
*/
|
|
72
|
+
export declare const SignalDomainSubStatusSchema: z.ZodEnum<{
|
|
73
|
+
unknown: "unknown";
|
|
74
|
+
pending: "pending";
|
|
75
|
+
verified: "verified";
|
|
76
|
+
failed: "failed";
|
|
77
|
+
missing: "missing";
|
|
78
|
+
monitor: "monitor";
|
|
79
|
+
quarantine: "quarantine";
|
|
80
|
+
reject: "reject";
|
|
81
|
+
}>;
|
|
82
|
+
/** A single DNS verification record (name, type, value). */
|
|
83
|
+
export declare const SignalDomainVerificationRecordSchema: z.ZodObject<{
|
|
84
|
+
name: z.ZodString;
|
|
85
|
+
type: z.ZodString;
|
|
86
|
+
value: z.ZodString;
|
|
87
|
+
}, z.core.$strip>;
|
|
88
|
+
/** DNS records required to verify a sending domain. */
|
|
89
|
+
export declare const SignalDomainVerificationRecordsSchema: z.ZodObject<{
|
|
90
|
+
dkim: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
91
|
+
name: z.ZodString;
|
|
92
|
+
type: z.ZodString;
|
|
93
|
+
value: z.ZodString;
|
|
94
|
+
}, z.core.$strip>>>;
|
|
95
|
+
spf: z.ZodOptional<z.ZodObject<{
|
|
96
|
+
name: z.ZodString;
|
|
97
|
+
type: z.ZodString;
|
|
98
|
+
value: z.ZodString;
|
|
99
|
+
}, z.core.$strip>>;
|
|
100
|
+
mailFrom: z.ZodOptional<z.ZodObject<{
|
|
101
|
+
name: z.ZodString;
|
|
102
|
+
type: z.ZodString;
|
|
103
|
+
value: z.ZodString;
|
|
104
|
+
}, z.core.$strip>>;
|
|
105
|
+
dmarc: z.ZodOptional<z.ZodObject<{
|
|
106
|
+
name: z.ZodString;
|
|
107
|
+
type: z.ZodString;
|
|
108
|
+
value: z.ZodString;
|
|
109
|
+
}, z.core.$strip>>;
|
|
110
|
+
}, z.core.$strip>;
|
|
111
|
+
/**
|
|
112
|
+
* Reason a recipient address was added to the suppression list.
|
|
113
|
+
*/
|
|
114
|
+
export declare const SignalSuppressionReasonSchema: z.ZodEnum<{
|
|
115
|
+
bounce: "bounce";
|
|
116
|
+
complaint: "complaint";
|
|
117
|
+
manual: "manual";
|
|
118
|
+
unsubscribe: "unsubscribe";
|
|
119
|
+
}>;
|
|
120
|
+
/**
|
|
121
|
+
* Email event types that a webhook endpoint can subscribe to.
|
|
122
|
+
*
|
|
123
|
+
* email.queued and email.test are excluded — those cannot be subscribed to.
|
|
124
|
+
*/
|
|
125
|
+
export declare const SignalWebhookSubscribeEventTypeSchema: z.ZodEnum<{
|
|
126
|
+
"email.sent": "email.sent";
|
|
127
|
+
"email.delivered": "email.delivered";
|
|
128
|
+
"email.bounced": "email.bounced";
|
|
129
|
+
"email.complained": "email.complained";
|
|
130
|
+
"email.opened": "email.opened";
|
|
131
|
+
"email.clicked": "email.clicked";
|
|
132
|
+
"email.failed": "email.failed";
|
|
133
|
+
"email.rejected": "email.rejected";
|
|
134
|
+
"email.delivery_delayed": "email.delivery_delayed";
|
|
135
|
+
"email.suppressed": "email.suppressed";
|
|
136
|
+
"webhook.test": "webhook.test";
|
|
137
|
+
}>;
|
|
138
|
+
/**
|
|
139
|
+
* Delivery attempt status for a webhook endpoint delivery log entry.
|
|
140
|
+
*/
|
|
141
|
+
export declare const SignalWebhookDeliveryStatusSchema: z.ZodEnum<{
|
|
142
|
+
success: "success";
|
|
143
|
+
pending: "pending";
|
|
144
|
+
failed: "failed";
|
|
145
|
+
}>;
|
|
146
|
+
/**
|
|
147
|
+
* Event types that appear on an email's event timeline in the dashboard.
|
|
148
|
+
*/
|
|
149
|
+
export declare const SignalProjectEmailEventTypeSchema: z.ZodEnum<{
|
|
150
|
+
"email.queued": "email.queued";
|
|
151
|
+
"email.sent": "email.sent";
|
|
152
|
+
"email.delivered": "email.delivered";
|
|
153
|
+
"email.bounced": "email.bounced";
|
|
154
|
+
"email.complained": "email.complained";
|
|
155
|
+
"email.opened": "email.opened";
|
|
156
|
+
"email.clicked": "email.clicked";
|
|
157
|
+
"email.failed": "email.failed";
|
|
158
|
+
"email.rejected": "email.rejected";
|
|
159
|
+
"email.delivery_delayed": "email.delivery_delayed";
|
|
160
|
+
"email.suppressed": "email.suppressed";
|
|
161
|
+
"email.test": "email.test";
|
|
162
|
+
}>;
|
|
163
|
+
/**
|
|
164
|
+
* Comparison operator for a per-endpoint webhook event filter.
|
|
165
|
+
*
|
|
166
|
+
* eq - strict equality
|
|
167
|
+
* neq - strict inequality
|
|
168
|
+
* contains - string substring or array element containment
|
|
169
|
+
* exists - field is present and non-null (value is ignored)
|
|
170
|
+
*/
|
|
171
|
+
export declare const SignalWebhookFilterOperatorSchema: z.ZodEnum<{
|
|
172
|
+
eq: "eq";
|
|
173
|
+
neq: "neq";
|
|
174
|
+
contains: "contains";
|
|
175
|
+
exists: "exists";
|
|
176
|
+
}>;
|
|
177
|
+
/**
|
|
178
|
+
* A single filter condition applied to the webhook delivery payload before
|
|
179
|
+
* dispatch. Dot-notation field paths are supported (e.g. "data.status").
|
|
180
|
+
* All filters on an endpoint must pass (AND semantics) for the delivery to
|
|
181
|
+
* proceed.
|
|
182
|
+
*/
|
|
183
|
+
export declare const SignalWebhookFilterSchema: z.ZodObject<{
|
|
184
|
+
field: z.ZodString;
|
|
185
|
+
operator: z.ZodEnum<{
|
|
186
|
+
eq: "eq";
|
|
187
|
+
neq: "neq";
|
|
188
|
+
contains: "contains";
|
|
189
|
+
exists: "exists";
|
|
190
|
+
}>;
|
|
191
|
+
value: z.ZodOptional<z.ZodString>;
|
|
192
|
+
}, z.core.$strip>;
|
|
193
|
+
/**
|
|
194
|
+
* A single transformation applied to the webhook delivery payload before
|
|
195
|
+
* dispatch. Transformations are applied in order after filters pass.
|
|
196
|
+
*
|
|
197
|
+
* rename_field - rename a top-level or dot-notation field
|
|
198
|
+
* remove_field - remove a field from the payload
|
|
199
|
+
* add_field - add or overwrite a string field in the payload
|
|
200
|
+
*/
|
|
201
|
+
export declare const SignalWebhookTransformationSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
202
|
+
type: z.ZodLiteral<"rename_field">;
|
|
203
|
+
from: z.ZodString;
|
|
204
|
+
to: z.ZodString;
|
|
205
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
206
|
+
type: z.ZodLiteral<"remove_field">;
|
|
207
|
+
field: z.ZodString;
|
|
208
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
209
|
+
type: z.ZodLiteral<"add_field">;
|
|
210
|
+
field: z.ZodString;
|
|
211
|
+
value: z.ZodString;
|
|
212
|
+
}, z.core.$strip>], "type">;
|
|
213
|
+
export type SignalProjectStatus = z.infer<typeof SignalProjectStatusSchema>;
|
|
214
|
+
export type SignalProjectLimits = z.infer<typeof SignalProjectLimitsSchema>;
|
|
215
|
+
export type SignalProjectTrackingSettings = z.infer<typeof SignalProjectTrackingSettingsSchema>;
|
|
216
|
+
export type SignalDomainStatus = z.infer<typeof SignalDomainStatusSchema>;
|
|
217
|
+
export type SignalDomainSubStatus = z.infer<typeof SignalDomainSubStatusSchema>;
|
|
218
|
+
export type SignalDomainVerificationRecord = z.infer<typeof SignalDomainVerificationRecordSchema>;
|
|
219
|
+
export type SignalDomainVerificationRecords = z.infer<typeof SignalDomainVerificationRecordsSchema>;
|
|
220
|
+
export type SignalSuppressionReason = z.infer<typeof SignalSuppressionReasonSchema>;
|
|
221
|
+
export type SignalWebhookSubscribeEventType = z.infer<typeof SignalWebhookSubscribeEventTypeSchema>;
|
|
222
|
+
export type SignalWebhookDeliveryStatus = z.infer<typeof SignalWebhookDeliveryStatusSchema>;
|
|
223
|
+
export type SignalProjectEmailEventType = z.infer<typeof SignalProjectEmailEventTypeSchema>;
|
|
224
|
+
export type SignalWebhookFilterOperator = z.infer<typeof SignalWebhookFilterOperatorSchema>;
|
|
225
|
+
export type SignalWebhookFilter = z.infer<typeof SignalWebhookFilterSchema>;
|
|
226
|
+
export type SignalWebhookTransformation = z.infer<typeof SignalWebhookTransformationSchema>;
|
|
227
|
+
//# sourceMappingURL=domain.schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"domain.schema.d.ts","sourceRoot":"","sources":["../../../src/definitions/signal-projects/domain.schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB;;;;;EAKpC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;iBAOpC,CAAC;AAEH;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mCAAmC;;;;;;;;;;;iBAQ9C,CAAC;AAMH;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;EAKnC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;EAStC,CAAC;AAEH,4DAA4D;AAC5D,eAAO,MAAM,oCAAoC;;;;iBAI/C,CAAC;AAEH,uDAAuD;AACvD,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;;;;;;;;;iBAKhD,CAAC;AAMH;;GAEG;AACH,eAAO,MAAM,6BAA6B;;;;;EAKxC,CAAC;AAMH;;;;GAIG;AACH,eAAO,MAAM,qCAAqC;;;;;;;;;;;;EAYhD,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iCAAiC;;;;EAI5C,CAAC;AAMH;;GAEG;AACH,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;EAa5C,CAAC;AAMH;;;;;;;GAOG;AACH,eAAO,MAAM,iCAAiC;;;;;EAK5C,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;iBAMpC,CAAC;AAEH;;;;;;;GAOG;AACH,eAAO,MAAM,iCAAiC;;;;;;;;;;;2BAe5C,CAAC;AAMH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAChG,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;AAClG,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,CAAC;AACpG,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AACpF,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,CAAC;AACpG,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAC5F,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAC5F,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAC5F,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC"}
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Apollo Signal — Signal Projects Domain Schemas
|
|
3
|
+
*
|
|
4
|
+
* Stable building blocks for the Signal dashboard/management API.
|
|
5
|
+
* Covers projects, sending domains, suppressions, usage, webhooks,
|
|
6
|
+
* and the dashboard (project-owner) view of emails.
|
|
7
|
+
*
|
|
8
|
+
* Subpath: @apollo-deploy/signal-schemas/signal-projects
|
|
9
|
+
*/
|
|
10
|
+
import { z } from 'zod';
|
|
11
|
+
// ---------------------------------------------------------------------------
|
|
12
|
+
// Project
|
|
13
|
+
// ---------------------------------------------------------------------------
|
|
14
|
+
/**
|
|
15
|
+
* Lifecycle status of a Signal project.
|
|
16
|
+
*
|
|
17
|
+
* active - project is operational
|
|
18
|
+
* suspended - sending suspended (abuse / billing)
|
|
19
|
+
* disabled - administratively disabled
|
|
20
|
+
* deleted - soft-deleted
|
|
21
|
+
*/
|
|
22
|
+
export const SignalProjectStatusSchema = z.enum([
|
|
23
|
+
'active',
|
|
24
|
+
'suspended',
|
|
25
|
+
'disabled',
|
|
26
|
+
'deleted',
|
|
27
|
+
]);
|
|
28
|
+
/**
|
|
29
|
+
* Per-project sending limits enforced at runtime.
|
|
30
|
+
*/
|
|
31
|
+
export const SignalProjectLimitsSchema = z.object({
|
|
32
|
+
dailySends: z.number().int().min(1),
|
|
33
|
+
perSecondSends: z.number().int().min(1),
|
|
34
|
+
maxRecipientsPerMessage: z.number().int().min(1),
|
|
35
|
+
maxDomains: z.number().int().min(1),
|
|
36
|
+
maxApiKeys: z.number().int().min(1),
|
|
37
|
+
maxWebhooks: z.number().int().min(1),
|
|
38
|
+
});
|
|
39
|
+
/**
|
|
40
|
+
* Per-project email tracking settings.
|
|
41
|
+
*
|
|
42
|
+
* openTracking - inject a 1×1 pixel into HTML emails to detect opens
|
|
43
|
+
* clickTracking - rewrite <a href> links through a redirect to detect clicks
|
|
44
|
+
* unsubscribeTracking - inject a List-Unsubscribe header and footer link
|
|
45
|
+
* readEngagement - inject a second pixel at the bottom of the email
|
|
46
|
+
* trackingDomain - custom domain for tracking URLs (e.g. "track.acme.com")
|
|
47
|
+
* trackingDomainStatus - verification state of the custom tracking domain
|
|
48
|
+
*
|
|
49
|
+
* All boolean flags default to false.
|
|
50
|
+
*/
|
|
51
|
+
export const SignalProjectTrackingSettingsSchema = z.object({
|
|
52
|
+
openTracking: z.boolean().default(false),
|
|
53
|
+
clickTracking: z.boolean().default(false),
|
|
54
|
+
unsubscribeTracking: z.boolean().default(false),
|
|
55
|
+
readEngagement: z.boolean().default(false),
|
|
56
|
+
/** Hostname only — no scheme or trailing slash (e.g. "track.acme.com"). */
|
|
57
|
+
trackingDomain: z.string().nullable().default(null),
|
|
58
|
+
trackingDomainStatus: z.enum(['pending', 'verified', 'failed']).nullable().default(null),
|
|
59
|
+
});
|
|
60
|
+
// ---------------------------------------------------------------------------
|
|
61
|
+
// Sending domain
|
|
62
|
+
// ---------------------------------------------------------------------------
|
|
63
|
+
/**
|
|
64
|
+
* Top-level verification status of a sending domain.
|
|
65
|
+
*/
|
|
66
|
+
export const SignalDomainStatusSchema = z.enum([
|
|
67
|
+
'pending',
|
|
68
|
+
'verified',
|
|
69
|
+
'failed',
|
|
70
|
+
'deleted',
|
|
71
|
+
]);
|
|
72
|
+
/**
|
|
73
|
+
* Sub-component verification status for DNS record checks.
|
|
74
|
+
*/
|
|
75
|
+
export const SignalDomainSubStatusSchema = z.enum([
|
|
76
|
+
'pending',
|
|
77
|
+
'verified',
|
|
78
|
+
'failed',
|
|
79
|
+
'missing',
|
|
80
|
+
'monitor',
|
|
81
|
+
'quarantine',
|
|
82
|
+
'reject',
|
|
83
|
+
'unknown',
|
|
84
|
+
]);
|
|
85
|
+
/** A single DNS verification record (name, type, value). */
|
|
86
|
+
export const SignalDomainVerificationRecordSchema = z.object({
|
|
87
|
+
name: z.string(),
|
|
88
|
+
type: z.string(),
|
|
89
|
+
value: z.string(),
|
|
90
|
+
});
|
|
91
|
+
/** DNS records required to verify a sending domain. */
|
|
92
|
+
export const SignalDomainVerificationRecordsSchema = z.object({
|
|
93
|
+
dkim: z.array(SignalDomainVerificationRecordSchema).optional(),
|
|
94
|
+
spf: SignalDomainVerificationRecordSchema.optional(),
|
|
95
|
+
mailFrom: SignalDomainVerificationRecordSchema.optional(),
|
|
96
|
+
dmarc: SignalDomainVerificationRecordSchema.optional(),
|
|
97
|
+
});
|
|
98
|
+
// ---------------------------------------------------------------------------
|
|
99
|
+
// Suppression
|
|
100
|
+
// ---------------------------------------------------------------------------
|
|
101
|
+
/**
|
|
102
|
+
* Reason a recipient address was added to the suppression list.
|
|
103
|
+
*/
|
|
104
|
+
export const SignalSuppressionReasonSchema = z.enum([
|
|
105
|
+
'bounce',
|
|
106
|
+
'complaint',
|
|
107
|
+
'manual',
|
|
108
|
+
'unsubscribe',
|
|
109
|
+
]);
|
|
110
|
+
// ---------------------------------------------------------------------------
|
|
111
|
+
// Webhook management
|
|
112
|
+
// ---------------------------------------------------------------------------
|
|
113
|
+
/**
|
|
114
|
+
* Email event types that a webhook endpoint can subscribe to.
|
|
115
|
+
*
|
|
116
|
+
* email.queued and email.test are excluded — those cannot be subscribed to.
|
|
117
|
+
*/
|
|
118
|
+
export const SignalWebhookSubscribeEventTypeSchema = z.enum([
|
|
119
|
+
'email.sent',
|
|
120
|
+
'email.delivered',
|
|
121
|
+
'email.bounced',
|
|
122
|
+
'email.complained',
|
|
123
|
+
'email.opened',
|
|
124
|
+
'email.clicked',
|
|
125
|
+
'email.failed',
|
|
126
|
+
'email.rejected',
|
|
127
|
+
'email.delivery_delayed',
|
|
128
|
+
'email.suppressed',
|
|
129
|
+
'webhook.test',
|
|
130
|
+
]);
|
|
131
|
+
/**
|
|
132
|
+
* Delivery attempt status for a webhook endpoint delivery log entry.
|
|
133
|
+
*/
|
|
134
|
+
export const SignalWebhookDeliveryStatusSchema = z.enum([
|
|
135
|
+
'pending',
|
|
136
|
+
'success',
|
|
137
|
+
'failed',
|
|
138
|
+
]);
|
|
139
|
+
// ---------------------------------------------------------------------------
|
|
140
|
+
// Email event type (dashboard / timeline view)
|
|
141
|
+
// ---------------------------------------------------------------------------
|
|
142
|
+
/**
|
|
143
|
+
* Event types that appear on an email's event timeline in the dashboard.
|
|
144
|
+
*/
|
|
145
|
+
export const SignalProjectEmailEventTypeSchema = z.enum([
|
|
146
|
+
'email.queued',
|
|
147
|
+
'email.sent',
|
|
148
|
+
'email.delivered',
|
|
149
|
+
'email.bounced',
|
|
150
|
+
'email.complained',
|
|
151
|
+
'email.opened',
|
|
152
|
+
'email.clicked',
|
|
153
|
+
'email.failed',
|
|
154
|
+
'email.rejected',
|
|
155
|
+
'email.delivery_delayed',
|
|
156
|
+
'email.suppressed',
|
|
157
|
+
'email.test',
|
|
158
|
+
]);
|
|
159
|
+
// ---------------------------------------------------------------------------
|
|
160
|
+
// Webhook filters and transformations
|
|
161
|
+
// ---------------------------------------------------------------------------
|
|
162
|
+
/**
|
|
163
|
+
* Comparison operator for a per-endpoint webhook event filter.
|
|
164
|
+
*
|
|
165
|
+
* eq - strict equality
|
|
166
|
+
* neq - strict inequality
|
|
167
|
+
* contains - string substring or array element containment
|
|
168
|
+
* exists - field is present and non-null (value is ignored)
|
|
169
|
+
*/
|
|
170
|
+
export const SignalWebhookFilterOperatorSchema = z.enum([
|
|
171
|
+
'eq',
|
|
172
|
+
'neq',
|
|
173
|
+
'contains',
|
|
174
|
+
'exists',
|
|
175
|
+
]);
|
|
176
|
+
/**
|
|
177
|
+
* A single filter condition applied to the webhook delivery payload before
|
|
178
|
+
* dispatch. Dot-notation field paths are supported (e.g. "data.status").
|
|
179
|
+
* All filters on an endpoint must pass (AND semantics) for the delivery to
|
|
180
|
+
* proceed.
|
|
181
|
+
*/
|
|
182
|
+
export const SignalWebhookFilterSchema = z.object({
|
|
183
|
+
/** Dot-notation path into the payload object (e.g. "data.bounceType"). */
|
|
184
|
+
field: z.string().min(1).max(256),
|
|
185
|
+
operator: SignalWebhookFilterOperatorSchema,
|
|
186
|
+
/** Required for eq, neq, contains. Ignored for exists. */
|
|
187
|
+
value: z.string().optional(),
|
|
188
|
+
});
|
|
189
|
+
/**
|
|
190
|
+
* A single transformation applied to the webhook delivery payload before
|
|
191
|
+
* dispatch. Transformations are applied in order after filters pass.
|
|
192
|
+
*
|
|
193
|
+
* rename_field - rename a top-level or dot-notation field
|
|
194
|
+
* remove_field - remove a field from the payload
|
|
195
|
+
* add_field - add or overwrite a string field in the payload
|
|
196
|
+
*/
|
|
197
|
+
export const SignalWebhookTransformationSchema = z.discriminatedUnion('type', [
|
|
198
|
+
z.object({
|
|
199
|
+
type: z.literal('rename_field'),
|
|
200
|
+
from: z.string().min(1).max(256),
|
|
201
|
+
to: z.string().min(1).max(256),
|
|
202
|
+
}),
|
|
203
|
+
z.object({
|
|
204
|
+
type: z.literal('remove_field'),
|
|
205
|
+
field: z.string().min(1).max(256),
|
|
206
|
+
}),
|
|
207
|
+
z.object({
|
|
208
|
+
type: z.literal('add_field'),
|
|
209
|
+
field: z.string().min(1).max(256),
|
|
210
|
+
value: z.string(),
|
|
211
|
+
}),
|
|
212
|
+
]);
|
|
213
|
+
// ---------------------------------------------------------------------------
|
|
214
|
+
// Schema registry — promotes types to OpenAPI components/schemas
|
|
215
|
+
// ---------------------------------------------------------------------------
|
|
216
|
+
z.globalRegistry.add(SignalProjectStatusSchema, { id: 'SignalProjectStatus' });
|
|
217
|
+
z.globalRegistry.add(SignalProjectLimitsSchema, { id: 'SignalProjectLimits' });
|
|
218
|
+
z.globalRegistry.add(SignalProjectTrackingSettingsSchema, { id: 'SignalProjectTrackingSettings' });
|
|
219
|
+
z.globalRegistry.add(SignalDomainStatusSchema, { id: 'SignalDomainStatus' });
|
|
220
|
+
z.globalRegistry.add(SignalDomainSubStatusSchema, { id: 'SignalDomainSubStatus' });
|
|
221
|
+
z.globalRegistry.add(SignalDomainVerificationRecordSchema, { id: 'SignalDomainVerificationRecord' });
|
|
222
|
+
z.globalRegistry.add(SignalDomainVerificationRecordsSchema, { id: 'SignalDomainVerificationRecords' });
|
|
223
|
+
z.globalRegistry.add(SignalSuppressionReasonSchema, { id: 'SignalSuppressionReason' });
|
|
224
|
+
z.globalRegistry.add(SignalWebhookSubscribeEventTypeSchema, { id: 'SignalWebhookSubscribeEventType' });
|
|
225
|
+
z.globalRegistry.add(SignalWebhookDeliveryStatusSchema, { id: 'SignalWebhookDeliveryStatus' });
|
|
226
|
+
z.globalRegistry.add(SignalProjectEmailEventTypeSchema, { id: 'SignalProjectEmailEventType' });
|
|
227
|
+
z.globalRegistry.add(SignalWebhookFilterOperatorSchema, { id: 'SignalWebhookFilterOperator' });
|
|
228
|
+
z.globalRegistry.add(SignalWebhookFilterSchema, { id: 'SignalWebhookFilter' });
|
|
229
|
+
z.globalRegistry.add(SignalWebhookTransformationSchema, { id: 'SignalWebhookTransformation' });
|
|
230
|
+
//# sourceMappingURL=domain.schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"domain.schema.js","sourceRoot":"","sources":["../../../src/definitions/signal-projects/domain.schema.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Apollo Signal — Signal Projects Domain Schemas\n *\n * Stable building blocks for the Signal dashboard/management API.\n * Covers projects, sending domains, suppressions, usage, webhooks,\n * and the dashboard (project-owner) view of emails.\n *\n * Subpath: @apollo-deploy/signal-schemas/signal-projects\n */\n\nimport { z } from 'zod';\n\n// ---------------------------------------------------------------------------\n// Project\n// ---------------------------------------------------------------------------\n\n/**\n * Lifecycle status of a Signal project.\n *\n * active - project is operational\n * suspended - sending suspended (abuse / billing)\n * disabled - administratively disabled\n * deleted - soft-deleted\n */\nexport const SignalProjectStatusSchema = z.enum([\n 'active',\n 'suspended',\n 'disabled',\n 'deleted',\n]);\n\n/**\n * Per-project sending limits enforced at runtime.\n */\nexport const SignalProjectLimitsSchema = z.object({\n dailySends: z.number().int().min(1),\n perSecondSends: z.number().int().min(1),\n maxRecipientsPerMessage: z.number().int().min(1),\n maxDomains: z.number().int().min(1),\n maxApiKeys: z.number().int().min(1),\n maxWebhooks: z.number().int().min(1),\n});\n\n/**\n * Per-project email tracking settings.\n *\n * openTracking - inject a 1×1 pixel into HTML emails to detect opens\n * clickTracking - rewrite <a href> links through a redirect to detect clicks\n * unsubscribeTracking - inject a List-Unsubscribe header and footer link\n * readEngagement - inject a second pixel at the bottom of the email\n * trackingDomain - custom domain for tracking URLs (e.g. \"track.acme.com\")\n * trackingDomainStatus - verification state of the custom tracking domain\n *\n * All boolean flags default to false.\n */\nexport const SignalProjectTrackingSettingsSchema = z.object({\n openTracking: z.boolean().default(false),\n clickTracking: z.boolean().default(false),\n unsubscribeTracking: z.boolean().default(false),\n readEngagement: z.boolean().default(false),\n /** Hostname only — no scheme or trailing slash (e.g. \"track.acme.com\"). */\n trackingDomain: z.string().nullable().default(null),\n trackingDomainStatus: z.enum(['pending', 'verified', 'failed']).nullable().default(null),\n});\n\n// ---------------------------------------------------------------------------\n// Sending domain\n// ---------------------------------------------------------------------------\n\n/**\n * Top-level verification status of a sending domain.\n */\nexport const SignalDomainStatusSchema = z.enum([\n 'pending',\n 'verified',\n 'failed',\n 'deleted',\n]);\n\n/**\n * Sub-component verification status for DNS record checks.\n */\nexport const SignalDomainSubStatusSchema = z.enum([\n 'pending',\n 'verified',\n 'failed',\n 'missing',\n 'monitor',\n 'quarantine',\n 'reject',\n 'unknown',\n]);\n\n/** A single DNS verification record (name, type, value). */\nexport const SignalDomainVerificationRecordSchema = z.object({\n name: z.string(),\n type: z.string(),\n value: z.string(),\n});\n\n/** DNS records required to verify a sending domain. */\nexport const SignalDomainVerificationRecordsSchema = z.object({\n dkim: z.array(SignalDomainVerificationRecordSchema).optional(),\n spf: SignalDomainVerificationRecordSchema.optional(),\n mailFrom: SignalDomainVerificationRecordSchema.optional(),\n dmarc: SignalDomainVerificationRecordSchema.optional(),\n});\n\n// ---------------------------------------------------------------------------\n// Suppression\n// ---------------------------------------------------------------------------\n\n/**\n * Reason a recipient address was added to the suppression list.\n */\nexport const SignalSuppressionReasonSchema = z.enum([\n 'bounce',\n 'complaint',\n 'manual',\n 'unsubscribe',\n]);\n\n// ---------------------------------------------------------------------------\n// Webhook management\n// ---------------------------------------------------------------------------\n\n/**\n * Email event types that a webhook endpoint can subscribe to.\n *\n * email.queued and email.test are excluded — those cannot be subscribed to.\n */\nexport const SignalWebhookSubscribeEventTypeSchema = z.enum([\n 'email.sent',\n 'email.delivered',\n 'email.bounced',\n 'email.complained',\n 'email.opened',\n 'email.clicked',\n 'email.failed',\n 'email.rejected',\n 'email.delivery_delayed',\n 'email.suppressed',\n 'webhook.test',\n]);\n\n/**\n * Delivery attempt status for a webhook endpoint delivery log entry.\n */\nexport const SignalWebhookDeliveryStatusSchema = z.enum([\n 'pending',\n 'success',\n 'failed',\n]);\n\n// ---------------------------------------------------------------------------\n// Email event type (dashboard / timeline view)\n// ---------------------------------------------------------------------------\n\n/**\n * Event types that appear on an email's event timeline in the dashboard.\n */\nexport const SignalProjectEmailEventTypeSchema = z.enum([\n 'email.queued',\n 'email.sent',\n 'email.delivered',\n 'email.bounced',\n 'email.complained',\n 'email.opened',\n 'email.clicked',\n 'email.failed',\n 'email.rejected',\n 'email.delivery_delayed',\n 'email.suppressed',\n 'email.test',\n]);\n\n// ---------------------------------------------------------------------------\n// Webhook filters and transformations\n// ---------------------------------------------------------------------------\n\n/**\n * Comparison operator for a per-endpoint webhook event filter.\n *\n * eq - strict equality\n * neq - strict inequality\n * contains - string substring or array element containment\n * exists - field is present and non-null (value is ignored)\n */\nexport const SignalWebhookFilterOperatorSchema = z.enum([\n 'eq',\n 'neq',\n 'contains',\n 'exists',\n]);\n\n/**\n * A single filter condition applied to the webhook delivery payload before\n * dispatch. Dot-notation field paths are supported (e.g. \"data.status\").\n * All filters on an endpoint must pass (AND semantics) for the delivery to\n * proceed.\n */\nexport const SignalWebhookFilterSchema = z.object({\n /** Dot-notation path into the payload object (e.g. \"data.bounceType\"). */\n field: z.string().min(1).max(256),\n operator: SignalWebhookFilterOperatorSchema,\n /** Required for eq, neq, contains. Ignored for exists. */\n value: z.string().optional(),\n});\n\n/**\n * A single transformation applied to the webhook delivery payload before\n * dispatch. Transformations are applied in order after filters pass.\n *\n * rename_field - rename a top-level or dot-notation field\n * remove_field - remove a field from the payload\n * add_field - add or overwrite a string field in the payload\n */\nexport const SignalWebhookTransformationSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('rename_field'),\n from: z.string().min(1).max(256),\n to: z.string().min(1).max(256),\n }),\n z.object({\n type: z.literal('remove_field'),\n field: z.string().min(1).max(256),\n }),\n z.object({\n type: z.literal('add_field'),\n field: z.string().min(1).max(256),\n value: z.string(),\n }),\n]);\n\n// ---------------------------------------------------------------------------\n// Inferred TypeScript types\n// ---------------------------------------------------------------------------\n\nexport type SignalProjectStatus = z.infer<typeof SignalProjectStatusSchema>;\nexport type SignalProjectLimits = z.infer<typeof SignalProjectLimitsSchema>;\nexport type SignalProjectTrackingSettings = z.infer<typeof SignalProjectTrackingSettingsSchema>;\nexport type SignalDomainStatus = z.infer<typeof SignalDomainStatusSchema>;\nexport type SignalDomainSubStatus = z.infer<typeof SignalDomainSubStatusSchema>;\nexport type SignalDomainVerificationRecord = z.infer<typeof SignalDomainVerificationRecordSchema>;\nexport type SignalDomainVerificationRecords = z.infer<typeof SignalDomainVerificationRecordsSchema>;\nexport type SignalSuppressionReason = z.infer<typeof SignalSuppressionReasonSchema>;\nexport type SignalWebhookSubscribeEventType = z.infer<typeof SignalWebhookSubscribeEventTypeSchema>;\nexport type SignalWebhookDeliveryStatus = z.infer<typeof SignalWebhookDeliveryStatusSchema>;\nexport type SignalProjectEmailEventType = z.infer<typeof SignalProjectEmailEventTypeSchema>;\nexport type SignalWebhookFilterOperator = z.infer<typeof SignalWebhookFilterOperatorSchema>;\nexport type SignalWebhookFilter = z.infer<typeof SignalWebhookFilterSchema>;\nexport type SignalWebhookTransformation = z.infer<typeof SignalWebhookTransformationSchema>;\n\n// ---------------------------------------------------------------------------\n// Schema registry — promotes types to OpenAPI components/schemas\n// ---------------------------------------------------------------------------\n\nz.globalRegistry.add(SignalProjectStatusSchema, { id: 'SignalProjectStatus' });\nz.globalRegistry.add(SignalProjectLimitsSchema, { id: 'SignalProjectLimits' });\nz.globalRegistry.add(SignalProjectTrackingSettingsSchema, { id: 'SignalProjectTrackingSettings' });\nz.globalRegistry.add(SignalDomainStatusSchema, { id: 'SignalDomainStatus' });\nz.globalRegistry.add(SignalDomainSubStatusSchema, { id: 'SignalDomainSubStatus' });\nz.globalRegistry.add(SignalDomainVerificationRecordSchema, { id: 'SignalDomainVerificationRecord' });\nz.globalRegistry.add(SignalDomainVerificationRecordsSchema, { id: 'SignalDomainVerificationRecords' });\nz.globalRegistry.add(SignalSuppressionReasonSchema, { id: 'SignalSuppressionReason' });\nz.globalRegistry.add(SignalWebhookSubscribeEventTypeSchema, { id: 'SignalWebhookSubscribeEventType' });\nz.globalRegistry.add(SignalWebhookDeliveryStatusSchema, { id: 'SignalWebhookDeliveryStatus' });\nz.globalRegistry.add(SignalProjectEmailEventTypeSchema, { id: 'SignalProjectEmailEventType' });\nz.globalRegistry.add(SignalWebhookFilterOperatorSchema, { id: 'SignalWebhookFilterOperator' });\nz.globalRegistry.add(SignalWebhookFilterSchema, { id: 'SignalWebhookFilter' });\nz.globalRegistry.add(SignalWebhookTransformationSchema, { id: 'SignalWebhookTransformation' });\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Apollo Signal — Signal Projects Schemas
|
|
3
|
+
*
|
|
4
|
+
* Barrel re-export for the @apollo-deploy/signal-schemas/signal-projects subpath.
|
|
5
|
+
*
|
|
6
|
+
* This subpath covers the full Signal dashboard/management API contract:
|
|
7
|
+
* projects, sending domains, suppressions, usage reporting, webhook
|
|
8
|
+
* endpoint management, and the project-owner email view.
|
|
9
|
+
*
|
|
10
|
+
* Do NOT add public /v1/emails* contracts here — those live in the
|
|
11
|
+
* signal-email subpath.
|
|
12
|
+
*/
|
|
13
|
+
export * from './domain.schema.js';
|
|
14
|
+
export * from './request.schema.js';
|
|
15
|
+
export * from './response.schema.js';
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/definitions/signal-projects/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Apollo Signal — Signal Projects Schemas
|
|
3
|
+
*
|
|
4
|
+
* Barrel re-export for the @apollo-deploy/signal-schemas/signal-projects subpath.
|
|
5
|
+
*
|
|
6
|
+
* This subpath covers the full Signal dashboard/management API contract:
|
|
7
|
+
* projects, sending domains, suppressions, usage reporting, webhook
|
|
8
|
+
* endpoint management, and the project-owner email view.
|
|
9
|
+
*
|
|
10
|
+
* Do NOT add public /v1/emails* contracts here — those live in the
|
|
11
|
+
* signal-email subpath.
|
|
12
|
+
*/
|
|
13
|
+
export * from './domain.schema.js';
|
|
14
|
+
export * from './request.schema.js';
|
|
15
|
+
export * from './response.schema.js';
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/definitions/signal-projects/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC","sourcesContent":["/**\n * Apollo Signal — Signal Projects Schemas\n *\n * Barrel re-export for the @apollo-deploy/signal-schemas/signal-projects subpath.\n *\n * This subpath covers the full Signal dashboard/management API contract:\n * projects, sending domains, suppressions, usage reporting, webhook\n * endpoint management, and the project-owner email view.\n *\n * Do NOT add public /v1/emails* contracts here — those live in the\n * signal-email subpath.\n */\n\nexport * from './domain.schema.js';\nexport * from './request.schema.js';\nexport * from './response.schema.js';\n"]}
|