@dev.smartpricing/message-composer-utils 4.4.1-next.0 → 4.5.1-next.1

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.
Files changed (50) hide show
  1. package/dist/schemas/brand.js +2 -0
  2. package/dist/schemas/brand.js.map +1 -1
  3. package/dist/schemas/dynamic-values.js +2 -0
  4. package/dist/schemas/dynamic-values.js.map +1 -1
  5. package/dist/schemas/message-compilation.js +2 -0
  6. package/dist/schemas/message-compilation.js.map +1 -1
  7. package/dist/schemas/message-group.js +6 -0
  8. package/dist/schemas/message-group.js.map +1 -1
  9. package/dist/schemas/message-group.test.js +14 -0
  10. package/dist/schemas/message-group.test.js.map +1 -0
  11. package/dist/schemas/meta-integration.js +20 -0
  12. package/dist/schemas/meta-integration.js.map +1 -1
  13. package/dist/schemas/meta-integration.test.js +18 -0
  14. package/dist/schemas/meta-integration.test.js.map +1 -0
  15. package/dist/schemas/organization.js +31 -0
  16. package/dist/schemas/organization.js.map +1 -1
  17. package/dist/schemas/organization.test.js +86 -0
  18. package/dist/schemas/organization.test.js.map +1 -0
  19. package/dist/schemas/tracking.js +2 -0
  20. package/dist/schemas/tracking.js.map +1 -1
  21. package/dist/types/app.js.map +1 -1
  22. package/dist/types/index.js +1 -0
  23. package/dist/types/index.js.map +1 -1
  24. package/dist/types/message.js +2 -0
  25. package/dist/types/message.js.map +1 -1
  26. package/dist/types/organization.js +2 -0
  27. package/dist/types/organization.js.map +1 -0
  28. package/dist/utils/templates/meta.test.js +49 -2
  29. package/dist/utils/templates/meta.test.js.map +1 -1
  30. package/dist/utils/templates/whatsapp.js +29 -14
  31. package/dist/utils/templates/whatsapp.js.map +1 -1
  32. package/package.json +1 -1
  33. package/src/schemas/brand.ts +2 -0
  34. package/src/schemas/dynamic-values.ts +2 -0
  35. package/src/schemas/message-compilation.ts +2 -0
  36. package/src/schemas/message-group.test.ts +20 -0
  37. package/src/schemas/message-group.ts +9 -0
  38. package/src/schemas/meta-integration.test.ts +20 -0
  39. package/src/schemas/meta-integration.ts +30 -1
  40. package/src/schemas/organization.test.ts +143 -0
  41. package/src/schemas/organization.ts +39 -0
  42. package/src/schemas/tracking.ts +2 -0
  43. package/src/types/api/apiMessages.ts +2 -0
  44. package/src/types/app.ts +5 -24
  45. package/src/types/index.ts +1 -0
  46. package/src/types/message.ts +14 -0
  47. package/src/types/organization.ts +19 -0
  48. package/src/types/submission-job.ts +5 -0
  49. package/src/utils/templates/meta.test.ts +76 -2
  50. package/src/utils/templates/whatsapp.ts +35 -13
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp.js","sourceRoot":"","sources":["../../../src/utils/templates/whatsapp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"whatsapp.js","sourceRoot":"","sources":["../../../src/utils/templates/whatsapp.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dev.smartpricing/message-composer-utils",
3
- "version": "4.4.1-next.0",
3
+ "version": "4.5.1-next.1",
4
4
  "description": "Shared types and utilities for the message composer",
5
5
  "type": "module",
6
6
  "exports": {
@@ -7,10 +7,12 @@ import {
7
7
  BrandProperty,
8
8
  } from "../types/index.js";
9
9
  import { dbTimestampSchema } from "./common.js";
10
+ import { organizationFilterQuerySchema } from "./organization.js";
10
11
 
11
12
  export const listBrandsQuerySchema = z.object({
12
13
  sort_by: z.enum(["created_at", "name"]).catch("created_at"),
13
14
  direction: z.enum(["asc", "desc"]).catch("asc"),
15
+ ...organizationFilterQuerySchema.shape,
14
16
  });
15
17
 
16
18
  export const byPropertyParamsSchema = z.object({
@@ -3,6 +3,7 @@ import {
3
3
  DynamicValuesResponse,
4
4
  MESSAGE_GROUP_PRODUCTS,
5
5
  } from "../types/index.js";
6
+ import { organizationLookupQuerySchema } from "./organization.js";
6
7
 
7
8
  export const dynamicValuesQuerySchema = z.object({
8
9
  product: z.enum(MESSAGE_GROUP_PRODUCTS, {
@@ -10,6 +11,7 @@ export const dynamicValuesQuerySchema = z.object({
10
11
  }),
11
12
  context: z.string().optional(),
12
13
  language: z.string().default("en"),
14
+ ...organizationLookupQuerySchema.shape,
13
15
  });
14
16
 
15
17
  export const dynamicValuesResponseSchema = z.record(
@@ -4,6 +4,7 @@ import {
4
4
  CompileAndSendRequest,
5
5
  previewMessageRequestSchema,
6
6
  } from "../types/index.js";
7
+ import { organizationBodySchema } from "./organization.js";
7
8
 
8
9
  export const messageLanguageQuerySchema = z.object({
9
10
  language: z.string(),
@@ -30,6 +31,7 @@ export const compileAndSendBodySchema = compileMessageBodySchema.extend({
30
31
  }) satisfies z.ZodType<CompileAndSendRequest>;
31
32
 
32
33
  export const testEmailBodySchema = z.object({
34
+ ...organizationBodySchema.shape,
33
35
  message: previewMessageRequestSchema.shape.message,
34
36
  to: z.string().min(1, "Missing required parameters: message, to"),
35
37
  brand_id: z.string().nullable().optional(),
@@ -0,0 +1,20 @@
1
+ import { describe, it, expect } from "vitest";
2
+ import { listMessageGroupsQuerySchema } from "./message-group.js";
3
+
4
+ describe("listMessageGroupsQuerySchema: the WABA filter", () => {
5
+ it("keeps the WABA a list is narrowed to", () => {
6
+ expect(
7
+ listMessageGroupsQuerySchema.parse({ waba_id: "waba-1" }).waba_id,
8
+ ).toBe("waba-1");
9
+ });
10
+
11
+ it("is optional: a list without it spans every WABA", () => {
12
+ expect(listMessageGroupsQuerySchema.parse({}).waba_id).toBeUndefined();
13
+ });
14
+
15
+ it("rejects an empty WABA", () => {
16
+ expect(
17
+ listMessageGroupsQuerySchema.safeParse({ waba_id: "" }).success,
18
+ ).toBe(false);
19
+ });
20
+ });
@@ -19,6 +19,10 @@ import {
19
19
  paginationQuerySchema,
20
20
  } from "./pagination.js";
21
21
  import { messageResponseSchema } from "./message.js";
22
+ import {
23
+ organizationBodySchema,
24
+ organizationFilterQuerySchema,
25
+ } from "./organization.js";
22
26
 
23
27
  /**
24
28
  * GET /message-groups: server-side filter, sort and pagination (ADR 0012).
@@ -26,6 +30,7 @@ import { messageResponseSchema } from "./message.js";
26
30
  * the route). An empty or whitespace `search` is treated as absent.
27
31
  */
28
32
  export const listMessageGroupsQuerySchema = paginationQuerySchema.extend({
33
+ ...organizationFilterQuerySchema.shape,
29
34
  search: z
30
35
  .string()
31
36
  .trim()
@@ -37,6 +42,7 @@ export const listMessageGroupsQuerySchema = paginationQuerySchema.extend({
37
42
  product: z.enum(MESSAGE_GROUP_PRODUCTS).optional(),
38
43
  visibility: z.enum(MESSAGE_GROUP_LIST_VISIBILITY).default("public"),
39
44
  render_type: z.enum(MESSAGE_RENDER_TYPES).optional(),
45
+ waba_id: z.string().min(1).optional(),
40
46
  sort: z.enum(MESSAGE_GROUP_LIST_SORT).default("updated_at"),
41
47
  order: z.enum(SORT_ORDER).default("desc"),
42
48
  }) satisfies z.ZodType<ListMessageGroupsQuery, unknown>;
@@ -54,6 +60,7 @@ export const updateMessageGroupBodySchema = z.object({
54
60
  });
55
61
 
56
62
  export const createMessageGroupBodySchema = z.object({
63
+ ...organizationBodySchema.shape,
57
64
  name: z.string(),
58
65
  category: z.enum(MESSAGE_GROUP_CATEGORIES),
59
66
  product: z.enum(MESSAGE_GROUP_PRODUCTS),
@@ -63,6 +70,7 @@ export const createMessageGroupBodySchema = z.object({
63
70
 
64
71
  export const duplicateMessageGroupBodySchema = z
65
72
  .object({
73
+ ...organizationBodySchema.shape,
66
74
  name: z.string().optional(),
67
75
  visibility: z.enum(MESSAGE_GROUP_VISIBILITY).optional(),
68
76
  product: z.enum(MESSAGE_GROUP_PRODUCTS).optional(),
@@ -79,6 +87,7 @@ export const messageGroupResponseSchema = z.object({
79
87
  visibility: z.enum(MESSAGE_GROUP_VISIBILITY).nullable().optional(),
80
88
  brand_id: z.string().nullable().optional(),
81
89
  organization_id: z.string().nullable().optional(),
90
+ waba_id: z.string().nullable().optional(),
82
91
  user_id: z.string(),
83
92
  created_at: dbTimestampSchema,
84
93
  updated_at: dbTimestampSchema,
@@ -0,0 +1,20 @@
1
+ import { describe, it, expect } from "vitest";
2
+ import { submitToWabaBodySchema } from "./meta-integration.js";
3
+
4
+ describe("submitToWabaBodySchema", () => {
5
+ it("accepts a submission that names its WABA", () => {
6
+ expect(submitToWabaBodySchema.parse({ waba_id: "waba-1" })).toEqual({
7
+ waba_id: "waba-1",
8
+ });
9
+ });
10
+
11
+ it("is optional: no body and an empty body both name no WABA", () => {
12
+ expect(submitToWabaBodySchema.parse(undefined)).toBeUndefined();
13
+ expect(submitToWabaBodySchema.parse(null)).toBeNull();
14
+ expect(submitToWabaBodySchema.parse({})).toEqual({});
15
+ });
16
+
17
+ it.each(["", 42, null])("rejects the WABA %j", (waba_id) => {
18
+ expect(submitToWabaBodySchema.safeParse({ waba_id }).success).toBe(false);
19
+ });
20
+ });
@@ -1,5 +1,10 @@
1
1
  import { z } from "zod";
2
- import { SubmissionJob, SubmissionJobResponse } from "../types/index.js";
2
+ import {
3
+ OrganizationWaba,
4
+ SubmissionJob,
5
+ SubmitToWabaBody,
6
+ SubmissionJobResponse,
7
+ } from "../types/index.js";
3
8
  import { dbTimestampSchema } from "./common.js";
4
9
 
5
10
  export const messageIdParamsSchema = z.object({
@@ -45,3 +50,27 @@ export const submitGroupAcceptedResponseSchema = z.object({
45
50
  status: z.literal("queued"),
46
51
  message: z.string(),
47
52
  }) satisfies z.ZodType<SubmissionJobResponse>;
53
+
54
+ /**
55
+ * GET /integrations/meta/wabas: the WABAs of the Organization named in the
56
+ * query (`organizationLookupQuerySchema`), empty when it has none (ADR 0015).
57
+ */
58
+ export const organizationWabasResponseSchema = z.array(
59
+ z.object({
60
+ id: z.string(),
61
+ name: z.string(),
62
+ phone_numbers: z.array(z.string()),
63
+ }),
64
+ ) satisfies z.ZodType<OrganizationWaba[]>;
65
+
66
+ /**
67
+ * Body of the public submit routes (ADR 0015). `waba_id` names the WABA a
68
+ * Message Group is submitted to at its first submission; it is required only
69
+ * when the Organization has several and the Message Group has none yet.
70
+ */
71
+ export const submitToWabaBodySchema = z
72
+ .object({
73
+ waba_id: z.string().min(1).optional(),
74
+ })
75
+ // A POST with no body reaches the route as null.
76
+ .nullish() satisfies z.ZodType<SubmitToWabaBody | null | undefined>;
@@ -0,0 +1,143 @@
1
+ import { describe, it, expect } from "vitest";
2
+ import {
3
+ organizationBodySchema,
4
+ organizationFilterQuerySchema,
5
+ organizationLookupQuerySchema,
6
+ } from "./organization.js";
7
+ import { listBrandsQuerySchema } from "./brand.js";
8
+ import { dynamicValuesQuerySchema } from "./dynamic-values.js";
9
+ import { trackingBodySchema } from "./tracking.js";
10
+ import {
11
+ createMessageGroupBodySchema,
12
+ duplicateMessageGroupBodySchema,
13
+ listMessageGroupsQuerySchema,
14
+ } from "./message-group.js";
15
+
16
+ const ORGANIZATION = "3f0c1a52-8f0e-4c53-9d58-0f6f6f1f2a77";
17
+ const NOT_UUIDS = ["", "42", "hotel-uno", `${ORGANIZATION}x`, 42, null];
18
+
19
+ describe("organizationFilterQuerySchema", () => {
20
+ it("accepts a UUID", () => {
21
+ expect(
22
+ organizationFilterQuerySchema.parse({ organization_id: ORGANIZATION }),
23
+ ).toEqual({ organization_id: ORGANIZATION });
24
+ });
25
+
26
+ it("is optional: a list without it spans the Reachable Organizations", () => {
27
+ expect(organizationFilterQuerySchema.parse({})).toEqual({});
28
+ });
29
+
30
+ it.each(NOT_UUIDS)("rejects %j", (organization_id) => {
31
+ expect(
32
+ organizationFilterQuerySchema.safeParse({ organization_id }).success,
33
+ ).toBe(false);
34
+ });
35
+ });
36
+
37
+ describe("organizationBodySchema", () => {
38
+ it("accepts a UUID", () => {
39
+ expect(
40
+ organizationBodySchema.parse({ organization_id: ORGANIZATION }),
41
+ ).toEqual({ organization_id: ORGANIZATION });
42
+ });
43
+
44
+ it.each(NOT_UUIDS)("rejects %j", (organization_id) => {
45
+ expect(organizationBodySchema.safeParse({ organization_id }).success).toBe(
46
+ false,
47
+ );
48
+ });
49
+ });
50
+
51
+ describe("Message Group schemas carry the Organization", () => {
52
+ it("the list query keeps a UUID filter and rejects anything else", () => {
53
+ expect(
54
+ listMessageGroupsQuerySchema.parse({ organization_id: ORGANIZATION })
55
+ .organization_id,
56
+ ).toBe(ORGANIZATION);
57
+ expect(
58
+ listMessageGroupsQuerySchema.safeParse({ organization_id: "hotel-uno" })
59
+ .success,
60
+ ).toBe(false);
61
+ });
62
+
63
+ it("the create body keeps a UUID Organization and rejects anything else", () => {
64
+ const body = { name: "Welcome", category: "utility", product: "chat" };
65
+ expect(
66
+ createMessageGroupBodySchema.parse({
67
+ ...body,
68
+ organization_id: ORGANIZATION,
69
+ }).organization_id,
70
+ ).toBe(ORGANIZATION);
71
+ expect(
72
+ createMessageGroupBodySchema.safeParse({
73
+ ...body,
74
+ organization_id: "hotel-uno",
75
+ }).success,
76
+ ).toBe(false);
77
+ });
78
+
79
+ it("the duplicate body keeps a UUID Organization and rejects anything else", () => {
80
+ expect(
81
+ duplicateMessageGroupBodySchema.parse({ organization_id: ORGANIZATION }),
82
+ ).toEqual({ organization_id: ORGANIZATION });
83
+ expect(
84
+ duplicateMessageGroupBodySchema.safeParse({
85
+ organization_id: "hotel-uno",
86
+ }).success,
87
+ ).toBe(false);
88
+ });
89
+ });
90
+
91
+ describe("organizationLookupQuerySchema", () => {
92
+ it("accepts a UUID", () => {
93
+ expect(
94
+ organizationLookupQuerySchema.parse({ organization_id: ORGANIZATION }),
95
+ ).toEqual({ organization_id: ORGANIZATION });
96
+ });
97
+
98
+ it.each(NOT_UUIDS)("rejects %j", (organization_id) => {
99
+ expect(
100
+ organizationLookupQuerySchema.safeParse({ organization_id }).success,
101
+ ).toBe(false);
102
+ });
103
+ });
104
+
105
+ describe("Brand, dynamic values and tracking schemas carry the Organization", () => {
106
+ it("the Brand list query keeps a UUID filter and rejects anything else", () => {
107
+ expect(
108
+ listBrandsQuerySchema.parse({ organization_id: ORGANIZATION })
109
+ .organization_id,
110
+ ).toBe(ORGANIZATION);
111
+ expect(
112
+ listBrandsQuerySchema.safeParse({ organization_id: "hotel-uno" }).success,
113
+ ).toBe(false);
114
+ });
115
+
116
+ it("the dynamic values query keeps a UUID Organization and rejects anything else", () => {
117
+ const query = { product: "connect" };
118
+ expect(
119
+ dynamicValuesQuerySchema.parse({
120
+ ...query,
121
+ organization_id: ORGANIZATION,
122
+ }).organization_id,
123
+ ).toBe(ORGANIZATION);
124
+ expect(
125
+ dynamicValuesQuerySchema.safeParse({
126
+ ...query,
127
+ organization_id: "hotel-uno",
128
+ }).success,
129
+ ).toBe(false);
130
+ });
131
+
132
+ it("the tracking body keeps a UUID Organization and rejects anything else", () => {
133
+ const body = { eventName: "brand_created" };
134
+ expect(
135
+ trackingBodySchema.parse({ ...body, organization_id: ORGANIZATION })
136
+ .organization_id,
137
+ ).toBe(ORGANIZATION);
138
+ expect(
139
+ trackingBodySchema.safeParse({ ...body, organization_id: "hotel-uno" })
140
+ .success,
141
+ ).toBe(false);
142
+ });
143
+ });
@@ -1,4 +1,43 @@
1
1
  import { z } from "zod";
2
+ import { ReachableOrganization } from "../types/index.js";
3
+
4
+ export const reachableOrganizationSchema = z.object({
5
+ id: z.string(),
6
+ name: z.string(),
7
+ }) satisfies z.ZodType<ReachableOrganization>;
8
+
9
+ /** GET /organizations: the user's Reachable Organizations (ADR 0014). */
10
+ export const reachableOrganizationListResponseSchema = z.array(
11
+ reachableOrganizationSchema,
12
+ );
13
+
14
+ /**
15
+ * Optional Organization filter of a list route (ADR 0014). Without it the
16
+ * list spans the user's Reachable Organizations; a value that is not
17
+ * reachable yields no data.
18
+ */
19
+ export const organizationFilterQuerySchema = z.object({
20
+ organization_id: z.uuid().optional(),
21
+ });
22
+
23
+ /**
24
+ * Organization a resource is created in (ADR 0014). Optional only while the
25
+ * deprecated `sm-organization-id` header is accepted in its place: a request
26
+ * with neither is rejected by the route.
27
+ */
28
+ export const organizationBodySchema = z.object({
29
+ organization_id: z.uuid().optional(),
30
+ });
31
+
32
+ /**
33
+ * Organization of a lookup route: one that reads Organization-scoped data
34
+ * without listing or creating a resource (ADR 0014). Optional only while the
35
+ * deprecated `sm-organization-id` header is accepted in its place: a request
36
+ * with neither is rejected by the route.
37
+ */
38
+ export const organizationLookupQuerySchema = z.object({
39
+ organization_id: z.uuid().optional(),
40
+ });
2
41
 
3
42
  /**
4
43
  * GET /organization/data passes through OrganizationData from Smartconnect —
@@ -1,6 +1,8 @@
1
1
  import { z } from "zod";
2
+ import { organizationBodySchema } from "./organization.js";
2
3
 
3
4
  export const trackingBodySchema = z.object({
4
5
  eventName: z.string().min(1, "eventName is required"),
5
6
  properties: z.record(z.string(), z.unknown()).optional(),
7
+ ...organizationBodySchema.shape,
6
8
  });
@@ -13,6 +13,8 @@ export type MessageGroupWithMessages = MessageGroupFromDb & {
13
13
  };
14
14
 
15
15
  export interface DuplicateMessageGroupBody {
16
+ /** Organization the copy is created in (ADR 0014). */
17
+ organization_id?: string;
16
18
  name?: string;
17
19
  visibility?: MessageGroupVisibility;
18
20
  /** Defaults to the source group's Product. */
package/src/types/app.ts CHANGED
@@ -34,40 +34,21 @@ export interface AppError {
34
34
  }
35
35
 
36
36
  export interface AppContextConfig {
37
- /** @deprecated No longer used — auth is cookie-based via platform layer */
38
- authenticationToken?: string;
39
37
  /** The Product the host app embeds the composer in (ADR 0011). Required. */
40
38
  product: MessageGroupProduct;
41
- strategy?: "embed" | "native";
42
39
  channels?: Array<"email" | "whatsapp">;
43
40
  languages?: string[];
44
41
  mainLanguage?: string;
42
+ /**
43
+ * The WABA the Host works on. Only a preselection when the user picks the
44
+ * WABA of a Message Group, valid if it is one of the Organization's
45
+ * (ADR 0015).
46
+ */
45
47
  metaWabaId?: string;
46
- metaAccessToken?: string;
47
48
  organization_id?: string;
48
49
  default_tags?: string[];
49
50
  }
50
51
 
51
- export interface AppContextState extends Omit<AppContextConfig, "product"> {
52
- /** Undefined when the host gave no Product; surfaced as a validation error. */
53
- product?: MessageGroupProduct;
54
- initializationSource:
55
- | "query"
56
- | "postMessage"
57
- | "cookies"
58
- | "injection"
59
- | null;
60
- }
61
-
62
- export interface ContextSource {
63
- name: string;
64
- priority: number;
65
- extract: () => Promise<Partial<AppContextConfig>>;
66
- watch?: (
67
- callback: (context: Partial<AppContextConfig>) => void,
68
- ) => () => void;
69
- }
70
-
71
52
  export type ParentNotificationType =
72
53
  | "TEMPLATE_SAVED_DRAFT"
73
54
  | "TEMPLATE_SAVED"
@@ -13,4 +13,5 @@ export * from "./submission-job.js";
13
13
  export * from "./kafka-events.js";
14
14
  export * from "./dynamic-values.js";
15
15
  export * from "./brand.js";
16
+ export * from "./organization.js";
16
17
  export * from "./pagination.js";
@@ -102,12 +102,16 @@ export type MessageGroupListSort = (typeof MESSAGE_GROUP_LIST_SORT)[number];
102
102
  * receives after defaults. The layer sends any subset of these as query params.
103
103
  */
104
104
  export interface ListMessageGroupsQuery extends PaginationQuery {
105
+ /** Narrows the list to one Reachable Organization (ADR 0014). */
106
+ organization_id?: string;
105
107
  search?: string;
106
108
  category?: MessageGroupCategory;
107
109
  status?: MessageStatus;
108
110
  product?: MessageGroupProduct;
109
111
  visibility: MessageGroupListVisibility;
110
112
  render_type?: RenderType;
113
+ /** Narrows the list to the Message Groups on one WABA (ADR 0015). */
114
+ waba_id?: string;
111
115
  sort: MessageGroupListSort;
112
116
  order: SortOrder;
113
117
  }
@@ -132,6 +136,11 @@ export interface MessageGroup extends DbEntity {
132
136
  visibility?: MessageGroupVisibility | null;
133
137
  brand_id?: string | null;
134
138
  organization_id?: string | null;
139
+ /**
140
+ * The WABA the Message Group is submitted to: set at its first submission
141
+ * and fixed from then on, absent until then (ADR 0015).
142
+ */
143
+ waba_id?: string | null;
135
144
  user_id: string;
136
145
  }
137
146
 
@@ -200,6 +209,8 @@ export const brandCascadeDataSchema = z.object({
200
209
  * Request body for previewing a message with inline data (no DB lookups).
201
210
  */
202
211
  export const previewMessageRequestSchema = z.object({
212
+ /** Organization the preview is compiled for (ADR 0014). */
213
+ organization_id: z.uuid().optional(),
203
214
  message: z
204
215
  .object({
205
216
  render_type: z.literal("email_v1"),
@@ -249,6 +260,9 @@ export interface CompileAndSendRequest extends CompileMessageRequest {
249
260
  * Request body for testing email rendering
250
261
  */
251
262
  export interface TestEmailRequest {
263
+ /** Organization the test email is sent for (ADR 0014) */
264
+ organization_id?: string;
265
+
252
266
  /** Email message configuration */
253
267
  message: PostEntity<EmailMessage>;
254
268
 
@@ -0,0 +1,19 @@
1
+ /**
2
+ * An Organization the logged-in user has a role on, directly or through one of
3
+ * its properties (Reachable Organization, ADR 0014).
4
+ */
5
+ export interface ReachableOrganization {
6
+ id: string;
7
+ name: string;
8
+ }
9
+
10
+ /**
11
+ * A WABA of an Organization. An Organization has none, one or several
12
+ * (ADR 0015). `phone_numbers` are the numbers connected to it, possibly none:
13
+ * a WABA is a valid submission target before its first number.
14
+ */
15
+ export interface OrganizationWaba {
16
+ id: string;
17
+ name: string;
18
+ phone_numbers: string[];
19
+ }
@@ -29,3 +29,8 @@ export interface SubmissionJobResponse {
29
29
  status: "queued";
30
30
  message: string;
31
31
  }
32
+
33
+ /** Body of the public submit routes: the WABA to submit to (ADR 0015). */
34
+ export interface SubmitToWabaBody {
35
+ waba_id?: string;
36
+ }