@gravity-rail/sdk 0.3.0 → 0.5.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 +22 -0
- package/dist/{chunk-MFEEPNXO.js → chunk-QS6ZRQUZ.js} +37 -11
- package/dist/chunk-QS6ZRQUZ.js.map +1 -0
- package/dist/{chunk-DNTCSBEW.js → chunk-QZC4QPP2.js} +996 -161
- package/dist/chunk-QZC4QPP2.js.map +1 -0
- package/dist/{index-BK6BH83l.d.ts → index-CIwgGcAm.d.ts} +7600 -5388
- package/dist/{index-CafthMIC.d.cts → index-DNxSoo5S.d.cts} +7600 -5388
- package/dist/index.cjs +1047 -168
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +52 -2
- package/dist/inquiries-DiTDrTG2.d.cts +3536 -0
- package/dist/inquiries-DiTDrTG2.d.ts +3536 -0
- package/dist/internal.cjs +1063 -172
- package/dist/internal.cjs.map +1 -1
- package/dist/internal.d.cts +109 -91
- package/dist/internal.d.ts +109 -91
- package/dist/internal.js +60 -6
- package/dist/schemas.cjs +322 -50
- package/dist/schemas.cjs.map +1 -1
- package/dist/schemas.d.cts +339 -66
- package/dist/schemas.d.ts +339 -66
- package/dist/schemas.js +284 -40
- package/dist/schemas.js.map +1 -1
- package/package.json +10 -5
- package/dist/chunk-DNTCSBEW.js.map +0 -1
- package/dist/chunk-MFEEPNXO.js.map +0 -1
- package/dist/inquiries-8Tb9lh4a.d.cts +0 -1803
- package/dist/inquiries-8Tb9lh4a.d.ts +0 -1803
package/dist/schemas.js
CHANGED
|
@@ -3,9 +3,12 @@ import {
|
|
|
3
3
|
CalendarEventStatus,
|
|
4
4
|
CalendarScheduleAvailabilityType,
|
|
5
5
|
CalendarScheduleRecurrence,
|
|
6
|
+
DataCategory,
|
|
6
7
|
DataFieldType,
|
|
8
|
+
DataSensitivity,
|
|
9
|
+
DataTypeRecordScope,
|
|
7
10
|
IndexStatus
|
|
8
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-QS6ZRQUZ.js";
|
|
9
12
|
|
|
10
13
|
// src/schemas/accounts.ts
|
|
11
14
|
import { z } from "zod";
|
|
@@ -107,7 +110,9 @@ var OrganizationSchema = z.object({
|
|
|
107
110
|
id: z.number(),
|
|
108
111
|
uuid: z.string(),
|
|
109
112
|
name: z.string(),
|
|
113
|
+
slug: z.string(),
|
|
110
114
|
primary: z.boolean(),
|
|
115
|
+
authMode: z.enum(["open", "ssoForDomain", "ssoOnly"]),
|
|
111
116
|
contactEmail: z.string().optional(),
|
|
112
117
|
contactPhone: z.string().optional(),
|
|
113
118
|
createdAt: z.string(),
|
|
@@ -116,7 +121,8 @@ var OrganizationSchema = z.object({
|
|
|
116
121
|
});
|
|
117
122
|
var AdminOrganizationSchema = OrganizationSchema.extend({
|
|
118
123
|
accountCount: z.number(),
|
|
119
|
-
workspaceCount: z.number()
|
|
124
|
+
workspaceCount: z.number(),
|
|
125
|
+
enforceCreditLimit: z.boolean()
|
|
120
126
|
});
|
|
121
127
|
var CreateOrganizationRequestSchema = z.object({
|
|
122
128
|
name: z.string(),
|
|
@@ -129,15 +135,24 @@ var CreateOrganizationRequestSchema = z.object({
|
|
|
129
135
|
});
|
|
130
136
|
var UpdateOrganizationRequestSchema = z.object({
|
|
131
137
|
name: z.string().optional(),
|
|
138
|
+
slug: z.string().optional(),
|
|
132
139
|
primary: z.boolean().optional(),
|
|
133
140
|
contactEmail: z.string().optional(),
|
|
134
141
|
contactPhone: z.string().optional(),
|
|
142
|
+
authMode: z.enum(["open", "ssoForDomain", "ssoOnly"]).optional(),
|
|
143
|
+
ssoProvider: z.string().nullable().optional(),
|
|
144
|
+
ssoDomain: z.string().nullable().optional(),
|
|
145
|
+
ssoAutoProvision: z.boolean().optional(),
|
|
146
|
+
ssoOidc: z.unknown().nullable().optional(),
|
|
135
147
|
logo: z.string().optional(),
|
|
136
148
|
// Base64 encoded
|
|
137
149
|
logoMimeType: z.string().optional(),
|
|
138
150
|
// Twilio sub-account linkage. Explicit null clears the field so SMS
|
|
139
151
|
// falls through to the master client (does not touch Twilio itself).
|
|
140
|
-
twilioSubAccountSid: z.string().nullable().optional()
|
|
152
|
+
twilioSubAccountSid: z.string().nullable().optional(),
|
|
153
|
+
// Hard credit enforcement toggle — flips between the legacy soft
|
|
154
|
+
// alert-only mode and the hard 402 stop at zero credits.
|
|
155
|
+
enforceCreditLimit: z.boolean().optional()
|
|
141
156
|
});
|
|
142
157
|
var AdminAccountMembershipSchema = z.object({
|
|
143
158
|
workspaceUuid: z.string(),
|
|
@@ -485,6 +500,7 @@ var ChannelEnum = z4.enum([
|
|
|
485
500
|
"realtime",
|
|
486
501
|
"chat",
|
|
487
502
|
"email",
|
|
503
|
+
"background",
|
|
488
504
|
"site-chat",
|
|
489
505
|
"direct-message"
|
|
490
506
|
]);
|
|
@@ -557,7 +573,11 @@ var ChatFormDataSchema = z4.object({
|
|
|
557
573
|
paused: z4.boolean().optional(),
|
|
558
574
|
muted: z4.boolean().optional(),
|
|
559
575
|
needsResponse: z4.boolean().optional(),
|
|
560
|
-
workflowVersionNumber: z4.number().nullable().optional()
|
|
576
|
+
workflowVersionNumber: z4.number().nullable().optional(),
|
|
577
|
+
// Human-typed initial SMS/email body. Optional, request-body only.
|
|
578
|
+
// Backend dispatches via the existing initial-message path when the
|
|
579
|
+
// Agent is disabled. Treat as PHI client-side.
|
|
580
|
+
initialMessage: z4.string().nullable().optional()
|
|
561
581
|
});
|
|
562
582
|
var ChatFiltersSchema = z4.object({
|
|
563
583
|
page: z4.number().optional(),
|
|
@@ -627,8 +647,16 @@ var CreateChatForWorkflowSchema = WorkspaceIdSchema.extend({
|
|
|
627
647
|
var CreateChatCompletionSchema = WorkspaceIdSchema.extend({
|
|
628
648
|
chatId: z4.number().describe("Chat ID"),
|
|
629
649
|
model: z4.string().optional().describe("AI model to use"),
|
|
650
|
+
// ``id`` on each message is optional but, when provided for the latest
|
|
651
|
+
// user message, the backend uses it as the per-turn discriminator for
|
|
652
|
+
// the Temporal inference workflow. MCP/tool callers that validate
|
|
653
|
+
// through this schema would otherwise have ``id`` stripped and lose
|
|
654
|
+
// the same-message-retry idempotency the per-turn workflow IDs rely
|
|
655
|
+
// on (see lib/services/inference_keys.py and
|
|
656
|
+
// ChatCompletionMessageSchema below).
|
|
630
657
|
messages: z4.array(
|
|
631
658
|
z4.object({
|
|
659
|
+
id: z4.string().optional(),
|
|
632
660
|
role: z4.string(),
|
|
633
661
|
content: z4.string()
|
|
634
662
|
})
|
|
@@ -732,9 +760,21 @@ var ChatMessageAPIResponseSchema = z4.object({
|
|
|
732
760
|
error_details: z4.any().optional(),
|
|
733
761
|
createdAt: z4.string(),
|
|
734
762
|
email_id: z4.number().optional(),
|
|
735
|
-
inbox_id: z4.number().optional()
|
|
763
|
+
inbox_id: z4.number().optional(),
|
|
764
|
+
// Task this message was produced under. Null for messages that predate the
|
|
765
|
+
// workflow-task tracking or that originated outside a task (e.g. manager
|
|
766
|
+
// chats). Surfaced in chat transcripts to help reviewers trace messages
|
|
767
|
+
// back to the workflow task that produced them.
|
|
768
|
+
taskId: z4.number().nullable().optional(),
|
|
769
|
+
// SMS delivery fields — only present on messages sent via Twilio SMS.
|
|
770
|
+
smsDeliveryStatus: z4.string().nullable().optional(),
|
|
771
|
+
smsDeliveryErrorCode: z4.string().nullable().optional(),
|
|
772
|
+
smsDeliveryUpdatedAt: z4.string().nullable().optional(),
|
|
773
|
+
// Friendly failure reason — only set when smsDeliveryStatus is failed/undelivered.
|
|
774
|
+
smsDeliveryFailureReason: z4.string().nullable().optional()
|
|
736
775
|
});
|
|
737
776
|
var ChatCompletionMessageSchema = z4.object({
|
|
777
|
+
id: z4.string().optional(),
|
|
738
778
|
role: z4.enum(["user", "assistant", "system"]),
|
|
739
779
|
content: z4.string()
|
|
740
780
|
});
|
|
@@ -756,13 +796,124 @@ var ChatMessageChunkSchema = z4.object({
|
|
|
756
796
|
error: z4.string().optional()
|
|
757
797
|
});
|
|
758
798
|
|
|
759
|
-
// src/schemas/
|
|
799
|
+
// src/schemas/data-types.ts
|
|
760
800
|
import { z as z5 } from "zod";
|
|
761
801
|
var DataFieldTypeEnum = z5.nativeEnum(DataFieldType);
|
|
762
802
|
var IndexStatusEnum = z5.nativeEnum(IndexStatus);
|
|
803
|
+
var DataTypeRecordScopeEnum = z5.nativeEnum(DataTypeRecordScope);
|
|
804
|
+
var DataSensitivityEnum = z5.nativeEnum(DataSensitivity);
|
|
805
|
+
var DataCategoryEnum = z5.nativeEnum(DataCategory);
|
|
806
|
+
var DataTypeMemberRoleAccessInputSchema = z5.object({
|
|
807
|
+
memberRoleId: z5.number(),
|
|
808
|
+
accessMode: z5.number().int().nonnegative()
|
|
809
|
+
}).strict();
|
|
810
|
+
var DataTypeMemberRoleAccessResponseSchema = DataTypeMemberRoleAccessInputSchema.extend({
|
|
811
|
+
memberRoleName: z5.string()
|
|
812
|
+
});
|
|
813
|
+
var SENSITIVITY_RANK = {
|
|
814
|
+
["public" /* PUBLIC */]: 1,
|
|
815
|
+
["internal" /* INTERNAL */]: 2,
|
|
816
|
+
["confidential" /* CONFIDENTIAL */]: 3,
|
|
817
|
+
["restricted" /* RESTRICTED */]: 4,
|
|
818
|
+
["secret" /* SECRET */]: 5
|
|
819
|
+
};
|
|
820
|
+
var CATEGORY_MIN_SENSITIVITY = {
|
|
821
|
+
["phi" /* PHI */]: "restricted" /* RESTRICTED */,
|
|
822
|
+
["credential" /* CREDENTIAL */]: "secret" /* SECRET */
|
|
823
|
+
};
|
|
824
|
+
var HIGH_RISK_CATEGORIES = /* @__PURE__ */ new Set(["phi" /* PHI */, "credential" /* CREDENTIAL */]);
|
|
825
|
+
function maxSensitivity(first, second) {
|
|
826
|
+
return SENSITIVITY_RANK[first] >= SENSITIVITY_RANK[second] ? first : second;
|
|
827
|
+
}
|
|
828
|
+
function minSensitivityForCategories(categories = []) {
|
|
829
|
+
return categories.reduce((minimum, category) => {
|
|
830
|
+
const categoryMinimum = CATEGORY_MIN_SENSITIVITY[category];
|
|
831
|
+
return categoryMinimum ? maxSensitivity(minimum, categoryMinimum) : minimum;
|
|
832
|
+
}, "public" /* PUBLIC */);
|
|
833
|
+
}
|
|
834
|
+
function minSensitivityForFields(fields = []) {
|
|
835
|
+
return fields.reduce((minimum, field) => {
|
|
836
|
+
const fieldSensitivity = field.sensitivity ?? "confidential" /* CONFIDENTIAL */;
|
|
837
|
+
const categoryMinimum = minSensitivityForCategories(field.categories ?? []);
|
|
838
|
+
return maxSensitivity(minimum, maxSensitivity(fieldSensitivity, categoryMinimum));
|
|
839
|
+
}, "public" /* PUBLIC */);
|
|
840
|
+
}
|
|
841
|
+
function validateFieldPolicy(field, ctx) {
|
|
842
|
+
const categories = field.categories ?? [];
|
|
843
|
+
const sensitivity = field.sensitivity ?? "confidential" /* CONFIDENTIAL */;
|
|
844
|
+
const minimumSensitivity = minSensitivityForCategories(categories);
|
|
845
|
+
if (SENSITIVITY_RANK[sensitivity] < SENSITIVITY_RANK[minimumSensitivity]) {
|
|
846
|
+
ctx.addIssue({
|
|
847
|
+
code: z5.ZodIssueCode.custom,
|
|
848
|
+
path: ["sensitivity"],
|
|
849
|
+
message: `Sensitivity must be at least ${minimumSensitivity} for selected categories`
|
|
850
|
+
});
|
|
851
|
+
}
|
|
852
|
+
}
|
|
853
|
+
function validateDataTypePolicy(data, ctx) {
|
|
854
|
+
const recordScope = data.recordScope ?? "member" /* MEMBER */;
|
|
855
|
+
const fields = data.fields ?? [];
|
|
856
|
+
const derivedSensitivity = minSensitivityForFields(fields);
|
|
857
|
+
const hasHighRiskCategory = fields.some(
|
|
858
|
+
(field) => (field.categories ?? []).some((category) => HIGH_RISK_CATEGORIES.has(category))
|
|
859
|
+
);
|
|
860
|
+
if (recordScope === "workspace" /* WORKSPACE */ && data.isCollection === false) {
|
|
861
|
+
ctx.addIssue({
|
|
862
|
+
code: z5.ZodIssueCode.custom,
|
|
863
|
+
path: ["isCollection"],
|
|
864
|
+
message: "Workspace-scoped data types must be collections"
|
|
865
|
+
});
|
|
866
|
+
}
|
|
867
|
+
if (recordScope === "workspace" /* WORKSPACE */ && hasHighRiskCategory) {
|
|
868
|
+
ctx.addIssue({
|
|
869
|
+
code: z5.ZodIssueCode.custom,
|
|
870
|
+
path: ["fields"],
|
|
871
|
+
message: "Workspace-scoped data types cannot include PHI or credential categories"
|
|
872
|
+
});
|
|
873
|
+
}
|
|
874
|
+
if (data.sensitivity !== void 0 && data.sensitivity !== derivedSensitivity) {
|
|
875
|
+
ctx.addIssue({
|
|
876
|
+
code: z5.ZodIssueCode.custom,
|
|
877
|
+
path: ["sensitivity"],
|
|
878
|
+
message: `Sensitivity is derived from fields and must be ${derivedSensitivity}`
|
|
879
|
+
});
|
|
880
|
+
}
|
|
881
|
+
}
|
|
882
|
+
function validateDataTypeUpdatePolicy(data, ctx) {
|
|
883
|
+
const fields = data.fields ?? [];
|
|
884
|
+
const hasFields = data.fields !== void 0;
|
|
885
|
+
const hasHighRiskCategory = fields.some(
|
|
886
|
+
(field) => (field.categories ?? []).some((category) => HIGH_RISK_CATEGORIES.has(category))
|
|
887
|
+
);
|
|
888
|
+
if (data.recordScope === "workspace" /* WORKSPACE */ && data.isCollection === false) {
|
|
889
|
+
ctx.addIssue({
|
|
890
|
+
code: z5.ZodIssueCode.custom,
|
|
891
|
+
path: ["isCollection"],
|
|
892
|
+
message: "Workspace-scoped data types must be collections"
|
|
893
|
+
});
|
|
894
|
+
}
|
|
895
|
+
if (data.recordScope === "workspace" /* WORKSPACE */ && hasFields && hasHighRiskCategory) {
|
|
896
|
+
ctx.addIssue({
|
|
897
|
+
code: z5.ZodIssueCode.custom,
|
|
898
|
+
path: ["fields"],
|
|
899
|
+
message: "Workspace-scoped data types cannot include PHI or credential categories"
|
|
900
|
+
});
|
|
901
|
+
}
|
|
902
|
+
if (hasFields && data.sensitivity !== void 0) {
|
|
903
|
+
const derivedSensitivity = minSensitivityForFields(fields);
|
|
904
|
+
if (data.sensitivity !== derivedSensitivity) {
|
|
905
|
+
ctx.addIssue({
|
|
906
|
+
code: z5.ZodIssueCode.custom,
|
|
907
|
+
path: ["sensitivity"],
|
|
908
|
+
message: `Sensitivity is derived from fields and must be ${derivedSensitivity}`
|
|
909
|
+
});
|
|
910
|
+
}
|
|
911
|
+
}
|
|
912
|
+
}
|
|
763
913
|
var EnumOptionSchema = z5.object({
|
|
764
914
|
label: z5.string(),
|
|
765
|
-
value: z5.union([z5.string(), z5.number()])
|
|
915
|
+
value: z5.union([z5.string(), z5.number()]),
|
|
916
|
+
visibleWhen: z5.string().optional()
|
|
766
917
|
});
|
|
767
918
|
var OptionsSchema = z5.array(EnumOptionSchema).optional();
|
|
768
919
|
var DataFieldSchema = z5.object({
|
|
@@ -804,8 +955,12 @@ var SchemaFieldSchema = z5.object({
|
|
|
804
955
|
referencedTypeId: z5.number().optional(),
|
|
805
956
|
shouldIndex: z5.boolean().optional(),
|
|
806
957
|
adminOnly: z5.boolean().optional(),
|
|
807
|
-
defaultValue: z5.any().optional()
|
|
808
|
-
|
|
958
|
+
defaultValue: z5.any().optional(),
|
|
959
|
+
sensitivity: DataSensitivityEnum.optional(),
|
|
960
|
+
categories: z5.array(DataCategoryEnum).optional(),
|
|
961
|
+
celFunction: z5.string().optional(),
|
|
962
|
+
validateCel: z5.string().optional()
|
|
963
|
+
}).superRefine(validateFieldPolicy);
|
|
809
964
|
var SchemaFieldFormDataSchema = z5.object({
|
|
810
965
|
slug: z5.string(),
|
|
811
966
|
name: z5.string(),
|
|
@@ -817,8 +972,12 @@ var SchemaFieldFormDataSchema = z5.object({
|
|
|
817
972
|
referencedTypeId: z5.number().optional(),
|
|
818
973
|
shouldIndex: z5.boolean().optional(),
|
|
819
974
|
adminOnly: z5.boolean().optional(),
|
|
820
|
-
defaultValue: z5.any().optional()
|
|
821
|
-
|
|
975
|
+
defaultValue: z5.any().optional(),
|
|
976
|
+
sensitivity: DataSensitivityEnum.optional(),
|
|
977
|
+
categories: z5.array(DataCategoryEnum).optional(),
|
|
978
|
+
celFunction: z5.string().optional(),
|
|
979
|
+
validateCel: z5.string().optional()
|
|
980
|
+
}).superRefine(validateFieldPolicy);
|
|
822
981
|
var DataTypeSchema = z5.object({
|
|
823
982
|
id: z5.number(),
|
|
824
983
|
name: z5.string(),
|
|
@@ -828,21 +987,29 @@ var DataTypeSchema = z5.object({
|
|
|
828
987
|
prompt: z5.string().optional(),
|
|
829
988
|
isCollection: z5.boolean(),
|
|
830
989
|
pinned: z5.boolean().optional(),
|
|
990
|
+
archived: z5.boolean().optional(),
|
|
831
991
|
ownerId: z5.number().nullable(),
|
|
992
|
+
recordScope: DataTypeRecordScopeEnum,
|
|
993
|
+
sensitivity: DataSensitivityEnum,
|
|
994
|
+
categories: z5.array(DataCategoryEnum),
|
|
995
|
+
memberRoleAccess: z5.array(DataTypeMemberRoleAccessResponseSchema).optional(),
|
|
832
996
|
createdAt: z5.string(),
|
|
833
997
|
updatedAt: z5.string(),
|
|
834
998
|
fields: z5.array(SchemaFieldSchema)
|
|
835
|
-
});
|
|
836
|
-
var
|
|
999
|
+
}).superRefine(validateDataTypePolicy);
|
|
1000
|
+
var DataTypeFormDataBaseSchema = z5.object({
|
|
837
1001
|
name: z5.string(),
|
|
838
1002
|
slug: z5.string(),
|
|
839
1003
|
description: z5.string().optional(),
|
|
840
1004
|
prompt: z5.string().optional(),
|
|
841
1005
|
isCollection: z5.boolean(),
|
|
842
1006
|
pinned: z5.boolean().optional(),
|
|
1007
|
+
recordScope: DataTypeRecordScopeEnum.optional(),
|
|
843
1008
|
fields: z5.array(SchemaFieldFormDataSchema),
|
|
1009
|
+
memberRoleAccess: z5.array(DataTypeMemberRoleAccessInputSchema).optional(),
|
|
844
1010
|
ownerId: z5.number().nullable().optional()
|
|
845
|
-
});
|
|
1011
|
+
}).strict();
|
|
1012
|
+
var DataTypeFormDataSchema = DataTypeFormDataBaseSchema.superRefine(validateDataTypePolicy);
|
|
846
1013
|
var DataRecordFiltersSchema = z5.object({
|
|
847
1014
|
page: z5.number().optional(),
|
|
848
1015
|
pageSize: z5.number().optional(),
|
|
@@ -858,15 +1025,15 @@ var GetDataTypeBySlugSchema = WorkspaceIdSchema.extend({
|
|
|
858
1025
|
slug: z5.string().describe("Data type slug")
|
|
859
1026
|
});
|
|
860
1027
|
var CreateDataTypeSchema = WorkspaceIdSchema.merge(
|
|
861
|
-
|
|
1028
|
+
DataTypeFormDataBaseSchema.extend({
|
|
862
1029
|
fields: z5.array(SchemaFieldFormDataSchema).default([]).describe(
|
|
863
1030
|
"Field definitions for the data type. Can be empty initially and fields added later."
|
|
864
1031
|
)
|
|
865
1032
|
})
|
|
866
|
-
);
|
|
1033
|
+
).superRefine(validateDataTypePolicy);
|
|
867
1034
|
var UpdateDataTypeSchema = WorkspaceIdSchema.extend({
|
|
868
1035
|
dataTypeId: z5.number().describe("Data type ID")
|
|
869
|
-
}).merge(
|
|
1036
|
+
}).merge(DataTypeFormDataBaseSchema.partial()).superRefine(validateDataTypeUpdatePolicy);
|
|
870
1037
|
var DeleteDataTypeSchema = WorkspaceIdSchema.extend({
|
|
871
1038
|
dataTypeId: z5.number().describe("Data type ID to delete")
|
|
872
1039
|
});
|
|
@@ -878,25 +1045,35 @@ var GetDataRecordSchema = WorkspaceIdSchema.extend({
|
|
|
878
1045
|
});
|
|
879
1046
|
var CreateDataRecordSchema = WorkspaceIdSchema.extend({
|
|
880
1047
|
dataTypeId: z5.number().describe("Data type ID"),
|
|
881
|
-
memberId: z5.number().nullable().optional().describe("Member ID
|
|
1048
|
+
memberId: z5.number().nullable().optional().describe("Member ID for member-scoped records; omit/null for workspace-scoped records."),
|
|
1049
|
+
memberExternalId: z5.string().nullable().optional().describe("Member external ID (alternative to memberId)."),
|
|
882
1050
|
fieldValues: z5.record(z5.string(), z5.any()).describe("Field values for the record"),
|
|
883
1051
|
externalId: z5.string().nullable().optional().describe("External ID for the record"),
|
|
884
1052
|
assignmentTaskId: z5.number().nullable().optional().describe("Assignment task ID (optional)")
|
|
885
|
-
})
|
|
1053
|
+
}).refine(
|
|
1054
|
+
(data) => [data.memberId, data.memberExternalId].filter((value) => value != null).length <= 1,
|
|
1055
|
+
{
|
|
1056
|
+
message: "Specify only one of memberId or memberExternalId.",
|
|
1057
|
+
path: ["memberId"]
|
|
1058
|
+
}
|
|
1059
|
+
);
|
|
886
1060
|
var UpdateDataRecordSchema = WorkspaceIdSchema.extend({
|
|
887
1061
|
dataTypeId: z5.number().describe("Data type ID"),
|
|
888
1062
|
recordId: z5.number().describe("Data record ID"),
|
|
889
1063
|
fieldValues: z5.record(z5.string(), z5.any()).describe("New field values for the record"),
|
|
890
1064
|
memberId: z5.number().nullable().optional().describe(
|
|
891
|
-
"Member ID
|
|
1065
|
+
"Member ID for member-scoped records; omit/null for workspace-scoped records. Cannot be used with memberExternalId."
|
|
892
1066
|
),
|
|
893
1067
|
memberExternalId: z5.string().nullable().optional().describe("Member external ID (alternative to memberId). Cannot be used with memberId."),
|
|
894
1068
|
externalId: z5.string().nullable().optional().describe("External ID for the record"),
|
|
895
1069
|
assignmentTaskId: z5.number().nullable().optional().describe("Assignment task ID (optional)")
|
|
896
|
-
}).refine(
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
1070
|
+
}).refine(
|
|
1071
|
+
(data) => [data.memberId, data.memberExternalId].filter((value) => value != null).length <= 1,
|
|
1072
|
+
{
|
|
1073
|
+
message: "Specify only one of memberId or memberExternalId.",
|
|
1074
|
+
path: ["memberExternalId"]
|
|
1075
|
+
}
|
|
1076
|
+
);
|
|
900
1077
|
var DeleteDataRecordSchema = WorkspaceIdSchema.extend({
|
|
901
1078
|
dataTypeId: z5.number().describe("Data type ID"),
|
|
902
1079
|
recordId: z5.number().describe("Data record ID to delete")
|
|
@@ -904,7 +1081,9 @@ var DeleteDataRecordSchema = WorkspaceIdSchema.extend({
|
|
|
904
1081
|
var UpsertDataRecordSchema = WorkspaceIdSchema.extend({
|
|
905
1082
|
dataTypeId: z5.number().describe("Data type ID"),
|
|
906
1083
|
externalId: z5.string().describe("External ID to match on"),
|
|
907
|
-
fieldValues: z5.record(z5.string(), z5.any()).describe("Field values for the record")
|
|
1084
|
+
fieldValues: z5.record(z5.string(), z5.any()).describe("Field values for the record"),
|
|
1085
|
+
memberId: z5.number().nullable().optional(),
|
|
1086
|
+
memberExternalId: z5.string().nullable().optional()
|
|
908
1087
|
});
|
|
909
1088
|
var ToggleFieldIndexSchema = WorkspaceIdSchema.extend({
|
|
910
1089
|
dataTypeId: z5.number().describe("Data type ID"),
|
|
@@ -955,7 +1134,8 @@ var DataRecordSchema = z5.object({
|
|
|
955
1134
|
updatedAt: z5.string()
|
|
956
1135
|
});
|
|
957
1136
|
var DataRecordFormDataSchema = z5.object({
|
|
958
|
-
memberId: z5.number().optional(),
|
|
1137
|
+
memberId: z5.number().nullable().optional(),
|
|
1138
|
+
memberExternalId: z5.string().optional(),
|
|
959
1139
|
fieldValues: z5.record(z5.string(), z5.any()),
|
|
960
1140
|
externalId: z5.string().optional(),
|
|
961
1141
|
assignmentTaskId: z5.number().optional()
|
|
@@ -994,11 +1174,14 @@ var DataIntegrityReportItemSchema = z5.object({
|
|
|
994
1174
|
});
|
|
995
1175
|
var DataTypeExportItemSchema = z5.object({
|
|
996
1176
|
uuid: z5.string(),
|
|
1177
|
+
templateUuid: z5.string().nullable().optional(),
|
|
997
1178
|
name: z5.string(),
|
|
998
1179
|
slug: z5.string(),
|
|
999
|
-
description: z5.string().nullable(),
|
|
1180
|
+
description: z5.string().nullable().optional(),
|
|
1181
|
+
prompt: z5.string().nullable().optional(),
|
|
1000
1182
|
isCollection: z5.boolean(),
|
|
1001
|
-
|
|
1183
|
+
recordScope: DataTypeRecordScopeEnum,
|
|
1184
|
+
fields: z5.array(SchemaFieldSchema)
|
|
1002
1185
|
});
|
|
1003
1186
|
var TaskExportDataTypeRelationSchema = z5.object({
|
|
1004
1187
|
dataTypeUuid: z5.string(),
|
|
@@ -1012,21 +1195,35 @@ var InboxRuleSchema = z6.object({
|
|
|
1012
1195
|
operator: z6.enum(["contains", "equals", "ends_with", "regex", "ip_in_range"]),
|
|
1013
1196
|
value: z6.string()
|
|
1014
1197
|
});
|
|
1198
|
+
var RateLimitOverrideSchema = z6.object({
|
|
1199
|
+
enabled: z6.boolean().nullish(),
|
|
1200
|
+
per_minute: z6.number().int().nullish(),
|
|
1201
|
+
per_hour: z6.number().int().nullish()
|
|
1202
|
+
});
|
|
1203
|
+
var RateLimitAllowlistEntrySchema = z6.object({
|
|
1204
|
+
sender: z6.string(),
|
|
1205
|
+
reason: z6.string().nullish()
|
|
1206
|
+
});
|
|
1015
1207
|
var InboxRulesConfigSchema = z6.object({
|
|
1016
1208
|
allowMode: z6.enum(["all", "none", "rules"]).optional(),
|
|
1017
1209
|
denyMode: z6.enum(["all", "none", "rules"]).optional(),
|
|
1018
1210
|
allowRules: z6.array(InboxRuleSchema).optional(),
|
|
1019
|
-
denyRules: z6.array(InboxRuleSchema).optional()
|
|
1211
|
+
denyRules: z6.array(InboxRuleSchema).optional(),
|
|
1212
|
+
rateLimitEnabled: z6.boolean().nullish(),
|
|
1213
|
+
rateLimitOverride: RateLimitOverrideSchema.nullish(),
|
|
1214
|
+
rateLimitAllowlist: z6.array(RateLimitAllowlistEntrySchema).nullish()
|
|
1020
1215
|
});
|
|
1021
1216
|
var InboxFormDataSchema = z6.object({
|
|
1022
1217
|
name: z6.string(),
|
|
1023
1218
|
slug: z6.string().optional(),
|
|
1024
1219
|
rules: InboxRulesConfigSchema.optional(),
|
|
1025
|
-
isPublic: z6.boolean().optional(),
|
|
1026
1220
|
defaultWorkflowId: z6.number().optional(),
|
|
1027
1221
|
assistantEnabled: z6.boolean().optional(),
|
|
1028
1222
|
autoReplyEnabled: z6.boolean().optional(),
|
|
1029
|
-
recipient: z6.string().optional()
|
|
1223
|
+
recipient: z6.string().optional(),
|
|
1224
|
+
// Optional OrgDomain UUID for inboxes hosted on a verified org-tier custom
|
|
1225
|
+
// domain. Backend validates ownership and email-config status.
|
|
1226
|
+
orgDomainUuid: z6.string().uuid().optional()
|
|
1030
1227
|
});
|
|
1031
1228
|
var InboxEmailFiltersSchema = z6.object({
|
|
1032
1229
|
page: z6.number().optional(),
|
|
@@ -1069,8 +1266,9 @@ var GetRecentInboxMessagesSchema = WorkspaceIdSchema.extend({
|
|
|
1069
1266
|
// src/schemas/inquiries.ts
|
|
1070
1267
|
import { z as z7 } from "zod";
|
|
1071
1268
|
var CreateInquirySchema = z7.object({
|
|
1072
|
-
name: z7.string().
|
|
1073
|
-
|
|
1269
|
+
name: z7.string().optional(),
|
|
1270
|
+
email: z7.string().email().optional(),
|
|
1271
|
+
inquiryType: z7.enum(["customer", "builder", "partner", "other", "demo_request", "waitlist"]),
|
|
1074
1272
|
cellNumber: z7.string().optional(),
|
|
1075
1273
|
businessNumber: z7.string().optional(),
|
|
1076
1274
|
businessName: z7.string().optional(),
|
|
@@ -1088,6 +1286,14 @@ var ListInquiriesSchema = z7.object({
|
|
|
1088
1286
|
var GetInquirySchema = z7.object({
|
|
1089
1287
|
inquiryId: z7.number().describe("Inquiry ID")
|
|
1090
1288
|
});
|
|
1289
|
+
var EnrichInquirySchema = z7.object({
|
|
1290
|
+
inquiryUuid: z7.string().uuid().describe("Inquiry UUID from cookie"),
|
|
1291
|
+
name: z7.string().optional(),
|
|
1292
|
+
email: z7.string().email().optional(),
|
|
1293
|
+
cellNumber: z7.string().optional(),
|
|
1294
|
+
businessName: z7.string().optional(),
|
|
1295
|
+
message: z7.string().optional()
|
|
1296
|
+
});
|
|
1091
1297
|
var UpdateInquiryRequestSchema = z7.object({
|
|
1092
1298
|
notes: z7.string().optional(),
|
|
1093
1299
|
status: z7.enum(["new", "in_progress", "done"]).optional()
|
|
@@ -1110,6 +1316,8 @@ var CreateWorkspaceMemberRequestSchema = z8.object({
|
|
|
1110
1316
|
name: z8.string().optional(),
|
|
1111
1317
|
description: z8.string().optional(),
|
|
1112
1318
|
externalId: z8.string().optional(),
|
|
1319
|
+
dateOfBirth: z8.string().optional(),
|
|
1320
|
+
// ISO 8601 date (YYYY-MM-DD)
|
|
1113
1321
|
// Role and permissions
|
|
1114
1322
|
memberRoleId: z8.number(),
|
|
1115
1323
|
// Notification preferences
|
|
@@ -1132,6 +1340,8 @@ var UpdateWorkspaceMemberRequestSchema = z8.object({
|
|
|
1132
1340
|
phone: z8.string().optional(),
|
|
1133
1341
|
email: z8.string().optional(),
|
|
1134
1342
|
externalId: z8.string().optional(),
|
|
1343
|
+
dateOfBirth: z8.string().nullable().optional(),
|
|
1344
|
+
// ISO 8601 date (YYYY-MM-DD)
|
|
1135
1345
|
// Role and permissions
|
|
1136
1346
|
memberRoleId: z8.number().optional(),
|
|
1137
1347
|
labelIds: z8.array(z8.number()).optional(),
|
|
@@ -1160,7 +1370,8 @@ var MemberFormDataSchema = z8.object({
|
|
|
1160
1370
|
description: z8.string().optional(),
|
|
1161
1371
|
phone: z8.string().optional(),
|
|
1162
1372
|
email: z8.string().optional(),
|
|
1163
|
-
externalId: z8.string().optional()
|
|
1373
|
+
externalId: z8.string().optional(),
|
|
1374
|
+
dateOfBirth: z8.string().nullable().optional()
|
|
1164
1375
|
});
|
|
1165
1376
|
var MemberRoleTaskAccessSchema = z8.object({
|
|
1166
1377
|
taskId: z8.number(),
|
|
@@ -1193,7 +1404,8 @@ var MemberRoleFormDataSchema = z8.object({
|
|
|
1193
1404
|
var GetCurrentMemberSchema = WorkspaceIdSchema;
|
|
1194
1405
|
var UpdateCurrentMemberSchema = WorkspaceIdSchema.extend({
|
|
1195
1406
|
name: z8.string().optional().describe("New member name"),
|
|
1196
|
-
description: z8.string().optional().describe("New member description")
|
|
1407
|
+
description: z8.string().optional().describe("New member description"),
|
|
1408
|
+
dateOfBirth: z8.string().nullable().optional().describe("New date of birth (YYYY-MM-DD)")
|
|
1197
1409
|
});
|
|
1198
1410
|
var ListWorkspaceMembersSchema = WorkspaceIdSchema.extend({
|
|
1199
1411
|
query: z8.string().optional().describe("Search query (name, email, or phone)"),
|
|
@@ -1254,17 +1466,23 @@ var MemberFilterObjectTypeEnum = z8.enum([
|
|
|
1254
1466
|
"email",
|
|
1255
1467
|
"phone",
|
|
1256
1468
|
"phoneType",
|
|
1469
|
+
"age",
|
|
1470
|
+
"dateOfBirth",
|
|
1257
1471
|
"workflow",
|
|
1258
1472
|
"tosAccepted",
|
|
1259
1473
|
"notifySms",
|
|
1260
1474
|
"notifyEmail",
|
|
1261
1475
|
"notifyVoice",
|
|
1476
|
+
"smsDeliveryStatus",
|
|
1477
|
+
"callForwarded",
|
|
1262
1478
|
"calendarEvent",
|
|
1263
1479
|
"chatEngagement",
|
|
1264
1480
|
"lastMessageActivity",
|
|
1265
1481
|
"memberCreated",
|
|
1266
1482
|
"isDefault",
|
|
1267
|
-
"memberType"
|
|
1483
|
+
"memberType",
|
|
1484
|
+
"memberField",
|
|
1485
|
+
"journey"
|
|
1268
1486
|
]);
|
|
1269
1487
|
var MemberFilterFilterTypeEnum = z8.enum([
|
|
1270
1488
|
"any",
|
|
@@ -1297,7 +1515,9 @@ var MemberFilterFilterTypeEnum = z8.enum([
|
|
|
1297
1515
|
"lessThanDaysAgo",
|
|
1298
1516
|
"daysUntil",
|
|
1299
1517
|
"hasKey",
|
|
1300
|
-
"hasKeyValue"
|
|
1518
|
+
"hasKeyValue",
|
|
1519
|
+
"smsDeliveryStatusNeedsAttention",
|
|
1520
|
+
"callForwardedAny"
|
|
1301
1521
|
]);
|
|
1302
1522
|
var MemberFilterRuleSchema = z8.object({
|
|
1303
1523
|
id: z8.number(),
|
|
@@ -1351,6 +1571,7 @@ var MemberSchema = z8.object({
|
|
|
1351
1571
|
phoneType: z8.string().optional(),
|
|
1352
1572
|
email: z8.string().optional(),
|
|
1353
1573
|
externalId: z8.string().optional(),
|
|
1574
|
+
dateOfBirth: z8.string().nullable().optional(),
|
|
1354
1575
|
tosAccepted: z8.boolean().optional(),
|
|
1355
1576
|
accountTosAccepted: z8.boolean().optional(),
|
|
1356
1577
|
memberRoleName: z8.string().optional(),
|
|
@@ -1403,7 +1624,7 @@ var DeleteMilestoneSchema = WorkspaceIdSchema.extend({
|
|
|
1403
1624
|
milestoneId: z9.number().describe("Milestone ID to delete")
|
|
1404
1625
|
});
|
|
1405
1626
|
|
|
1406
|
-
// src/schemas/
|
|
1627
|
+
// src/schemas/phone-numbers.ts
|
|
1407
1628
|
import { z as z10 } from "zod";
|
|
1408
1629
|
var PhoneNumberFormDataSchema = z10.object({
|
|
1409
1630
|
name: z10.string().nullable().optional(),
|
|
@@ -1561,7 +1782,8 @@ var ChildTaskFormDataSchema = z12.object({
|
|
|
1561
1782
|
taskId: z12.number(),
|
|
1562
1783
|
choicePrompt: z12.string().optional(),
|
|
1563
1784
|
autoNext: z12.boolean().optional(),
|
|
1564
|
-
required: z12.boolean().optional()
|
|
1785
|
+
required: z12.boolean().optional(),
|
|
1786
|
+
celCondition: z12.string().optional()
|
|
1565
1787
|
});
|
|
1566
1788
|
var AbilityDataSchema = z12.object({
|
|
1567
1789
|
id: z12.number().optional(),
|
|
@@ -1606,10 +1828,24 @@ var UnarchiveTaskSchema = WorkspaceIdSchema.extend({
|
|
|
1606
1828
|
|
|
1607
1829
|
// src/schemas/workflows.ts
|
|
1608
1830
|
import { z as z13 } from "zod";
|
|
1831
|
+
var WorkflowMemberRoleAccessInputSchema = z13.object({
|
|
1832
|
+
memberRoleId: z13.number(),
|
|
1833
|
+
accessMode: z13.number()
|
|
1834
|
+
});
|
|
1609
1835
|
var WorkflowFormDataSchema = z13.object({
|
|
1610
1836
|
name: z13.string(),
|
|
1611
1837
|
description: z13.string().optional(),
|
|
1612
|
-
|
|
1838
|
+
prompt: z13.string().optional(),
|
|
1839
|
+
ownerId: z13.number().optional(),
|
|
1840
|
+
startTaskId: z13.number().nullable().optional(),
|
|
1841
|
+
agentId: z13.number().nullable().optional(),
|
|
1842
|
+
createMode: z13.enum(["task", "taskless"]).optional(),
|
|
1843
|
+
defaultPhoneNumberId: z13.number().nullable().optional(),
|
|
1844
|
+
defaultInboxId: z13.number().nullable().optional(),
|
|
1845
|
+
defaultTaskName: z13.string().optional(),
|
|
1846
|
+
defaultTaskDescription: z13.string().optional(),
|
|
1847
|
+
defaultTaskPrompt: z13.string().optional(),
|
|
1848
|
+
memberRoleAccess: z13.array(WorkflowMemberRoleAccessInputSchema).optional()
|
|
1613
1849
|
});
|
|
1614
1850
|
var ListWorkflowsSchema = WorkspaceIdSchema;
|
|
1615
1851
|
var GetWorkflowSchema = WorkspaceIdSchema.extend({
|
|
@@ -1708,6 +1944,7 @@ export {
|
|
|
1708
1944
|
CreateWorkflowSchema,
|
|
1709
1945
|
CreateWorkspaceMemberRequestSchema,
|
|
1710
1946
|
CreateWorkspaceSchema,
|
|
1947
|
+
DataCategory,
|
|
1711
1948
|
DataFieldFormDataSchema,
|
|
1712
1949
|
DataFieldSchema,
|
|
1713
1950
|
DataFieldType,
|
|
@@ -1719,8 +1956,12 @@ export {
|
|
|
1719
1956
|
DataRecordSchema,
|
|
1720
1957
|
DataRecordWithAccessModeSchema,
|
|
1721
1958
|
DataRecordsPaginatedResponseSchema,
|
|
1959
|
+
DataSensitivity,
|
|
1722
1960
|
DataTypeExportItemSchema,
|
|
1723
1961
|
DataTypeFormDataSchema,
|
|
1962
|
+
DataTypeMemberRoleAccessInputSchema,
|
|
1963
|
+
DataTypeMemberRoleAccessResponseSchema,
|
|
1964
|
+
DataTypeRecordScope,
|
|
1724
1965
|
DataTypeSchema,
|
|
1725
1966
|
DeleteCalendarEventSchema,
|
|
1726
1967
|
DeleteCalendarSchema,
|
|
@@ -1740,6 +1981,7 @@ export {
|
|
|
1740
1981
|
DeleteWorkflowSchema,
|
|
1741
1982
|
DeleteWorkspaceSchema,
|
|
1742
1983
|
DuplicateAccountInfoSchema,
|
|
1984
|
+
EnrichInquirySchema,
|
|
1743
1985
|
ErrorResponseSchema,
|
|
1744
1986
|
FunctionToolSchema,
|
|
1745
1987
|
GenerateICalTokenSchema,
|
|
@@ -1838,6 +2080,8 @@ export {
|
|
|
1838
2080
|
OperatorChatParticipantSchema,
|
|
1839
2081
|
OrganizationSchema,
|
|
1840
2082
|
PhoneNumberFormDataSchema,
|
|
2083
|
+
RateLimitAllowlistEntrySchema,
|
|
2084
|
+
RateLimitOverrideSchema,
|
|
1841
2085
|
RateMessageSchema,
|
|
1842
2086
|
RemoveDataFieldSchema,
|
|
1843
2087
|
RemoveWorkspaceMemberSchema,
|