@gravity-rail/sdk 0.36.1 → 0.40.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 +44 -21
- package/dist/agui.d.cts +1 -1
- package/dist/agui.d.ts +1 -1
- package/dist/audio.d.cts +1 -1
- package/dist/audio.d.ts +1 -1
- package/dist/{chat-interaction-CbkSPz3m.d.cts → chat-interaction-BB3ap8_u.d.ts} +8866 -6155
- package/dist/{chat-interaction-DqjEfj7G.d.ts → chat-interaction-Bj1pciwo.d.cts} +8866 -6155
- package/dist/{chunk-P2E6LU7I.js → chunk-67QXTQVL.js} +1 -26
- package/dist/chunk-67QXTQVL.js.map +1 -0
- package/dist/chunk-6KPGCPGW.js +48 -0
- package/dist/chunk-6KPGCPGW.js.map +1 -0
- package/dist/{chunk-HRUMZ46V.js → chunk-72SWNLVD.js} +2 -1
- package/dist/chunk-72SWNLVD.js.map +1 -0
- package/dist/{chunk-R6S5RXW5.js → chunk-ZTUOB4V2.js} +1255 -201
- package/dist/chunk-ZTUOB4V2.js.map +1 -0
- package/dist/helpers.cjs +47 -0
- package/dist/helpers.cjs.map +1 -1
- package/dist/helpers.d.cts +4 -3
- package/dist/helpers.d.ts +4 -3
- package/dist/helpers.js +7 -1
- package/dist/helpers.js.map +1 -1
- package/dist/index.cjs +1365 -330
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +13 -35
- package/dist/index.d.ts +13 -35
- package/dist/index.js +110 -116
- package/dist/index.js.map +1 -1
- package/dist/internal.cjs +1279 -232
- package/dist/internal.cjs.map +1 -1
- package/dist/internal.d.cts +338 -79
- package/dist/internal.d.ts +338 -79
- package/dist/internal.js +66 -15
- package/dist/internal.js.map +1 -1
- package/dist/member-import-D8fZr2Pd.d.cts +46 -0
- package/dist/member-import-YNk9MlEl.d.ts +46 -0
- package/dist/realtime.cjs +91 -20
- package/dist/realtime.cjs.map +1 -1
- package/dist/realtime.d.cts +34 -9
- package/dist/realtime.d.ts +34 -9
- package/dist/realtime.js +90 -20
- package/dist/realtime.js.map +1 -1
- package/dist/{revision-state-92LHz1jQ.d.ts → revision-state-BaJTq3Or.d.ts} +270 -54
- package/dist/{revision-state-CSQ7J3ZU.d.cts → revision-state-CL11FA-T.d.cts} +270 -54
- package/dist/schemas.cjs +58 -81
- package/dist/schemas.cjs.map +1 -1
- package/dist/schemas.d.cts +88 -225
- package/dist/schemas.d.ts +88 -225
- package/dist/schemas.js +58 -76
- package/dist/schemas.js.map +1 -1
- package/dist/{tasks-CrF1qC4G.d.cts → tasks-ByJCQ5BI.d.cts} +2995 -2507
- package/dist/{tasks-CrF1qC4G.d.ts → tasks-ByJCQ5BI.d.ts} +2995 -2507
- package/dist/{types-0c6_NGU4.d.cts → types-DlfADjPR.d.cts} +17 -2
- package/dist/{types-0c6_NGU4.d.ts → types-DlfADjPR.d.ts} +17 -2
- package/package.json +9 -7
- package/dist/chunk-HRUMZ46V.js.map +0 -1
- package/dist/chunk-P2E6LU7I.js.map +0 -1
- package/dist/chunk-R6S5RXW5.js.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -48,6 +48,8 @@ __export(src_exports, {
|
|
|
48
48
|
BaseApiClient: () => BaseApiClient,
|
|
49
49
|
BuildersApi: () => BuildersApi,
|
|
50
50
|
BulkMemberResultStatus: () => BulkMemberResultStatus,
|
|
51
|
+
BundleGrantRequestGranteeType: () => BundleGrantRequestGranteeType,
|
|
52
|
+
BundlesApi: () => BundlesApi,
|
|
51
53
|
BusinessIndustry: () => BusinessIndustry,
|
|
52
54
|
BusinessType: () => BusinessType,
|
|
53
55
|
CELApi: () => CELApi,
|
|
@@ -64,7 +66,11 @@ __export(src_exports, {
|
|
|
64
66
|
ChatInteractionController: () => ChatInteractionController,
|
|
65
67
|
ChatMuteReason: () => ChatMuteReason,
|
|
66
68
|
ConsentMethod: () => ConsentMethod,
|
|
69
|
+
CreateMemberContactPointRequestContactType: () => CreateMemberContactPointRequestContactType,
|
|
70
|
+
CreateMemberContactPointRequestPurpose: () => CreateMemberContactPointRequestPurpose,
|
|
71
|
+
CreateMemberContactPointRequestSharing: () => CreateMemberContactPointRequestSharing,
|
|
67
72
|
CriterionType: () => CriterionType,
|
|
73
|
+
CrmActivityKind: () => CrmActivityKind,
|
|
68
74
|
DEFAULT_AGENT_CHAT_MODEL: () => DEFAULT_AGENT_CHAT_MODEL,
|
|
69
75
|
DEFAULT_AGENT_REALTIME_MODEL: () => DEFAULT_AGENT_REALTIME_MODEL,
|
|
70
76
|
DEFAULT_AGENT_REALTIME_MODEL_CONFIG: () => DEFAULT_AGENT_REALTIME_MODEL_CONFIG,
|
|
@@ -87,10 +93,12 @@ __export(src_exports, {
|
|
|
87
93
|
EventRuleObjectType: () => EventRuleObjectType,
|
|
88
94
|
FeatureCategory: () => FeatureCategory,
|
|
89
95
|
FeatureVisibility: () => FeatureVisibility,
|
|
96
|
+
FeedCursorRejection: () => FeedCursorRejection,
|
|
90
97
|
FhirClientType: () => FhirClientType,
|
|
91
98
|
FhirConnectionState: () => FhirConnectionState,
|
|
92
99
|
FhirVendor: () => FhirVendor,
|
|
93
100
|
FormBuilder: () => FormBuilder,
|
|
101
|
+
FormBundleItemRecordScope: () => FormBundleItemRecordScope,
|
|
94
102
|
GravityRailClient: () => GravityRailClient,
|
|
95
103
|
ImportSkippedRuleResourceGroupResourceType: () => ImportSkippedRuleResourceGroupResourceType,
|
|
96
104
|
ImportSkippedRuleResponseNeededResourceTypesItem: () => ImportSkippedRuleResponseNeededResourceTypesItem,
|
|
@@ -99,6 +107,8 @@ __export(src_exports, {
|
|
|
99
107
|
ImportSkippedRuleResponseStatus: () => ImportSkippedRuleResponseStatus,
|
|
100
108
|
InboundFaxStatusValues: () => InboundFaxStatus,
|
|
101
109
|
IndexStatus: () => IndexStatus,
|
|
110
|
+
InstallationItemChangeChange: () => InstallationItemChangeChange,
|
|
111
|
+
InstallationsApi: () => InstallationsApi,
|
|
102
112
|
InvitationStatus: () => InvitationStatus,
|
|
103
113
|
JobPosition: () => JobPosition,
|
|
104
114
|
JourneyBuilder: () => JourneyBuilder,
|
|
@@ -149,13 +159,20 @@ __export(src_exports, {
|
|
|
149
159
|
REALTIME_MODEL_OPENAI_2: () => REALTIME_MODEL_OPENAI_2,
|
|
150
160
|
REALTIME_MODEL_OPENAI_MINI: () => REALTIME_MODEL_OPENAI_MINI,
|
|
151
161
|
RefResolutionStatus: () => RefResolutionStatus,
|
|
162
|
+
ReferenceTargetInputKind: () => ReferenceTargetInputKind,
|
|
152
163
|
Region: () => Region,
|
|
153
164
|
RegistrationIdentifier: () => RegistrationIdentifier,
|
|
154
165
|
RelatedMemberRole: () => RelatedMemberRole,
|
|
155
166
|
RelationshipCardinality: () => RelationshipCardinality,
|
|
156
167
|
Resource: () => Resource,
|
|
157
|
-
|
|
168
|
+
ResourceWorkflowsApi: () => ResourceWorkflowsApi,
|
|
169
|
+
RevisionHistorySegment: () => RevisionHistorySegment,
|
|
158
170
|
RoutineBuilder: () => RoutineBuilder,
|
|
171
|
+
RoutingActionType: () => RoutingActionType,
|
|
172
|
+
RoutingAudience: () => RoutingAudience,
|
|
173
|
+
RoutingChannel: () => RoutingChannel,
|
|
174
|
+
RoutingTimeWindow: () => RoutingTimeWindow,
|
|
175
|
+
RunHealthCategory: () => RunHealthCategory,
|
|
159
176
|
SCOPES: () => SCOPES,
|
|
160
177
|
SCOPE_PRESETS: () => SCOPE_PRESETS,
|
|
161
178
|
SMS_DELIVERY_FAILURE_STATUSES: () => SMS_DELIVERY_FAILURE_STATUSES,
|
|
@@ -163,10 +180,20 @@ __export(src_exports, {
|
|
|
163
180
|
STT_MODEL_DEEPGRAM_FLUX_MULTI: () => STT_MODEL_DEEPGRAM_FLUX_MULTI,
|
|
164
181
|
STT_MODEL_DEEPGRAM_FLUX_MULTI_SELFHOST: () => STT_MODEL_DEEPGRAM_FLUX_MULTI_SELFHOST,
|
|
165
182
|
STT_MODEL_DEEPGRAM_FLUX_SELFHOST: () => STT_MODEL_DEEPGRAM_FLUX_SELFHOST,
|
|
183
|
+
ScalarTargetInputKind: () => ScalarTargetInputKind,
|
|
184
|
+
ScenarioHealthCaption: () => ScenarioHealthCaption,
|
|
185
|
+
ScenarioHealthHeadline: () => ScenarioHealthHeadline,
|
|
186
|
+
ScenarioHealthSampleNote: () => ScenarioHealthSampleNote,
|
|
187
|
+
ScenarioHealthState: () => ScenarioHealthState,
|
|
188
|
+
ScenarioRunBlocker: () => ScenarioRunBlocker,
|
|
166
189
|
Scope: () => Scope,
|
|
167
190
|
ScopeCategory: () => ScopeCategory,
|
|
168
191
|
ScopeManager: () => ScopeManager,
|
|
192
|
+
SendingNextStep: () => SendingNextStep,
|
|
193
|
+
SendingStopState: () => SendingStopState,
|
|
194
|
+
SetInstallationPolicyRequestUpgradePolicy: () => SetInstallationPolicyRequestUpgradePolicy,
|
|
169
195
|
SiteDnsRecordType: () => SiteDnsRecordType,
|
|
196
|
+
SolutionReleaseResponseSlug: () => SolutionReleaseResponseSlug,
|
|
170
197
|
SupervisorsApi: () => SupervisorsApi,
|
|
171
198
|
TTS_MODEL_AWS_POLLY_GENERATIVE: () => TTS_MODEL_AWS_POLLY_GENERATIVE,
|
|
172
199
|
TTS_MODEL_AWS_POLLY_NEURAL: () => TTS_MODEL_AWS_POLLY_NEURAL,
|
|
@@ -181,11 +208,11 @@ __export(src_exports, {
|
|
|
181
208
|
UiPromptPresentedKindValues: () => UiPromptPresentedKind,
|
|
182
209
|
UiPromptResponseKindValues: () => UiPromptResponseKind,
|
|
183
210
|
UiPromptResponseStatusValues: () => UiPromptResponseStatus,
|
|
211
|
+
UpdateMemberContactPointRequestContactType: () => UpdateMemberContactPointRequestContactType,
|
|
212
|
+
UpdateMemberContactPointRequestPurpose: () => UpdateMemberContactPointRequestPurpose,
|
|
213
|
+
UpdateMemberContactPointRequestSharing: () => UpdateMemberContactPointRequestSharing,
|
|
184
214
|
WIDGET_SLUGS: () => WIDGET_SLUGS,
|
|
185
|
-
WORKFLOW_IMPLICIT_USE_SCOPE: () => WORKFLOW_IMPLICIT_USE_SCOPE,
|
|
186
|
-
WorkflowAccessWarningResourceType: () => WorkflowAccessWarningResourceType,
|
|
187
215
|
WorkflowBuilder: () => WorkflowBuilder,
|
|
188
|
-
WorkflowResourceType: () => WorkflowAccessWarningResourceType,
|
|
189
216
|
WorkflowRoutingMode: () => WorkflowRoutingMode,
|
|
190
217
|
WorkspaceBuilder: () => WorkspaceBuilder,
|
|
191
218
|
WorkspaceBuilderResource: () => WorkspaceBuilderResource,
|
|
@@ -225,10 +252,9 @@ __export(src_exports, {
|
|
|
225
252
|
isSMSDeliveryFailureStatus: () => isSMSDeliveryFailureStatus,
|
|
226
253
|
parseOrgAuthChallenge: () => parseOrgAuthChallenge,
|
|
227
254
|
requiresAssistantParticipant: () => requiresAssistantParticipant,
|
|
228
|
-
roleCanUseWorkflow: () => roleCanUseWorkflow,
|
|
229
|
-
roleImplicitWorkflowUseScope: () => roleImplicitWorkflowUseScope,
|
|
230
|
-
roleWorkflowAccess: () => roleWorkflowAccess,
|
|
231
255
|
runWorkspaceScript: () => runWorkspaceScript,
|
|
256
|
+
toSafeMemberImportPreview: () => toSafeMemberImportPreview,
|
|
257
|
+
toSafeMemberImportSummary: () => toSafeMemberImportSummary,
|
|
232
258
|
usesBuiltinAssistant: () => usesBuiltinAssistant,
|
|
233
259
|
validateFeatureDependencies: () => validateFeatureDependencies
|
|
234
260
|
});
|
|
@@ -327,7 +353,6 @@ var BaseApiClient = class {
|
|
|
327
353
|
enhancedAuthInProgress = null;
|
|
328
354
|
orgAuthHandler;
|
|
329
355
|
orgAuthInProgress = null;
|
|
330
|
-
actingMemberUuid;
|
|
331
356
|
orgSession;
|
|
332
357
|
/**
|
|
333
358
|
* The org_uuid that issued the current org auth credential. Tracked so we can detect
|
|
@@ -367,21 +392,6 @@ var BaseApiClient = class {
|
|
|
367
392
|
updateApiKey(newApiKey) {
|
|
368
393
|
this.apiKey = newApiKey;
|
|
369
394
|
}
|
|
370
|
-
/**
|
|
371
|
-
* Set the acting member UUID for member identity switching.
|
|
372
|
-
* When set, all API requests will include the X-Acting-Member header.
|
|
373
|
-
* The backend will validate that the authenticated account owns this member
|
|
374
|
-
* and use it as the effective identity for the request.
|
|
375
|
-
*/
|
|
376
|
-
setActingMember(memberUuid) {
|
|
377
|
-
this.actingMemberUuid = memberUuid;
|
|
378
|
-
}
|
|
379
|
-
/**
|
|
380
|
-
* Get the current acting member UUID.
|
|
381
|
-
*/
|
|
382
|
-
getActingMember() {
|
|
383
|
-
return this.actingMemberUuid;
|
|
384
|
-
}
|
|
385
395
|
/**
|
|
386
396
|
* Set the opaque org session credential for cross-domain requests.
|
|
387
397
|
* Opaque gr_sess_ values use X-Org-Session. Legacy orgToken JWE values still
|
|
@@ -419,9 +429,6 @@ var BaseApiClient = class {
|
|
|
419
429
|
headers.set("Authorization", `Bearer ${requestToken}`);
|
|
420
430
|
}
|
|
421
431
|
}
|
|
422
|
-
if (this.actingMemberUuid) {
|
|
423
|
-
headers.set("X-Acting-Member", this.actingMemberUuid);
|
|
424
|
-
}
|
|
425
432
|
setOrgAuthHeader(headers, this.orgSession);
|
|
426
433
|
const fullUrl = `${this.baseUrl}/api/v2/${endpoint}`;
|
|
427
434
|
const response = await this.fetchFunction(fullUrl, {
|
|
@@ -573,9 +580,6 @@ ${formattedErrors}`, response.status);
|
|
|
573
580
|
headers.set("Authorization", `Bearer ${requestToken}`);
|
|
574
581
|
}
|
|
575
582
|
}
|
|
576
|
-
if (this.actingMemberUuid) {
|
|
577
|
-
headers.set("X-Acting-Member", this.actingMemberUuid);
|
|
578
|
-
}
|
|
579
583
|
setOrgAuthHeader(headers, this.orgSession);
|
|
580
584
|
const response = await this.fetchFunction(`${this.baseUrl}/api/v2/${endpoint}`, {
|
|
581
585
|
...options,
|
|
@@ -685,9 +689,6 @@ ${formattedErrors}`, response.status);
|
|
|
685
689
|
headers.set("Authorization", `Bearer ${requestToken}`);
|
|
686
690
|
}
|
|
687
691
|
}
|
|
688
|
-
if (this.actingMemberUuid) {
|
|
689
|
-
headers.set("X-Acting-Member", this.actingMemberUuid);
|
|
690
|
-
}
|
|
691
692
|
setOrgAuthHeader(headers, this.orgSession);
|
|
692
693
|
const fullUrl = `${this.baseUrl}/${path}`;
|
|
693
694
|
const response = await this.fetchFunction(fullUrl, {
|
|
@@ -783,6 +784,299 @@ var AbilitiesApi = class extends BaseApiClient {
|
|
|
783
784
|
}
|
|
784
785
|
};
|
|
785
786
|
|
|
787
|
+
// src/api/resource-workflows.ts
|
|
788
|
+
function resourceWorkflowsPath(wid, ...segments) {
|
|
789
|
+
const tail = segments.map((segment) => encodeURIComponent(String(segment))).join("/");
|
|
790
|
+
const base = `w/${encodeURIComponent(wid)}/resource-workflows`;
|
|
791
|
+
return tail ? `${base}/${tail}` : base;
|
|
792
|
+
}
|
|
793
|
+
var ResourceWorkflowsApi = class extends BaseApiClient {
|
|
794
|
+
/** One Workflow's summary, for a viewer that can see it. */
|
|
795
|
+
async getResourceWorkflow(wid, workflowUuid) {
|
|
796
|
+
return this.fetch(resourceWorkflowsPath(wid, workflowUuid));
|
|
797
|
+
}
|
|
798
|
+
/**
|
|
799
|
+
* One published revision.
|
|
800
|
+
*
|
|
801
|
+
* The response is a union: the owner (or a `full` grantee) receives the
|
|
802
|
+
* complete `ResourceWorkflowGraphResponse`, while a bounded grantee receives
|
|
803
|
+
* the `ResourceWorkflowDisclosureResponse` envelope. Branch on `publishedAt`
|
|
804
|
+
* being present — never assume the full shape. A retained revision stays
|
|
805
|
+
* readable here after a `stop_updates` revocation.
|
|
806
|
+
*/
|
|
807
|
+
async getResourceWorkflowRevision(wid, workflowUuid, revisionUuid) {
|
|
808
|
+
return this.fetch(
|
|
809
|
+
resourceWorkflowsPath(wid, workflowUuid, "revisions", revisionUuid)
|
|
810
|
+
);
|
|
811
|
+
}
|
|
812
|
+
/**
|
|
813
|
+
* List published Workflows owned by or shared with this workspace.
|
|
814
|
+
*
|
|
815
|
+
* The Bundle draft editor reads `publishedRevisionUuid` from each summary to
|
|
816
|
+
* pin a Workflow item; archived Workflows are excluded unless asked for.
|
|
817
|
+
*/
|
|
818
|
+
async listResourceWorkflows(wid, params) {
|
|
819
|
+
const query = new URLSearchParams();
|
|
820
|
+
if (params?.page !== void 0) query.set("page", String(params.page));
|
|
821
|
+
if (params?.pageSize !== void 0) query.set("pageSize", String(params.pageSize));
|
|
822
|
+
if (params?.includeArchived !== void 0) {
|
|
823
|
+
query.set("includeArchived", String(params.includeArchived));
|
|
824
|
+
}
|
|
825
|
+
const qs = query.toString();
|
|
826
|
+
return this.fetch(
|
|
827
|
+
`w/${encodeURIComponent(wid)}/resource-workflows${qs ? `?${qs}` : ""}`
|
|
828
|
+
);
|
|
829
|
+
}
|
|
830
|
+
};
|
|
831
|
+
|
|
832
|
+
// src/api/bundles.ts
|
|
833
|
+
function bundlesPath(wid, ...segments) {
|
|
834
|
+
const tail = segments.map((segment) => encodeURIComponent(String(segment))).join("/");
|
|
835
|
+
const base = `w/${encodeURIComponent(wid)}/bundles`;
|
|
836
|
+
return tail ? `${base}/${tail}` : base;
|
|
837
|
+
}
|
|
838
|
+
function pageQuery(params) {
|
|
839
|
+
const query = new URLSearchParams();
|
|
840
|
+
if (params?.page !== void 0) query.set("page", String(params.page));
|
|
841
|
+
if (params?.pageSize !== void 0) query.set("pageSize", String(params.pageSize));
|
|
842
|
+
const qs = query.toString();
|
|
843
|
+
return qs ? `?${qs}` : "";
|
|
844
|
+
}
|
|
845
|
+
var BundlesApi = class extends BaseApiClient {
|
|
846
|
+
/** Official solution metadata, independent of the default workspace Library. */
|
|
847
|
+
async getSolutionRelease(slug) {
|
|
848
|
+
return this.fetch(`solutions/${encodeURIComponent(slug)}`);
|
|
849
|
+
}
|
|
850
|
+
/** Read an authorized Bundle by UUID, including official solutions hidden from discovery. */
|
|
851
|
+
async getBundle(wid, bundleUuid) {
|
|
852
|
+
return this.fetch(bundlesPath(wid, bundleUuid));
|
|
853
|
+
}
|
|
854
|
+
async updateBundle(wid, bundleUuid, data) {
|
|
855
|
+
return this.fetch(
|
|
856
|
+
`w/${encodeURIComponent(wid)}/bundles/${encodeURIComponent(bundleUuid)}`,
|
|
857
|
+
{
|
|
858
|
+
method: "PATCH",
|
|
859
|
+
body: JSON.stringify(data)
|
|
860
|
+
}
|
|
861
|
+
);
|
|
862
|
+
}
|
|
863
|
+
async listBundleInstallations(wid, bundleUuid) {
|
|
864
|
+
return this.fetch(
|
|
865
|
+
`w/${encodeURIComponent(wid)}/bundles/${encodeURIComponent(bundleUuid)}/installations`
|
|
866
|
+
);
|
|
867
|
+
}
|
|
868
|
+
/**
|
|
869
|
+
* Bundles visible to this workspace through ownership, a live grant, or
|
|
870
|
+
* an administrator of the owning organization.
|
|
871
|
+
*/
|
|
872
|
+
async listBundles(wid, params) {
|
|
873
|
+
return this.fetch(`${bundlesPath(wid)}${pageQuery(params)}`);
|
|
874
|
+
}
|
|
875
|
+
/**
|
|
876
|
+
* This workspace's Workflows for the Bundle picker. `eligible` pins
|
|
877
|
+
* `revisionUuid` (the active revision when published, else the newest
|
|
878
|
+
* published one); `unpublished` has nothing to pin. `dependenciesChecked` is
|
|
879
|
+
* false until a Bundle add has stored the revision's dependencies; that add
|
|
880
|
+
* surfaces any refusal as a 409 `workflow_not_shareable`. Requires
|
|
881
|
+
* `workflows:admin`.
|
|
882
|
+
*/
|
|
883
|
+
async listBundleWorkflowCandidates(wid) {
|
|
884
|
+
return this.fetch(bundlesPath(wid, "workflow-candidates"));
|
|
885
|
+
}
|
|
886
|
+
/** Create an empty Bundle owned by this workspace. */
|
|
887
|
+
async createBundle(wid, data) {
|
|
888
|
+
return this.fetch(bundlesPath(wid), {
|
|
889
|
+
method: "POST",
|
|
890
|
+
body: JSON.stringify(data)
|
|
891
|
+
});
|
|
892
|
+
}
|
|
893
|
+
/**
|
|
894
|
+
* The unpublished draft for the owning workspace. A grantee is refused with
|
|
895
|
+
* 404: `version_detail` checks
|
|
896
|
+
* `root.workspace_uuid != viewer.workspace_uuid` for the null version
|
|
897
|
+
* (`lib/db/resources/bundles.py`), after the grantee-inclusive predicate has
|
|
898
|
+
* already admitted them to the Bundle itself.
|
|
899
|
+
*
|
|
900
|
+
* After publication, the next draft contains a copy of the published items.
|
|
901
|
+
* The owner receives it with 200; a grantee receives 404.
|
|
902
|
+
*/
|
|
903
|
+
async getBundleDraft(wid, bundleUuid) {
|
|
904
|
+
return this.fetch(bundlesPath(wid, bundleUuid, "draft"));
|
|
905
|
+
}
|
|
906
|
+
/** Replace the whole draft item list. 409 when `expectedGeneration` is stale. */
|
|
907
|
+
async replaceBundleDraft(wid, bundleUuid, data) {
|
|
908
|
+
return this.fetch(bundlesPath(wid, bundleUuid, "draft"), {
|
|
909
|
+
method: "PUT",
|
|
910
|
+
body: JSON.stringify(data)
|
|
911
|
+
});
|
|
912
|
+
}
|
|
913
|
+
/** Cut a new immutable version from the draft. 409 when `expectedGeneration` is stale. */
|
|
914
|
+
async publishBundle(wid, bundleUuid, data) {
|
|
915
|
+
return this.fetch(bundlesPath(wid, bundleUuid, "publish"), {
|
|
916
|
+
method: "POST",
|
|
917
|
+
body: JSON.stringify(data)
|
|
918
|
+
});
|
|
919
|
+
}
|
|
920
|
+
/** Published versions, newest first. */
|
|
921
|
+
async listBundleVersions(wid, bundleUuid, params) {
|
|
922
|
+
return this.fetch(
|
|
923
|
+
`${bundlesPath(wid, bundleUuid, "versions")}${pageQuery(params)}`
|
|
924
|
+
);
|
|
925
|
+
}
|
|
926
|
+
/** One published version, with its items, declared settings and open slots. */
|
|
927
|
+
async getBundleVersion(wid, bundleUuid, version) {
|
|
928
|
+
return this.fetch(bundlesPath(wid, bundleUuid, "versions", version));
|
|
929
|
+
}
|
|
930
|
+
/** Who this Bundle is currently granted to. */
|
|
931
|
+
async listBundleGrants(wid, bundleUuid) {
|
|
932
|
+
return this.fetch(bundlesPath(wid, bundleUuid, "grants"));
|
|
933
|
+
}
|
|
934
|
+
/**
|
|
935
|
+
* Share throughout the publisher's organization with organization-admin authority.
|
|
936
|
+
* Workspace-specific and global author grants are refused. Official public
|
|
937
|
+
* solutions use the separate staff approval API.
|
|
938
|
+
*/
|
|
939
|
+
async grantBundle(wid, bundleUuid, data) {
|
|
940
|
+
return this.fetch(bundlesPath(wid, bundleUuid, "grants"), {
|
|
941
|
+
method: "POST",
|
|
942
|
+
body: JSON.stringify(data)
|
|
943
|
+
});
|
|
944
|
+
}
|
|
945
|
+
/** Revoke one grant by id. */
|
|
946
|
+
async revokeBundleGrant(wid, bundleUuid, grantId) {
|
|
947
|
+
return this.fetch(bundlesPath(wid, bundleUuid, "grants", grantId), {
|
|
948
|
+
method: "DELETE"
|
|
949
|
+
});
|
|
950
|
+
}
|
|
951
|
+
};
|
|
952
|
+
|
|
953
|
+
// src/api/installations.ts
|
|
954
|
+
function installationsPath(wid, ...segments) {
|
|
955
|
+
const tail = segments.map((segment) => encodeURIComponent(String(segment))).join("/");
|
|
956
|
+
const base = `w/${encodeURIComponent(wid)}/installations`;
|
|
957
|
+
return tail ? `${base}/${tail}` : base;
|
|
958
|
+
}
|
|
959
|
+
var InstallationsApi = class extends BaseApiClient {
|
|
960
|
+
/** Inspect one published release and its selected example dependencies. */
|
|
961
|
+
async preflightBundleInstallation(wid, bundleUuid, data) {
|
|
962
|
+
return this.fetch(
|
|
963
|
+
`w/${encodeURIComponent(wid)}/bundles/${encodeURIComponent(bundleUuid)}/installation-preflight`,
|
|
964
|
+
{ method: "POST", body: JSON.stringify(data) }
|
|
965
|
+
);
|
|
966
|
+
}
|
|
967
|
+
/**
|
|
968
|
+
* Install a published Bundle version into this workspace.
|
|
969
|
+
*
|
|
970
|
+
* A key in `bindings` that this version has no slot or Form item for is
|
|
971
|
+
* refused; a **missing** required slot is not.
|
|
972
|
+
*/
|
|
973
|
+
async installBundle(wid, bundleUuid, data) {
|
|
974
|
+
return this.fetch(
|
|
975
|
+
`w/${encodeURIComponent(wid)}/bundles/${encodeURIComponent(bundleUuid)}/installations`,
|
|
976
|
+
{ method: "POST", body: JSON.stringify(data) }
|
|
977
|
+
);
|
|
978
|
+
}
|
|
979
|
+
/** Every installation this workspace holds, oldest first. */
|
|
980
|
+
async listInstallations(wid) {
|
|
981
|
+
return this.fetch(installationsPath(wid));
|
|
982
|
+
}
|
|
983
|
+
async getInstallation(wid, installationUuid) {
|
|
984
|
+
return this.fetch(installationsPath(wid, installationUuid));
|
|
985
|
+
}
|
|
986
|
+
/**
|
|
987
|
+
* Open slots, bindings whose target no longer resolves, Forms that drifted
|
|
988
|
+
* from their recipe, missing or changed Workflow dependencies, and archived
|
|
989
|
+
* items. Computed on read, never stored.
|
|
990
|
+
*/
|
|
991
|
+
async getInstallationReadiness(wid, installationUuid) {
|
|
992
|
+
return this.fetch(
|
|
993
|
+
installationsPath(wid, installationUuid, "readiness")
|
|
994
|
+
);
|
|
995
|
+
}
|
|
996
|
+
/**
|
|
997
|
+
* What moving to version `to` would change: per-item differences, the slots
|
|
998
|
+
* that would still be unbound, and the release notes of every version in
|
|
999
|
+
* between. `to` must be newer than the version the installation holds.
|
|
1000
|
+
*/
|
|
1001
|
+
async previewInstallationUpgrade(wid, installationUuid, to) {
|
|
1002
|
+
const query = new URLSearchParams({ to: String(to) });
|
|
1003
|
+
return this.fetch(
|
|
1004
|
+
`${installationsPath(wid, installationUuid, "upgrade-preview")}?${query.toString()}`
|
|
1005
|
+
);
|
|
1006
|
+
}
|
|
1007
|
+
/**
|
|
1008
|
+
* Move the installation onto a newer published version. The version it
|
|
1009
|
+
* already holds, and any earlier one, are refused with 409.
|
|
1010
|
+
*/
|
|
1011
|
+
async upgradeInstallation(wid, installationUuid, data) {
|
|
1012
|
+
return this.fetch(installationsPath(wid, installationUuid, "upgrade"), {
|
|
1013
|
+
method: "POST",
|
|
1014
|
+
body: JSON.stringify(data)
|
|
1015
|
+
});
|
|
1016
|
+
}
|
|
1017
|
+
/** Recreate one deleted Form from the version already installed. */
|
|
1018
|
+
async restoreInstallationForm(wid, installationUuid, data) {
|
|
1019
|
+
return this.fetch(
|
|
1020
|
+
installationsPath(wid, installationUuid, "restore-form"),
|
|
1021
|
+
{
|
|
1022
|
+
method: "POST",
|
|
1023
|
+
body: JSON.stringify(data)
|
|
1024
|
+
}
|
|
1025
|
+
);
|
|
1026
|
+
}
|
|
1027
|
+
/** Recreate missing dependency resources for an installed Workflow. */
|
|
1028
|
+
async restoreInstallationWorkflowResources(wid, installationUuid, data) {
|
|
1029
|
+
return this.fetch(
|
|
1030
|
+
installationsPath(wid, installationUuid, "restore-workflow-resources"),
|
|
1031
|
+
{ method: "POST", body: JSON.stringify(data) }
|
|
1032
|
+
);
|
|
1033
|
+
}
|
|
1034
|
+
/** `pinned` holds the installed version; `auto` follows each publication. */
|
|
1035
|
+
async setInstallationPolicy(wid, installationUuid, data) {
|
|
1036
|
+
return this.fetch(installationsPath(wid, installationUuid), {
|
|
1037
|
+
method: "PATCH",
|
|
1038
|
+
body: JSON.stringify(data)
|
|
1039
|
+
});
|
|
1040
|
+
}
|
|
1041
|
+
/** Stop future Bundle updates while keeping the workspace's installed content. */
|
|
1042
|
+
async unsubscribeInstallation(wid, installationUuid) {
|
|
1043
|
+
return this.fetch(
|
|
1044
|
+
installationsPath(wid, installationUuid, "unsubscribe"),
|
|
1045
|
+
{ method: "POST", body: JSON.stringify({}) }
|
|
1046
|
+
);
|
|
1047
|
+
}
|
|
1048
|
+
/** Fill open slots. A slot that already carries a target is refused with 409. */
|
|
1049
|
+
async bindInstallationSlots(wid, installationUuid, data) {
|
|
1050
|
+
return this.fetch(
|
|
1051
|
+
installationsPath(wid, installationUuid, "bindings"),
|
|
1052
|
+
{ method: "POST", body: JSON.stringify(data) }
|
|
1053
|
+
);
|
|
1054
|
+
}
|
|
1055
|
+
/**
|
|
1056
|
+
* Settle an installation left `pending` by an interrupted operation.
|
|
1057
|
+
*
|
|
1058
|
+
* The body is empty and required: a bodyless cookie-auth POST is forgeable
|
|
1059
|
+
* by a cross-site form, so the route demands JSON.
|
|
1060
|
+
*/
|
|
1061
|
+
async reconcileInstallation(wid, installationUuid) {
|
|
1062
|
+
return this.fetch(
|
|
1063
|
+
installationsPath(wid, installationUuid, "reconcile"),
|
|
1064
|
+
{ method: "POST", body: JSON.stringify({}) }
|
|
1065
|
+
);
|
|
1066
|
+
}
|
|
1067
|
+
/**
|
|
1068
|
+
* The settings a compiled theme declares, for labelling a Site item's slots
|
|
1069
|
+
* before any Site exists. 404 for an unknown slug and for `source-site`,
|
|
1070
|
+
* whose schema is a per-workspace build artifact rather than a catalog one.
|
|
1071
|
+
* Requires `sites:read`; no Bundle installation authority is needed.
|
|
1072
|
+
*/
|
|
1073
|
+
async getThemeSettingsSchema(wid, slug) {
|
|
1074
|
+
return this.fetch(
|
|
1075
|
+
`w/${encodeURIComponent(wid)}/themes/${encodeURIComponent(slug)}/settings-schema`
|
|
1076
|
+
);
|
|
1077
|
+
}
|
|
1078
|
+
};
|
|
1079
|
+
|
|
786
1080
|
// src/api/access-grants.ts
|
|
787
1081
|
var AccessGrantsApi = class extends BaseApiClient {
|
|
788
1082
|
/** List access grants received by the current member. */
|
|
@@ -915,7 +1209,6 @@ var AgentsApi = class extends BaseApiClient {
|
|
|
915
1209
|
if (options.search) params.append("search", options.search);
|
|
916
1210
|
if (options.includeArchived)
|
|
917
1211
|
params.append("includeArchived", options.includeArchived.toString());
|
|
918
|
-
if (options.owner) params.append("owner", options.owner);
|
|
919
1212
|
return this.fetch(
|
|
920
1213
|
`w/${wid}/agents${params.toString() ? `?${params.toString()}` : ""}`
|
|
921
1214
|
);
|
|
@@ -971,6 +1264,18 @@ var AIModelsApi = class extends BaseApiClient {
|
|
|
971
1264
|
const url = queryString ? `ai-models/chat?${queryString}` : "ai-models/chat";
|
|
972
1265
|
return this.fetch(url);
|
|
973
1266
|
}
|
|
1267
|
+
/**
|
|
1268
|
+
* Get the models a member may pick for the Workspace Manager, in display
|
|
1269
|
+
* order. Only models this deployment can serve are listed.
|
|
1270
|
+
*
|
|
1271
|
+
* `tokenMultiplier` is each model's input + output price per token relative
|
|
1272
|
+
* to `baselineModelId`; `defaultModelId` is what the Manager runs with no
|
|
1273
|
+
* pick. Send a pick on a Manager chat as `AppContext.managerModel` /
|
|
1274
|
+
* `managerReasoningEffort`.
|
|
1275
|
+
*/
|
|
1276
|
+
async getManagerModels() {
|
|
1277
|
+
return this.fetch("ai-models/manager");
|
|
1278
|
+
}
|
|
974
1279
|
/**
|
|
975
1280
|
* Get available realtime AI models
|
|
976
1281
|
*/
|
|
@@ -1422,6 +1727,19 @@ var AuthApi = class extends BaseApiClient {
|
|
|
1422
1727
|
body: JSON.stringify(request)
|
|
1423
1728
|
});
|
|
1424
1729
|
}
|
|
1730
|
+
/**
|
|
1731
|
+
* Mint a single-use, account-bound realtime login token (`gr_wst_`) with
|
|
1732
|
+
* this client's credential. Call once per realtime connect attempt; the
|
|
1733
|
+
* token is spent on first use and expires in seconds. Only the full browser
|
|
1734
|
+
* session may mint one — an API key is refused.
|
|
1735
|
+
*/
|
|
1736
|
+
async createRealtimeLoginToken() {
|
|
1737
|
+
return this.fetch("auth/realtime/ws-token", {
|
|
1738
|
+
method: "POST",
|
|
1739
|
+
// The route requires a JSON body (its CSRF barrier); it reads nothing from it.
|
|
1740
|
+
body: JSON.stringify({})
|
|
1741
|
+
});
|
|
1742
|
+
}
|
|
1425
1743
|
/** Get the organization and workspace mapping for a custom domain. */
|
|
1426
1744
|
async getDomainMapping(customDomain) {
|
|
1427
1745
|
return this.fetch(`s/mapping/${customDomain}`);
|
|
@@ -2081,6 +2399,26 @@ var ChatsApi = class extends BaseApiClient {
|
|
|
2081
2399
|
async getChat(wid, id) {
|
|
2082
2400
|
return this.fetch(`w/${wid}/chats/${id}`);
|
|
2083
2401
|
}
|
|
2402
|
+
/**
|
|
2403
|
+
* Get a single chat by UUID.
|
|
2404
|
+
*
|
|
2405
|
+
* The uuid-addressed twin of `getChat`: same access check (own chat,
|
|
2406
|
+
* otherwise `chats:read`), same body; a chat the caller may not read is a
|
|
2407
|
+
* 404. Activity events and org webhooks name a chat by `uuid` only.
|
|
2408
|
+
*/
|
|
2409
|
+
async getChatByUuid(wid, uuid) {
|
|
2410
|
+
return this.fetch(`w/${wid}/chats/by-uuid/${uuid}`);
|
|
2411
|
+
}
|
|
2412
|
+
async saveChatBrowserStorage(wid, chatId) {
|
|
2413
|
+
await this.fetchRaw(`w/${wid}/chats/${chatId}/browser/storage/save`, {
|
|
2414
|
+
method: "POST",
|
|
2415
|
+
keepalive: true,
|
|
2416
|
+
body: JSON.stringify({})
|
|
2417
|
+
});
|
|
2418
|
+
}
|
|
2419
|
+
async clearChatBrowserStorage(wid, chatId) {
|
|
2420
|
+
await this.fetchRaw(`w/${wid}/chats/${chatId}/browser/storage`, { method: "DELETE" });
|
|
2421
|
+
}
|
|
2084
2422
|
/**
|
|
2085
2423
|
* Get a short-lived, interactive AgentCore browser view for this Chat.
|
|
2086
2424
|
*
|
|
@@ -2687,10 +3025,18 @@ var DashboardsApi = class extends BaseApiClient {
|
|
|
2687
3025
|
`w/${wid}/dashboards/stats/channels${query ? `?${query}` : ""}`
|
|
2688
3026
|
);
|
|
2689
3027
|
}
|
|
2690
|
-
/**
|
|
2691
|
-
|
|
3028
|
+
/**
|
|
3029
|
+
* Assignment status rollup per root workflow.
|
|
3030
|
+
*
|
|
3031
|
+
* `hours` windows the rollup to runs STARTED within the last N hours.
|
|
3032
|
+
* Omit it (or pass null) for the all-time rollup.
|
|
3033
|
+
*/
|
|
3034
|
+
async getDashboardWorkflowAssignmentStats(wid, options) {
|
|
3035
|
+
const params = new URLSearchParams();
|
|
3036
|
+
if (options?.hours != null) params.append("hours", options.hours.toString());
|
|
3037
|
+
const query = params.toString();
|
|
2692
3038
|
return this.fetch(
|
|
2693
|
-
`w/${wid}/dashboards/stats/workflow-assignments`
|
|
3039
|
+
`w/${wid}/dashboards/stats/workflow-assignments${query ? `?${query}` : ""}`
|
|
2694
3040
|
);
|
|
2695
3041
|
}
|
|
2696
3042
|
/**
|
|
@@ -2832,6 +3178,26 @@ var DataTypesApi = class extends BaseApiClient {
|
|
|
2832
3178
|
`w/${wid}/data-types/${dataTypeId}/records${params?.toString() ? `?${params.toString()}` : ""}`
|
|
2833
3179
|
);
|
|
2834
3180
|
}
|
|
3181
|
+
/**
|
|
3182
|
+
* List an anonymous Form's submissions, newest first. Requires
|
|
3183
|
+
* `anonymous_submissions:read`. Submissions are immutable: there is no
|
|
3184
|
+
* update or delete method.
|
|
3185
|
+
*/
|
|
3186
|
+
async listAnonymousFormSubmissions(wid, dataTypeId, options) {
|
|
3187
|
+
const params = new URLSearchParams();
|
|
3188
|
+
if (options?.page) params.append("page", options.page.toString());
|
|
3189
|
+
if (options?.pageSize) params.append("page_size", options.pageSize.toString());
|
|
3190
|
+
const qs = params.toString();
|
|
3191
|
+
return this.fetch(
|
|
3192
|
+
`w/${wid}/data-types/${dataTypeId}/anonymous-submissions${qs ? `?${qs}` : ""}`
|
|
3193
|
+
);
|
|
3194
|
+
}
|
|
3195
|
+
/** Get one anonymous Form submission by its uuid. Requires `anonymous_submissions:read`. */
|
|
3196
|
+
async getAnonymousFormSubmission(wid, dataTypeId, submissionUuid) {
|
|
3197
|
+
return this.fetch(
|
|
3198
|
+
`w/${wid}/data-types/${dataTypeId}/anonymous-submissions/${encodeURIComponent(submissionUuid)}`
|
|
3199
|
+
);
|
|
3200
|
+
}
|
|
2835
3201
|
// Data-record filter APIs (saved Query IR predicates per form)
|
|
2836
3202
|
/** List saved data-record filters, optionally scoped to one DataType. */
|
|
2837
3203
|
async getDataRecordFilters(wid, options) {
|
|
@@ -2874,6 +3240,15 @@ var DataTypesApi = class extends BaseApiClient {
|
|
|
2874
3240
|
async getDataRecord(wid, recordId) {
|
|
2875
3241
|
return this.fetch(`w/${wid}/data-types/records/${recordId}`);
|
|
2876
3242
|
}
|
|
3243
|
+
/**
|
|
3244
|
+
* Get a single data record by UUID.
|
|
3245
|
+
*
|
|
3246
|
+
* The uuid-addressed twin of `getDataRecord`: same access check, same body.
|
|
3247
|
+
* Activity events and org webhooks name a record by `uuid` only.
|
|
3248
|
+
*/
|
|
3249
|
+
async getDataRecordByUuid(wid, uuid) {
|
|
3250
|
+
return this.fetch(`w/${wid}/data-types/records/by-uuid/${uuid}`);
|
|
3251
|
+
}
|
|
2877
3252
|
/** Create a new data record under the specified data type. */
|
|
2878
3253
|
async createDataRecord(wid, dataTypeId, record) {
|
|
2879
3254
|
return this.fetch(`w/${wid}/data-types/${dataTypeId}/records`, {
|
|
@@ -3418,20 +3793,6 @@ var EventsApi = class extends BaseApiClient {
|
|
|
3418
3793
|
body: JSON.stringify(request)
|
|
3419
3794
|
});
|
|
3420
3795
|
}
|
|
3421
|
-
/**
|
|
3422
|
-
* Preview which target-audience roles lack Workflow USE for the Workflows a
|
|
3423
|
-
* draft Routine would start. Non-persisting, non-blocking authoring assist —
|
|
3424
|
-
* returns warnings only (role/Workflow names + IDs; no Member data).
|
|
3425
|
-
*/
|
|
3426
|
-
async previewRoutineWorkflowAccess(wid, request) {
|
|
3427
|
-
return this.fetch(
|
|
3428
|
-
`w/${wid}/routines/preview-workflow-access`,
|
|
3429
|
-
{
|
|
3430
|
-
method: "POST",
|
|
3431
|
-
body: JSON.stringify(request)
|
|
3432
|
-
}
|
|
3433
|
-
);
|
|
3434
|
-
}
|
|
3435
3796
|
/**
|
|
3436
3797
|
* Preview what would stop a draft Routine placing its scheduled outbound
|
|
3437
3798
|
* calls — the Member voice opt-out, a missing member phone, or a
|
|
@@ -4137,6 +4498,19 @@ var FilesApi = class extends BaseApiClient {
|
|
|
4137
4498
|
if (folderId != null) params.append("folderId", String(folderId));
|
|
4138
4499
|
return this.fetch(`w/${wid}/files/resolve-path?${params.toString()}`);
|
|
4139
4500
|
}
|
|
4501
|
+
/**
|
|
4502
|
+
* Download one file's bytes via GET ``.../files/{id}/contents/{filename}``.
|
|
4503
|
+
*
|
|
4504
|
+
* Uses this client's base URL (FastAPI on the app, same-origin ``/api/v2``
|
|
4505
|
+
* on scoped site sessions) so the payload does not transit the Next.js
|
|
4506
|
+
* ``/api/w/.../files/...`` Lambda proxy, which 500s above the 6MB sync cap.
|
|
4507
|
+
*/
|
|
4508
|
+
async downloadFileContents(wid, id, filename) {
|
|
4509
|
+
const response = await this.fetchRaw(
|
|
4510
|
+
`w/${wid}/files/${id}/contents/${encodeURIComponent(filename)}`
|
|
4511
|
+
);
|
|
4512
|
+
return response.blob();
|
|
4513
|
+
}
|
|
4140
4514
|
/**
|
|
4141
4515
|
* Download the given files + folders (folders recursively) as a single ZIP.
|
|
4142
4516
|
* Returns the raw archive bytes for the caller to save.
|
|
@@ -4888,7 +5262,21 @@ function throwMemberImportError(errorBody, fallback) {
|
|
|
4888
5262
|
}
|
|
4889
5263
|
throw new Error(typeof detail === "string" ? detail : fallback);
|
|
4890
5264
|
}
|
|
5265
|
+
function memberImportUpload(file, roleId, options) {
|
|
5266
|
+
const body = new FormData();
|
|
5267
|
+
const filename = "name" in file && typeof file.name === "string" ? file.name : "members.csv";
|
|
5268
|
+
body.append("file", file, filename);
|
|
5269
|
+
if (options?.resolutions !== void 0) {
|
|
5270
|
+
body.append("resolutions", JSON.stringify(options.resolutions));
|
|
5271
|
+
}
|
|
5272
|
+
const params = new URLSearchParams({ new_member_role_id: String(roleId) });
|
|
5273
|
+
if (options?.autoPromoteUniqueContacts !== void 0) {
|
|
5274
|
+
params.set("auto_promote_unique_contacts", String(options.autoPromoteUniqueContacts));
|
|
5275
|
+
}
|
|
5276
|
+
return { body, params };
|
|
5277
|
+
}
|
|
4891
5278
|
var MembersApi = class extends BaseApiClient {
|
|
5279
|
+
memberImportPlans = /* @__PURE__ */ new WeakMap();
|
|
4892
5280
|
/** Get the currently authenticated member for a workspace. */
|
|
4893
5281
|
async getCurrentMember(wid) {
|
|
4894
5282
|
return this.fetch(`w/${wid}/me`);
|
|
@@ -4941,33 +5329,6 @@ var MembersApi = class extends BaseApiClient {
|
|
|
4941
5329
|
`w/${wid}/me/records?${params.toString()}`
|
|
4942
5330
|
);
|
|
4943
5331
|
}
|
|
4944
|
-
/**
|
|
4945
|
-
* Get all members owned by the current member in this workspace.
|
|
4946
|
-
* Returns the authenticated member plus any members they own (via owner_id).
|
|
4947
|
-
* Used by the member switcher to show available identities.
|
|
4948
|
-
*/
|
|
4949
|
-
async getOwnedMembers(wid) {
|
|
4950
|
-
return this.fetch(`w/${wid}/members/owned`);
|
|
4951
|
-
}
|
|
4952
|
-
/**
|
|
4953
|
-
* Switch to a different member identity owned by the current member.
|
|
4954
|
-
* Sets the actingAsMemberUuid cookie for subsequent requests.
|
|
4955
|
-
* Uses UUID (not ID) to prevent cross-workspace identity confusion.
|
|
4956
|
-
*/
|
|
4957
|
-
async switchMember(wid, memberUuid) {
|
|
4958
|
-
return this.fetch(`w/${wid}/members/switch`, {
|
|
4959
|
-
method: "POST",
|
|
4960
|
-
body: JSON.stringify({ memberUuid })
|
|
4961
|
-
});
|
|
4962
|
-
}
|
|
4963
|
-
/**
|
|
4964
|
-
* Clear the member switch and return to the authenticated member.
|
|
4965
|
-
*/
|
|
4966
|
-
async clearMemberSwitch(wid) {
|
|
4967
|
-
return this.fetch(`w/${wid}/members/switch`, {
|
|
4968
|
-
method: "DELETE"
|
|
4969
|
-
});
|
|
4970
|
-
}
|
|
4971
5332
|
/** Update the currently authenticated member's profile. */
|
|
4972
5333
|
async updateCurrentMember(wid, member) {
|
|
4973
5334
|
return this.fetch(`w/${wid}/me`, {
|
|
@@ -5007,6 +5368,16 @@ var MembersApi = class extends BaseApiClient {
|
|
|
5007
5368
|
async getWorkspaceMember(wid, memberId) {
|
|
5008
5369
|
return this.fetch(`w/${wid}/members/${memberId}`);
|
|
5009
5370
|
}
|
|
5371
|
+
/**
|
|
5372
|
+
* Get a single workspace member by UUID.
|
|
5373
|
+
*
|
|
5374
|
+
* The uuid-addressed twin of `getWorkspaceMember`: same access check (self,
|
|
5375
|
+
* otherwise `members:read`), same body. Activity events and org webhooks
|
|
5376
|
+
* name a member by `uuid` only.
|
|
5377
|
+
*/
|
|
5378
|
+
async getMemberByUuid(wid, uuid) {
|
|
5379
|
+
return this.fetch(`w/${wid}/members/by-uuid/${uuid}`);
|
|
5380
|
+
}
|
|
5010
5381
|
/**
|
|
5011
5382
|
* Get one member of an org's workspace, under `org:read`.
|
|
5012
5383
|
*
|
|
@@ -5058,6 +5429,53 @@ var MembersApi = class extends BaseApiClient {
|
|
|
5058
5429
|
method: "POST"
|
|
5059
5430
|
});
|
|
5060
5431
|
}
|
|
5432
|
+
/**
|
|
5433
|
+
* Update a workspace member addressed by its external id.
|
|
5434
|
+
*
|
|
5435
|
+
* The external-id twin of `updateMember`: for an integrator that keys on its
|
|
5436
|
+
* own `externalId` and never stores our numeric member id. Same authorization
|
|
5437
|
+
* (`members:write`) and same body as `updateMember`.
|
|
5438
|
+
*/
|
|
5439
|
+
async updateMemberByExternalId(wid, externalId, data) {
|
|
5440
|
+
return this.fetch(
|
|
5441
|
+
`w/${wid}/members/by-external-id/${encodeURIComponent(externalId)}`,
|
|
5442
|
+
{
|
|
5443
|
+
method: "PUT",
|
|
5444
|
+
body: JSON.stringify(data)
|
|
5445
|
+
}
|
|
5446
|
+
);
|
|
5447
|
+
}
|
|
5448
|
+
/**
|
|
5449
|
+
* Archive a workspace member addressed by its external id.
|
|
5450
|
+
*
|
|
5451
|
+
* The external-id twin of `archiveMember`; same authorization
|
|
5452
|
+
* (`members:write` + `members:admin`) and same body.
|
|
5453
|
+
*/
|
|
5454
|
+
async archiveMemberByExternalId(wid, externalId) {
|
|
5455
|
+
return this.fetch(
|
|
5456
|
+
`w/${wid}/members/by-external-id/${encodeURIComponent(externalId)}/archive`,
|
|
5457
|
+
{
|
|
5458
|
+
method: "POST",
|
|
5459
|
+
// Required empty JSON body is the route's CSRF barrier (GRA-6284).
|
|
5460
|
+
body: JSON.stringify({})
|
|
5461
|
+
}
|
|
5462
|
+
);
|
|
5463
|
+
}
|
|
5464
|
+
/**
|
|
5465
|
+
* Unarchive a workspace member addressed by its external id.
|
|
5466
|
+
*
|
|
5467
|
+
* The external-id twin of `unarchiveMember`; same authorization and body.
|
|
5468
|
+
*/
|
|
5469
|
+
async unarchiveMemberByExternalId(wid, externalId) {
|
|
5470
|
+
return this.fetch(
|
|
5471
|
+
`w/${wid}/members/by-external-id/${encodeURIComponent(externalId)}/unarchive`,
|
|
5472
|
+
{
|
|
5473
|
+
method: "POST",
|
|
5474
|
+
// Required empty JSON body is the route's CSRF barrier (GRA-6284).
|
|
5475
|
+
body: JSON.stringify({})
|
|
5476
|
+
}
|
|
5477
|
+
);
|
|
5478
|
+
}
|
|
5061
5479
|
/**
|
|
5062
5480
|
* Send the member an SMS asking them to confirm their phone number. When they
|
|
5063
5481
|
* reply, a trusted phone auth binding is created so they can use SMS as
|
|
@@ -5199,16 +5617,13 @@ var MembersApi = class extends BaseApiClient {
|
|
|
5199
5617
|
* operator can decide whether to skip or explicitly overwrite before
|
|
5200
5618
|
* committing. Requires MEMBERS_ADMIN and is bulk-PHI audited server-side.
|
|
5201
5619
|
*/
|
|
5202
|
-
async previewImportMembers(wid, file, newMemberRoleId) {
|
|
5203
|
-
const
|
|
5204
|
-
formData.append("file", file);
|
|
5205
|
-
const params = new URLSearchParams();
|
|
5206
|
-
params.append("new_member_role_id", newMemberRoleId.toString());
|
|
5620
|
+
async previewImportMembers(wid, file, newMemberRoleId, options) {
|
|
5621
|
+
const { body, params } = memberImportUpload(file, newMemberRoleId, options);
|
|
5207
5622
|
const response = await this.fetchRaw(
|
|
5208
5623
|
`w/${wid}/members/import/preview?${params.toString()}`,
|
|
5209
5624
|
{
|
|
5210
5625
|
method: "POST",
|
|
5211
|
-
body
|
|
5626
|
+
body
|
|
5212
5627
|
},
|
|
5213
5628
|
[400, 413]
|
|
5214
5629
|
);
|
|
@@ -5216,7 +5631,19 @@ var MembersApi = class extends BaseApiClient {
|
|
|
5216
5631
|
const error = await response.json().catch(() => ({}));
|
|
5217
5632
|
throwMemberImportError(error, "Import preview failed");
|
|
5218
5633
|
}
|
|
5219
|
-
|
|
5634
|
+
const preview = await response.json();
|
|
5635
|
+
if (preview.previewPlanToken) {
|
|
5636
|
+
this.memberImportPlans.set(file, {
|
|
5637
|
+
wid,
|
|
5638
|
+
role: newMemberRoleId,
|
|
5639
|
+
autoPromote: options?.autoPromoteUniqueContacts ?? true,
|
|
5640
|
+
token: preview.previewPlanToken,
|
|
5641
|
+
cachedAt: Date.now()
|
|
5642
|
+
});
|
|
5643
|
+
} else {
|
|
5644
|
+
this.memberImportPlans.delete(file);
|
|
5645
|
+
}
|
|
5646
|
+
return preview;
|
|
5220
5647
|
}
|
|
5221
5648
|
/**
|
|
5222
5649
|
* Import members from a CSV file, streaming progress updates via callback.
|
|
@@ -5226,10 +5653,11 @@ var MembersApi = class extends BaseApiClient {
|
|
|
5226
5653
|
* Send 'overwrite_identity_fields' only after the operator confirms a preview.
|
|
5227
5654
|
*/
|
|
5228
5655
|
async importMembers(wid, file, newMemberRoleId, onProgress, options) {
|
|
5229
|
-
const
|
|
5230
|
-
|
|
5231
|
-
const
|
|
5232
|
-
|
|
5656
|
+
const { body, params } = memberImportUpload(file, newMemberRoleId, options);
|
|
5657
|
+
const cachedPlan = this.memberImportPlans.get(file);
|
|
5658
|
+
const autoPromote = options?.autoPromoteUniqueContacts ?? true;
|
|
5659
|
+
const previewPlanToken = options?.previewPlanToken ?? (cachedPlan?.wid === wid && cachedPlan.role === newMemberRoleId && cachedPlan.autoPromote === autoPromote && Date.now() - cachedPlan.cachedAt < 55 * 60 * 1e3 ? cachedPlan.token : (await this.previewImportMembers(wid, file, newMemberRoleId, options)).previewPlanToken);
|
|
5660
|
+
if (previewPlanToken) body.append("previewPlanToken", previewPlanToken);
|
|
5233
5661
|
if (options?.identityConflictPolicy) {
|
|
5234
5662
|
params.append("identity_conflict_policy", options.identityConflictPolicy);
|
|
5235
5663
|
}
|
|
@@ -5237,7 +5665,7 @@ var MembersApi = class extends BaseApiClient {
|
|
|
5237
5665
|
`w/${wid}/members/import?${params.toString()}`,
|
|
5238
5666
|
{
|
|
5239
5667
|
method: "POST",
|
|
5240
|
-
body
|
|
5668
|
+
body
|
|
5241
5669
|
},
|
|
5242
5670
|
[400, 413]
|
|
5243
5671
|
);
|
|
@@ -5245,34 +5673,48 @@ var MembersApi = class extends BaseApiClient {
|
|
|
5245
5673
|
const error = await response.json().catch(() => ({}));
|
|
5246
5674
|
throwMemberImportError(error, "Import failed");
|
|
5247
5675
|
}
|
|
5248
|
-
if (
|
|
5249
|
-
|
|
5250
|
-
|
|
5251
|
-
|
|
5676
|
+
if (!response.body) throw new Error("Member import response has no progress stream");
|
|
5677
|
+
const reader = response.body.getReader();
|
|
5678
|
+
const decoder = new TextDecoder();
|
|
5679
|
+
let buffer = "";
|
|
5680
|
+
let result;
|
|
5681
|
+
let hadError = false;
|
|
5682
|
+
const consume = (line) => {
|
|
5683
|
+
if (!line.trim()) return;
|
|
5684
|
+
let event;
|
|
5685
|
+
try {
|
|
5686
|
+
event = JSON.parse(line);
|
|
5687
|
+
} catch {
|
|
5688
|
+
throw new Error("Invalid member import progress event");
|
|
5689
|
+
}
|
|
5690
|
+
if (event.type === "complete") result = event;
|
|
5691
|
+
if (event.type === "error") hadError = true;
|
|
5692
|
+
onProgress?.(event);
|
|
5693
|
+
};
|
|
5694
|
+
try {
|
|
5252
5695
|
while (true) {
|
|
5253
5696
|
const { done, value } = await reader.read();
|
|
5254
5697
|
if (done) break;
|
|
5255
5698
|
buffer += decoder.decode(value, { stream: true });
|
|
5256
5699
|
const lines = buffer.split("\n");
|
|
5257
5700
|
buffer = lines.pop() ?? "";
|
|
5258
|
-
for (const line of lines)
|
|
5259
|
-
const trimmed = line.trim();
|
|
5260
|
-
if (!trimmed) continue;
|
|
5261
|
-
try {
|
|
5262
|
-
onProgress(JSON.parse(trimmed));
|
|
5263
|
-
} catch {
|
|
5264
|
-
}
|
|
5265
|
-
}
|
|
5266
|
-
}
|
|
5267
|
-
const tail = buffer.trim();
|
|
5268
|
-
if (tail) {
|
|
5269
|
-
try {
|
|
5270
|
-
onProgress(JSON.parse(tail));
|
|
5271
|
-
} catch {
|
|
5272
|
-
}
|
|
5701
|
+
for (const line of lines) consume(line);
|
|
5273
5702
|
}
|
|
5703
|
+
buffer += decoder.decode();
|
|
5704
|
+
consume(buffer);
|
|
5705
|
+
} catch (error) {
|
|
5706
|
+
await reader.cancel().catch(() => void 0);
|
|
5707
|
+
throw error;
|
|
5708
|
+
} finally {
|
|
5709
|
+
reader.releaseLock();
|
|
5274
5710
|
}
|
|
5275
|
-
|
|
5711
|
+
if (!result) {
|
|
5712
|
+
throw new Error("Member import ended before completion; inspect members before retrying");
|
|
5713
|
+
}
|
|
5714
|
+
return {
|
|
5715
|
+
success: !hadError && (result.failed ?? 0) === 0 && (result.conflicted ?? 0) === 0,
|
|
5716
|
+
result
|
|
5717
|
+
};
|
|
5276
5718
|
}
|
|
5277
5719
|
/** Export members as a downloadable file with selected fields and data types. */
|
|
5278
5720
|
async exportMembers(wid, selectedFields, selectedDataTypes, memberType) {
|
|
@@ -5928,6 +6370,21 @@ var MondayIntegrationApi = class extends BaseApiClient {
|
|
|
5928
6370
|
method: "POST"
|
|
5929
6371
|
});
|
|
5930
6372
|
}
|
|
6373
|
+
/**
|
|
6374
|
+
* Managed-rule execution history for this connection (`GET /sync/logs`):
|
|
6375
|
+
* the connection's managed EventRule executions, newest first, with the
|
|
6376
|
+
* shared cursor pagination. Requires `apps:read`; works while the
|
|
6377
|
+
* connection is parked for re-authorization.
|
|
6378
|
+
*/
|
|
6379
|
+
async getMondaySyncLogs(wid, params) {
|
|
6380
|
+
const query = new URLSearchParams();
|
|
6381
|
+
if (params?.pageSize) query.set("pageSize", String(params.pageSize));
|
|
6382
|
+
if (params?.cursor) query.set("cursor", params.cursor);
|
|
6383
|
+
const qs = query.toString() ? `?${query.toString()}` : "";
|
|
6384
|
+
return this.fetch(
|
|
6385
|
+
`w/${wid}/app-connections/monday/sync/logs${qs}`
|
|
6386
|
+
);
|
|
6387
|
+
}
|
|
5931
6388
|
};
|
|
5932
6389
|
|
|
5933
6390
|
// src/api/intervention-requests.ts
|
|
@@ -6085,6 +6542,10 @@ var OrgApi = class extends BaseApiClient {
|
|
|
6085
6542
|
async getCurrentOrgMember(orgIdOrUuid) {
|
|
6086
6543
|
return this.fetch(`o/${orgIdOrUuid}/me`);
|
|
6087
6544
|
}
|
|
6545
|
+
/** Bundles this organization owns — read-only catalog for `/o/{uuid}/library`. */
|
|
6546
|
+
async listOrgBundles(orgIdOrUuid) {
|
|
6547
|
+
return this.fetch(`o/${orgIdOrUuid}/bundles`);
|
|
6548
|
+
}
|
|
6088
6549
|
/**
|
|
6089
6550
|
* Update the settings an org admin owns: name, slug and contact details.
|
|
6090
6551
|
*
|
|
@@ -6126,6 +6587,12 @@ var OrgApi = class extends BaseApiClient {
|
|
|
6126
6587
|
* `subscriptionId` is the org-scoped row — never pick the customer's
|
|
6127
6588
|
* newest subscription from the list endpoint. One customer can bill many
|
|
6128
6589
|
* organizations.
|
|
6590
|
+
*
|
|
6591
|
+
* Returns the generated `OrgBillingCustomerResponse` — the contract the
|
|
6592
|
+
* route actually emits, `audiences` included. The hand-written mirror that
|
|
6593
|
+
* used to live here listed four fields and silently dropped `audiences`,
|
|
6594
|
+
* so callers could not see the commercial roles they hold (GRA-8792).
|
|
6595
|
+
* Regenerate the shape (`yarn generate:types`) rather than re-declaring it.
|
|
6129
6596
|
*/
|
|
6130
6597
|
async getOrgBillingCustomer(orgIdOrUuid) {
|
|
6131
6598
|
return this.fetch(`o/${orgIdOrUuid}/billing-customer`);
|
|
@@ -6162,7 +6629,10 @@ var OrgApi = class extends BaseApiClient {
|
|
|
6162
6629
|
return this.fetch(`o/${orgUuid}/members/check/${accountUuid}`);
|
|
6163
6630
|
}
|
|
6164
6631
|
/**
|
|
6165
|
-
* Update an organization member's role.
|
|
6632
|
+
* Update an organization member's role and/or org-level display name.
|
|
6633
|
+
*
|
|
6634
|
+
* `name` is the org's own label for the member (the OrgMember row and the
|
|
6635
|
+
* linked OrgAccount); it does not change the person's global Account name.
|
|
6166
6636
|
*/
|
|
6167
6637
|
async updateOrganizationMember(orgIdOrUuid, memberId, data) {
|
|
6168
6638
|
return this.fetch(`o/${orgIdOrUuid}/members/${memberId}`, {
|
|
@@ -6537,12 +7007,6 @@ var OrgApi = class extends BaseApiClient {
|
|
|
6537
7007
|
// ============================================================================
|
|
6538
7008
|
// Organization A2P Brand Registration API
|
|
6539
7009
|
// ============================================================================
|
|
6540
|
-
/**
|
|
6541
|
-
* Get the org's A2P brand registration status.
|
|
6542
|
-
*/
|
|
6543
|
-
async getA2PStatus(orgUuid) {
|
|
6544
|
-
return this.fetch(`o/${orgUuid}/phone-numbers/a2p/status`);
|
|
6545
|
-
}
|
|
6546
7010
|
/** Return fixed phone-number and outbound-messaging prices. */
|
|
6547
7011
|
async getPhoneBillingPricing(orgUuid) {
|
|
6548
7012
|
return this.fetch(`o/${orgUuid}/phone-numbers/pricing`);
|
|
@@ -6551,11 +7015,30 @@ var OrgApi = class extends BaseApiClient {
|
|
|
6551
7015
|
* Start A2P brand registration under a legal entity. `legalEntityUuid`
|
|
6552
7016
|
* is required — brands register per legal entity (Customer Profile);
|
|
6553
7017
|
* there is no primary-entity fallback.
|
|
7018
|
+
*
|
|
7019
|
+
* `soleProprietorMobile` is the proprietor's own mobile number, the one the
|
|
7020
|
+
* carrier sends the A2P one-time-password verification to. Required when the
|
|
7021
|
+
* entity's registration shape is a sole proprietorship (see
|
|
7022
|
+
* `LegalEntitySummaryResponse.requiredBrandType`); ignored otherwise.
|
|
7023
|
+
*
|
|
7024
|
+
* Three constraints belong to the customer, so the caller must state them:
|
|
7025
|
+
* it has to be a US or Canadian **mobile**, it cannot be a number acquired
|
|
7026
|
+
* from a CPaaS provider (so never one we provisioned — the carrier rejects
|
|
7027
|
+
* it), and the carrier allows it a lifetime maximum of three uses across all
|
|
7028
|
+
* A2P brand registrations, counting those made through other vendors.
|
|
7029
|
+
*
|
|
7030
|
+
* It is forwarded to the registration workflow to reach the carrier as an
|
|
7031
|
+
* EndUser attribute and is never stored on our side.
|
|
6554
7032
|
*/
|
|
6555
|
-
async startA2PRegistration(orgUuid, legalEntityUuid, brandName, brandUuid = null) {
|
|
7033
|
+
async startA2PRegistration(orgUuid, legalEntityUuid, brandName, brandUuid = null, soleProprietorMobile = null) {
|
|
6556
7034
|
return this.fetch(`o/${orgUuid}/phone-numbers/a2p/start`, {
|
|
6557
7035
|
method: "POST",
|
|
6558
|
-
body: JSON.stringify({
|
|
7036
|
+
body: JSON.stringify({
|
|
7037
|
+
legalEntityUuid,
|
|
7038
|
+
brandName,
|
|
7039
|
+
brandUuid,
|
|
7040
|
+
soleProprietorMobile
|
|
7041
|
+
})
|
|
6559
7042
|
});
|
|
6560
7043
|
}
|
|
6561
7044
|
/**
|
|
@@ -6583,6 +7066,25 @@ var OrgApi = class extends BaseApiClient {
|
|
|
6583
7066
|
}
|
|
6584
7067
|
);
|
|
6585
7068
|
}
|
|
7069
|
+
/**
|
|
7070
|
+
* Which legal entity's voice trust products (CNAM, SHAKEN/STIR, Voice
|
|
7071
|
+
* Integrity) each of the org's numbers carries, read live from Twilio.
|
|
7072
|
+
*/
|
|
7073
|
+
async getPhoneVoiceTrust(orgUuid) {
|
|
7074
|
+
return this.fetch(`o/${orgUuid}/phone-numbers/voice-trust`);
|
|
7075
|
+
}
|
|
7076
|
+
/**
|
|
7077
|
+
* Put a number on a legal entity's Customer Profile and approved voice
|
|
7078
|
+
* trust products, taking it off any other legal entity's first. The
|
|
7079
|
+
* entity's business profile must be approved (400 otherwise).
|
|
7080
|
+
*/
|
|
7081
|
+
async attachPhoneVoiceTrust(orgUuid, providerPhoneUuid, legalEntityUuid) {
|
|
7082
|
+
const body = { providerPhoneUuid, legalEntityUuid };
|
|
7083
|
+
return this.fetch(`o/${orgUuid}/phone-numbers/voice-trust/attach`, {
|
|
7084
|
+
method: "POST",
|
|
7085
|
+
body: JSON.stringify(body)
|
|
7086
|
+
});
|
|
7087
|
+
}
|
|
6586
7088
|
// ============================================================================
|
|
6587
7089
|
// Organization Business Profile API (Twilio Trust Hub Secondary CP)
|
|
6588
7090
|
// ============================================================================
|
|
@@ -6752,6 +7254,16 @@ var OrgApi = class extends BaseApiClient {
|
|
|
6752
7254
|
}
|
|
6753
7255
|
);
|
|
6754
7256
|
}
|
|
7257
|
+
/**
|
|
7258
|
+
* Resubmit a campaign the carrier rejected, with the brand's current
|
|
7259
|
+
* campaign copy. Edits the campaign in place, so no second vetting fee.
|
|
7260
|
+
*/
|
|
7261
|
+
async resubmitA2PCampaign(orgUuid, brandUuid) {
|
|
7262
|
+
return this.fetch(
|
|
7263
|
+
`o/${orgUuid}/a2p-brands/${brandUuid}/resubmit-campaign`,
|
|
7264
|
+
{ method: "POST" }
|
|
7265
|
+
);
|
|
7266
|
+
}
|
|
6755
7267
|
/**
|
|
6756
7268
|
* Published Sites across the org's workspaces that can be linked as this
|
|
6757
7269
|
* brand's enrollment (opt-in) surface. Org-authorized, so it works even when
|
|
@@ -6764,7 +7276,7 @@ var OrgApi = class extends BaseApiClient {
|
|
|
6764
7276
|
}
|
|
6765
7277
|
/**
|
|
6766
7278
|
* Link the brand to a published enrollment Site (sets `site_uuid`). Returns
|
|
6767
|
-
* the refreshed campaign config
|
|
7279
|
+
* the refreshed campaign config.
|
|
6768
7280
|
*/
|
|
6769
7281
|
async linkA2PEnrollmentSite(orgUuid, brandUuid, data) {
|
|
6770
7282
|
return this.fetch(
|
|
@@ -6777,9 +7289,9 @@ var OrgApi = class extends BaseApiClient {
|
|
|
6777
7289
|
}
|
|
6778
7290
|
/**
|
|
6779
7291
|
* Provision (or reuse) a patient-enrollment Site for the brand and link it —
|
|
6780
|
-
* the
|
|
6781
|
-
* only when the org has multiple
|
|
6782
|
-
*
|
|
7292
|
+
* the explicit counterpart to the automatic provisioning at brand
|
|
7293
|
+
* registration. `workspaceUuid` is required only when the org has multiple
|
|
7294
|
+
* workspaces. Returns the refreshed campaign config. Idempotent.
|
|
6783
7295
|
*/
|
|
6784
7296
|
async provisionA2PEnrollmentSite(orgUuid, brandUuid, data = {}) {
|
|
6785
7297
|
return this.fetch(
|
|
@@ -6798,34 +7310,42 @@ var OrgApi = class extends BaseApiClient {
|
|
|
6798
7310
|
);
|
|
6799
7311
|
}
|
|
6800
7312
|
/**
|
|
6801
|
-
*
|
|
6802
|
-
*
|
|
6803
|
-
*
|
|
6804
|
-
* to get a patient-ready link instead.
|
|
7313
|
+
* Stage one A2P opt-in evidence file: get a presigned POST to send the bytes
|
|
7314
|
+
* straight to storage. Nothing is recorded on the brand until
|
|
7315
|
+
* {@link registerA2PEvidenceUpload} reads the object back and normalizes it.
|
|
6805
7316
|
*/
|
|
6806
|
-
async
|
|
7317
|
+
async createA2PEvidenceUploadUrl(orgUuid, brandUuid, data) {
|
|
6807
7318
|
return this.fetch(
|
|
6808
|
-
`o/${orgUuid}/a2p-brands/${brandUuid}/
|
|
7319
|
+
`o/${orgUuid}/a2p-brands/${brandUuid}/evidence-attachments/upload-url`,
|
|
7320
|
+
{
|
|
7321
|
+
method: "POST",
|
|
7322
|
+
body: JSON.stringify(data)
|
|
7323
|
+
}
|
|
6809
7324
|
);
|
|
6810
7325
|
}
|
|
6811
7326
|
/**
|
|
6812
|
-
*
|
|
6813
|
-
*
|
|
6814
|
-
*
|
|
6815
|
-
* the member that `externalId` resolves to. `externalId` (the patient's
|
|
6816
|
-
* CRM/EHR identifier) travels in the request body, never the query string,
|
|
6817
|
-
* so it stays out of access logs. When it matches no member, the
|
|
6818
|
-
* credential-free template URL is returned rather than an error.
|
|
7327
|
+
* Normalize a staged evidence upload and record it on the brand. Returns the
|
|
7328
|
+
* refreshed campaign config, so the editor's evidence list updates without a
|
|
7329
|
+
* second round trip.
|
|
6819
7330
|
*/
|
|
6820
|
-
async
|
|
7331
|
+
async registerA2PEvidenceUpload(orgUuid, brandUuid, data) {
|
|
6821
7332
|
return this.fetch(
|
|
6822
|
-
`o/${orgUuid}/a2p-brands/${brandUuid}/
|
|
7333
|
+
`o/${orgUuid}/a2p-brands/${brandUuid}/evidence-attachments`,
|
|
6823
7334
|
{
|
|
6824
7335
|
method: "POST",
|
|
6825
|
-
body: JSON.stringify(
|
|
7336
|
+
body: JSON.stringify(data)
|
|
6826
7337
|
}
|
|
6827
7338
|
);
|
|
6828
7339
|
}
|
|
7340
|
+
/** Remove one uploaded evidence artifact. */
|
|
7341
|
+
async deleteA2PEvidenceUpload(orgUuid, brandUuid, attachmentUuid) {
|
|
7342
|
+
return this.fetch(
|
|
7343
|
+
`o/${orgUuid}/a2p-brands/${brandUuid}/evidence-attachments/${encodeURIComponent(
|
|
7344
|
+
attachmentUuid
|
|
7345
|
+
)}`,
|
|
7346
|
+
{ method: "DELETE" }
|
|
7347
|
+
);
|
|
7348
|
+
}
|
|
6829
7349
|
/**
|
|
6830
7350
|
* List available member roles for a workspace in the organization.
|
|
6831
7351
|
*/
|
|
@@ -6850,6 +7370,9 @@ var OrgApi = class extends BaseApiClient {
|
|
|
6850
7370
|
async listOrgWebhookEndpoints(orgIdOrUuid) {
|
|
6851
7371
|
return this.fetch(`o/${orgIdOrUuid}/webhooks`);
|
|
6852
7372
|
}
|
|
7373
|
+
async getOrgWebhookEndpoint(orgIdOrUuid, endpointUuid) {
|
|
7374
|
+
return this.fetch(`o/${orgIdOrUuid}/webhooks/${endpointUuid}`);
|
|
7375
|
+
}
|
|
6853
7376
|
/**
|
|
6854
7377
|
* The subscribable event-type vocabulary for the org UI's event-type
|
|
6855
7378
|
* picker — exactly what the create/update validators accept, so the UI
|
|
@@ -6908,6 +7431,39 @@ var OrgApi = class extends BaseApiClient {
|
|
|
6908
7431
|
}
|
|
6909
7432
|
);
|
|
6910
7433
|
}
|
|
7434
|
+
// =========================================================================
|
|
7435
|
+
// Organization API keys (GRA-9043)
|
|
7436
|
+
// =========================================================================
|
|
7437
|
+
/**
|
|
7438
|
+
* List every API key bound to this organization. Never carries the secret.
|
|
7439
|
+
*
|
|
7440
|
+
* Org-bound keys authenticate as an org-local principal, so one key reaches
|
|
7441
|
+
* every current workspace of the organization and every workspace created
|
|
7442
|
+
* later. Gated by `org:api_keys`, which `org:admin` holds transitively.
|
|
7443
|
+
*/
|
|
7444
|
+
async listOrgApiKeys(orgIdOrUuid) {
|
|
7445
|
+
return this.fetch(`o/${orgIdOrUuid}/api-keys`);
|
|
7446
|
+
}
|
|
7447
|
+
/**
|
|
7448
|
+
* Mint an org-bound API key.
|
|
7449
|
+
*
|
|
7450
|
+
* The payload is the same client-only {@link ApiKeyFormData} the workspace
|
|
7451
|
+
* and account routes take — `{name, expiresInDays, scopes}`, no workspace
|
|
7452
|
+
* id: the mint location is what binds the key. The response carries `key`,
|
|
7453
|
+
* the plaintext secret, which is readable exactly once.
|
|
7454
|
+
*/
|
|
7455
|
+
async createOrgApiKey(orgIdOrUuid, apiKey) {
|
|
7456
|
+
return this.fetch(`o/${orgIdOrUuid}/api-keys`, {
|
|
7457
|
+
method: "POST",
|
|
7458
|
+
body: JSON.stringify(apiKey)
|
|
7459
|
+
});
|
|
7460
|
+
}
|
|
7461
|
+
/** Revoke an org-bound API key by its id. */
|
|
7462
|
+
async revokeOrgApiKey(orgIdOrUuid, keyId) {
|
|
7463
|
+
return this.fetch(`o/${orgIdOrUuid}/api-keys/${keyId}`, {
|
|
7464
|
+
method: "DELETE"
|
|
7465
|
+
});
|
|
7466
|
+
}
|
|
6911
7467
|
};
|
|
6912
7468
|
function businessProfilePath(orgUuid, legalEntityUuid) {
|
|
6913
7469
|
return legalEntityUuid ? `o/${orgUuid}/legal-entities/${legalEntityUuid}/business-profile` : `o/${orgUuid}/business-profile`;
|
|
@@ -7542,6 +8098,14 @@ var QualificationsApi = class extends BaseApiClient {
|
|
|
7542
8098
|
});
|
|
7543
8099
|
}
|
|
7544
8100
|
// ===== Test chat runs =====
|
|
8101
|
+
/**
|
|
8102
|
+
* List a Workflow's test chat runs, newest first (default 50, max 500).
|
|
8103
|
+
*
|
|
8104
|
+
* `workflowRevisionId` narrows to that revision before the limit applies.
|
|
8105
|
+
* `includeEarlierRevisions` widens the window to earlier published
|
|
8106
|
+
* revisions and runs whose revision was deleted, and requires
|
|
8107
|
+
* `workflowRevisionId`. Omitting both keeps the unfiltered list.
|
|
8108
|
+
*/
|
|
7545
8109
|
async listTestChatRuns(wid, workflowId, params) {
|
|
7546
8110
|
const query = new URLSearchParams();
|
|
7547
8111
|
if (params?.scenarioId !== void 0) query.set("scenarioId", String(params.scenarioId));
|
|
@@ -7549,11 +8113,36 @@ var QualificationsApi = class extends BaseApiClient {
|
|
|
7549
8113
|
query.set("assistantChatModelId", params.assistantChatModelId);
|
|
7550
8114
|
}
|
|
7551
8115
|
if (params?.limit !== void 0) query.set("limit", String(params.limit));
|
|
8116
|
+
if (params?.workflowRevisionId !== void 0) {
|
|
8117
|
+
query.set("workflow_revision_id", String(params.workflowRevisionId));
|
|
8118
|
+
}
|
|
8119
|
+
if (params?.includeEarlierRevisions !== void 0) {
|
|
8120
|
+
query.set("include_earlier_revisions", String(params.includeEarlierRevisions));
|
|
8121
|
+
}
|
|
7552
8122
|
const qs = query.toString() ? `?${query.toString()}` : "";
|
|
7553
8123
|
return this.fetch(
|
|
7554
8124
|
`w/${wid}/qualifications/workflows/${workflowId}/test-chat-runs${qs}`
|
|
7555
8125
|
);
|
|
7556
8126
|
}
|
|
8127
|
+
/**
|
|
8128
|
+
* Exact scenario health for one revision of a Workflow: every active
|
|
8129
|
+
* scenario's server-decided state, caption, counts and per-revision pass
|
|
8130
|
+
* rates, plus the board headline. Scenarios arrive in board order.
|
|
8131
|
+
*
|
|
8132
|
+
* Omit `workflowRevisionId` for the server's current revision (the newest
|
|
8133
|
+
* with runs, the Draft counting as newest); the response names the
|
|
8134
|
+
* revision it describes and whether it is the current one.
|
|
8135
|
+
*/
|
|
8136
|
+
async listScenarioHealthSummaries(wid, workflowId, params) {
|
|
8137
|
+
const query = new URLSearchParams();
|
|
8138
|
+
if (params?.workflowRevisionId !== void 0) {
|
|
8139
|
+
query.set("workflow_revision_id", String(params.workflowRevisionId));
|
|
8140
|
+
}
|
|
8141
|
+
const qs = query.toString() ? `?${query.toString()}` : "";
|
|
8142
|
+
return this.fetch(
|
|
8143
|
+
`w/${wid}/qualifications/workflows/${workflowId}/scenario-health-summaries${qs}`
|
|
8144
|
+
);
|
|
8145
|
+
}
|
|
7557
8146
|
async getTestChatRun(wid, runId) {
|
|
7558
8147
|
return this.fetch(`w/${wid}/qualifications/test-chat-runs/${runId}`);
|
|
7559
8148
|
}
|
|
@@ -7649,6 +8238,96 @@ var ReportsApi = class extends BaseApiClient {
|
|
|
7649
8238
|
}
|
|
7650
8239
|
};
|
|
7651
8240
|
|
|
8241
|
+
// src/types/generated/communication.ts
|
|
8242
|
+
var RoutingActionType = {
|
|
8243
|
+
answer_ai: "answer_ai",
|
|
8244
|
+
answer_human: "answer_human",
|
|
8245
|
+
answer_owner: "answer_owner",
|
|
8246
|
+
voicemail: "voicemail",
|
|
8247
|
+
play_message: "play_message",
|
|
8248
|
+
ignore: "ignore",
|
|
8249
|
+
signup: "signup"
|
|
8250
|
+
};
|
|
8251
|
+
var RoutingAudience = {
|
|
8252
|
+
anyone: "anyone",
|
|
8253
|
+
anonymous: "anonymous",
|
|
8254
|
+
members: "members"
|
|
8255
|
+
};
|
|
8256
|
+
var RoutingChannel = {
|
|
8257
|
+
pstn: "pstn",
|
|
8258
|
+
messaging: "messaging",
|
|
8259
|
+
email: "email"
|
|
8260
|
+
};
|
|
8261
|
+
var RoutingTimeWindow = {
|
|
8262
|
+
always: "always",
|
|
8263
|
+
business_hours: "business_hours",
|
|
8264
|
+
non_business_hours: "non_business_hours",
|
|
8265
|
+
custom: "custom"
|
|
8266
|
+
};
|
|
8267
|
+
|
|
8268
|
+
// src/api/routing-rules.ts
|
|
8269
|
+
function appendFilters(params, filters) {
|
|
8270
|
+
if (!filters) return;
|
|
8271
|
+
if (filters.channel !== void 0) params.set("channel", filters.channel);
|
|
8272
|
+
if (filters.phoneNumberId !== void 0)
|
|
8273
|
+
params.set("phoneNumberId", String(filters.phoneNumberId));
|
|
8274
|
+
if (filters.inboxId !== void 0) params.set("inboxId", String(filters.inboxId));
|
|
8275
|
+
if (filters.page !== void 0) params.set("page", String(filters.page));
|
|
8276
|
+
if (filters.pageSize !== void 0) params.set("pageSize", String(filters.pageSize));
|
|
8277
|
+
}
|
|
8278
|
+
var RoutingRulesApi = class extends BaseApiClient {
|
|
8279
|
+
/** List one endpoint's rules. Requires the rule's endpoint read permission (`phones:read`, or `inboxes:read`). */
|
|
8280
|
+
async getRoutingRules(wid, filters) {
|
|
8281
|
+
const params = new URLSearchParams();
|
|
8282
|
+
appendFilters(params, filters);
|
|
8283
|
+
const query = params.toString();
|
|
8284
|
+
return this.fetch(
|
|
8285
|
+
`w/${wid}/routing${query ? `?${query}` : ""}`
|
|
8286
|
+
);
|
|
8287
|
+
}
|
|
8288
|
+
/** Read one rule. Requires the rule's endpoint read permission (`phones:read`, or `inboxes:read`). */
|
|
8289
|
+
async getRoutingRule(wid, ruleUuid) {
|
|
8290
|
+
return this.fetch(`w/${wid}/routing/${ruleUuid}`);
|
|
8291
|
+
}
|
|
8292
|
+
/** Create a rule. Requires the rule's endpoint write permission (`phones:write`, or `inboxes:write`). */
|
|
8293
|
+
async createRoutingRule(wid, data) {
|
|
8294
|
+
return this.fetch(`w/${wid}/routing`, {
|
|
8295
|
+
method: "POST",
|
|
8296
|
+
body: JSON.stringify(data)
|
|
8297
|
+
});
|
|
8298
|
+
}
|
|
8299
|
+
/** Update a rule. Requires the rule's endpoint write permission (`phones:write`, or `inboxes:write`). */
|
|
8300
|
+
async updateRoutingRule(wid, ruleUuid, data) {
|
|
8301
|
+
return this.fetch(`w/${wid}/routing/${ruleUuid}`, {
|
|
8302
|
+
method: "PATCH",
|
|
8303
|
+
body: JSON.stringify(data)
|
|
8304
|
+
});
|
|
8305
|
+
}
|
|
8306
|
+
/** Hard-delete a rule. Requires the rule's endpoint write permission (`phones:write`, or `inboxes:write`); the server audits deletion. */
|
|
8307
|
+
async deleteRoutingRule(wid, ruleUuid) {
|
|
8308
|
+
return this.fetch(`w/${wid}/routing/${ruleUuid}`, {
|
|
8309
|
+
method: "DELETE"
|
|
8310
|
+
});
|
|
8311
|
+
}
|
|
8312
|
+
/** Atomically reorder one endpoint/channel scope. Requires the rule's endpoint write permission (`phones:write`, or `inboxes:write`). */
|
|
8313
|
+
async reorderRoutingRules(wid, ruleUuids) {
|
|
8314
|
+
return this.fetch(`w/${wid}/routing/reorder`, {
|
|
8315
|
+
method: "POST",
|
|
8316
|
+
body: JSON.stringify({ ruleUuids })
|
|
8317
|
+
});
|
|
8318
|
+
}
|
|
8319
|
+
/**
|
|
8320
|
+
* Dry-run rule evaluation without placing or sending anything. Requires
|
|
8321
|
+
* the rule's endpoint read permission (`phones:read`, or `inboxes:read`); previewing a named Member also requires `members:read`.
|
|
8322
|
+
*/
|
|
8323
|
+
async previewRoutingRule(wid, data) {
|
|
8324
|
+
return this.fetch(`w/${wid}/routing/preview`, {
|
|
8325
|
+
method: "POST",
|
|
8326
|
+
body: JSON.stringify(data)
|
|
8327
|
+
});
|
|
8328
|
+
}
|
|
8329
|
+
};
|
|
8330
|
+
|
|
7652
8331
|
// src/api/salesforce.ts
|
|
7653
8332
|
var SalesforceApi = class extends BaseApiClient {
|
|
7654
8333
|
/**
|
|
@@ -7729,6 +8408,20 @@ var SalesforceApi = class extends BaseApiClient {
|
|
|
7729
8408
|
body: JSON.stringify(data)
|
|
7730
8409
|
});
|
|
7731
8410
|
}
|
|
8411
|
+
/**
|
|
8412
|
+
* Start a durable run that links unlinked members by Salesforce Id / email
|
|
8413
|
+
* and hydrates them. One run per connection; a second start while one is
|
|
8414
|
+
* in flight is 409.
|
|
8415
|
+
*/
|
|
8416
|
+
async linkUnlinkedSalesforceMembersByIdentity(wid) {
|
|
8417
|
+
return this.fetch(
|
|
8418
|
+
`w/${wid}/app-connections/salesforce/reconciliation/link-unlinked-by-identity`,
|
|
8419
|
+
{
|
|
8420
|
+
method: "POST",
|
|
8421
|
+
body: JSON.stringify({})
|
|
8422
|
+
}
|
|
8423
|
+
);
|
|
8424
|
+
}
|
|
7732
8425
|
async unlinkMemberFromSalesforce(wid, memberId) {
|
|
7733
8426
|
return this.fetch(`w/${wid}/app-connections/salesforce/reconciliation/unlink/${memberId}`, {
|
|
7734
8427
|
method: "DELETE"
|
|
@@ -7810,6 +8503,21 @@ var SalesforceApi = class extends BaseApiClient {
|
|
|
7810
8503
|
}
|
|
7811
8504
|
);
|
|
7812
8505
|
}
|
|
8506
|
+
/**
|
|
8507
|
+
* Managed-rule execution history for this connection (`GET /sync/logs`):
|
|
8508
|
+
* the connection's managed EventRule executions, newest first, with the
|
|
8509
|
+
* shared cursor pagination. Requires `apps:read`; works while the
|
|
8510
|
+
* connection is parked for re-authorization.
|
|
8511
|
+
*/
|
|
8512
|
+
async getSalesforceSyncLogs(wid, params) {
|
|
8513
|
+
const query = new URLSearchParams();
|
|
8514
|
+
if (params?.pageSize) query.set("pageSize", String(params.pageSize));
|
|
8515
|
+
if (params?.cursor) query.set("cursor", params.cursor);
|
|
8516
|
+
const qs = query.toString() ? `?${query.toString()}` : "";
|
|
8517
|
+
return this.fetch(
|
|
8518
|
+
`w/${wid}/app-connections/salesforce/sync/logs${qs}`
|
|
8519
|
+
);
|
|
8520
|
+
}
|
|
7813
8521
|
};
|
|
7814
8522
|
|
|
7815
8523
|
// src/api/connection-sync.ts
|
|
@@ -8000,12 +8708,19 @@ var HubspotApi = class extends BaseApiClient {
|
|
|
8000
8708
|
async getHubspotManagedRules(wid) {
|
|
8001
8709
|
return this.fetch(`w/${wid}/app-connections/hubspot/managed-rules`);
|
|
8002
8710
|
}
|
|
8711
|
+
/**
|
|
8712
|
+
* Managed-rule execution history for this connection (`GET /sync/logs`).
|
|
8713
|
+
* Rows are the shared rule-execution response (the same shape the Salesforce
|
|
8714
|
+
* and Monday twins return), with cursor pagination.
|
|
8715
|
+
*/
|
|
8003
8716
|
async getHubspotSyncLogs(wid, params) {
|
|
8004
8717
|
const query = new URLSearchParams();
|
|
8005
8718
|
if (params?.pageSize) query.set("pageSize", String(params.pageSize));
|
|
8006
8719
|
if (params?.cursor) query.set("cursor", params.cursor);
|
|
8007
8720
|
const qs = query.toString() ? `?${query.toString()}` : "";
|
|
8008
|
-
return this.fetch(
|
|
8721
|
+
return this.fetch(
|
|
8722
|
+
`w/${wid}/app-connections/hubspot/sync/logs${qs}`
|
|
8723
|
+
);
|
|
8009
8724
|
}
|
|
8010
8725
|
async getHubspotTransformPresets(wid) {
|
|
8011
8726
|
return this.fetch(
|
|
@@ -9004,6 +9719,33 @@ var JourneysApi = class extends BaseApiClient {
|
|
|
9004
9719
|
body: JSON.stringify(data)
|
|
9005
9720
|
});
|
|
9006
9721
|
}
|
|
9722
|
+
/**
|
|
9723
|
+
* Discard a saved editor draft, keeping the runnable definition.
|
|
9724
|
+
*
|
|
9725
|
+
* Body-less: a DELETE carries no document, only the resource to remove and
|
|
9726
|
+
* `expectedUpdatedAt` — the Journey's `updatedAt` as the caller loaded it —
|
|
9727
|
+
* proving they are removing the draft they were looking at. Encoded through
|
|
9728
|
+
* `URLSearchParams` because an ISO timestamp with a positive UTC offset
|
|
9729
|
+
* contains a `+`, which a raw template string would deliver to the server as
|
|
9730
|
+
* a space and turn into a revision conflict nobody can explain.
|
|
9731
|
+
*
|
|
9732
|
+
* Returns the AUTHORING projection (`Journey`) with `authoringDraft: null`
|
|
9733
|
+
* and the advanced `updatedAt`, so the caller can re-derive from the stored
|
|
9734
|
+
* definition without a second read.
|
|
9735
|
+
*
|
|
9736
|
+
* Refusals match the PUT's vocabulary: `journey_v2_definition_conflict`
|
|
9737
|
+
* (someone saved first — nothing was removed),
|
|
9738
|
+
* `journey_v2_structural_edit_not_allowed` (the Journey is live or archived)
|
|
9739
|
+
* and `journey_v2_execution_model_mismatch` (it is legacy). A Journey that
|
|
9740
|
+
* has no saved draft is a success, not an error — the state the caller asked
|
|
9741
|
+
* for is the state it is in.
|
|
9742
|
+
*/
|
|
9743
|
+
async deleteJourneyDraft(wid, journeyId, expectedUpdatedAt) {
|
|
9744
|
+
const query = new URLSearchParams({ expectedUpdatedAt });
|
|
9745
|
+
return this.fetch(`w/${wid}/journeys/${journeyId}/draft?${query.toString()}`, {
|
|
9746
|
+
method: "DELETE"
|
|
9747
|
+
});
|
|
9748
|
+
}
|
|
9007
9749
|
/**
|
|
9008
9750
|
* List journeys, optionally including archived, paginated.
|
|
9009
9751
|
*
|
|
@@ -9501,11 +10243,6 @@ var WorkflowsApi = class extends BaseApiClient {
|
|
|
9501
10243
|
`w/${wid}/workflows/${workflowId}/tasks/${taskId}/chats?${params.toString()}`
|
|
9502
10244
|
);
|
|
9503
10245
|
}
|
|
9504
|
-
async getWorkflowAccessValidation(wid, workflowId) {
|
|
9505
|
-
return this.fetch(
|
|
9506
|
-
`w/${wid}/workflows/${workflowId}/validate-access`
|
|
9507
|
-
);
|
|
9508
|
-
}
|
|
9509
10246
|
async getWorkflowConfigValidation(wid, workflowId) {
|
|
9510
10247
|
return this.fetch(
|
|
9511
10248
|
`w/${wid}/workflows/${workflowId}/validate-config`
|
|
@@ -9773,21 +10510,6 @@ function encodePermissions(permissions) {
|
|
|
9773
10510
|
if (permissions.delete) accessMode |= PERMISSION_DELETE;
|
|
9774
10511
|
return accessMode;
|
|
9775
10512
|
}
|
|
9776
|
-
var WORKFLOW_IMPLICIT_USE_SCOPE = "workflows:admin";
|
|
9777
|
-
function roleImplicitWorkflowUseScope(role) {
|
|
9778
|
-
return (role.grantedScopes ?? []).includes(WORKFLOW_IMPLICIT_USE_SCOPE) ? WORKFLOW_IMPLICIT_USE_SCOPE : null;
|
|
9779
|
-
}
|
|
9780
|
-
function roleWorkflowAccess(role, workflowId) {
|
|
9781
|
-
const viaScope = roleImplicitWorkflowUseScope(role);
|
|
9782
|
-
if (viaScope) {
|
|
9783
|
-
return { accessMode: PERMISSION_USE | PERMISSION_EDIT, viaScope };
|
|
9784
|
-
}
|
|
9785
|
-
const entry = (role.workflowAccess ?? []).find((wa) => wa.workflowId === workflowId);
|
|
9786
|
-
return { accessMode: entry?.accessMode ?? PERMISSION_NONE, viaScope: null };
|
|
9787
|
-
}
|
|
9788
|
-
function roleCanUseWorkflow(role, workflowId) {
|
|
9789
|
-
return (roleWorkflowAccess(role, workflowId).accessMode & PERMISSION_USE) !== 0;
|
|
9790
|
-
}
|
|
9791
10513
|
var Scope = /* @__PURE__ */ ((Scope2) => {
|
|
9792
10514
|
Scope2["WORKSPACE_READ"] = "workspace:read";
|
|
9793
10515
|
Scope2["WORKSPACE_WRITE"] = "workspace:write";
|
|
@@ -9856,6 +10578,7 @@ var Scope = /* @__PURE__ */ ((Scope2) => {
|
|
|
9856
10578
|
Scope2["LABELS_READ"] = "labels:read";
|
|
9857
10579
|
Scope2["LABELS_WRITE"] = "labels:write";
|
|
9858
10580
|
Scope2["ANALYTICS_READ"] = "analytics:read";
|
|
10581
|
+
Scope2["ANONYMOUS_SUBMISSIONS_READ"] = "anonymous_submissions:read";
|
|
9859
10582
|
Scope2["OPERATOR_READ"] = "operator:read";
|
|
9860
10583
|
Scope2["OPERATOR_WRITE"] = "operator:write";
|
|
9861
10584
|
Scope2["EXPORT_READ"] = "export:read";
|
|
@@ -9879,6 +10602,8 @@ var BulkMemberResultStatus = {
|
|
|
9879
10602
|
skipped: "skipped"
|
|
9880
10603
|
};
|
|
9881
10604
|
var MemberImportMatchInfoMatchType = {
|
|
10605
|
+
id: "id",
|
|
10606
|
+
uuid: "uuid",
|
|
9882
10607
|
external_id: "external_id",
|
|
9883
10608
|
email: "email",
|
|
9884
10609
|
phone: "phone",
|
|
@@ -9900,6 +10625,36 @@ var MergeMemberRolesRequestAccessStrategy = {
|
|
|
9900
10625
|
target_only: "target_only"
|
|
9901
10626
|
};
|
|
9902
10627
|
|
|
10628
|
+
// src/types/generated/member_contact_point.ts
|
|
10629
|
+
var CreateMemberContactPointRequestContactType = {
|
|
10630
|
+
phone: "phone",
|
|
10631
|
+
email: "email"
|
|
10632
|
+
};
|
|
10633
|
+
var CreateMemberContactPointRequestPurpose = {
|
|
10634
|
+
general: "general",
|
|
10635
|
+
notification: "notification",
|
|
10636
|
+
billing: "billing"
|
|
10637
|
+
};
|
|
10638
|
+
var CreateMemberContactPointRequestSharing = {
|
|
10639
|
+
shared: "shared",
|
|
10640
|
+
individual: "individual",
|
|
10641
|
+
unknown: "unknown"
|
|
10642
|
+
};
|
|
10643
|
+
var UpdateMemberContactPointRequestContactType = {
|
|
10644
|
+
phone: "phone",
|
|
10645
|
+
email: "email"
|
|
10646
|
+
};
|
|
10647
|
+
var UpdateMemberContactPointRequestPurpose = {
|
|
10648
|
+
general: "general",
|
|
10649
|
+
notification: "notification",
|
|
10650
|
+
billing: "billing"
|
|
10651
|
+
};
|
|
10652
|
+
var UpdateMemberContactPointRequestSharing = {
|
|
10653
|
+
shared: "shared",
|
|
10654
|
+
individual: "individual",
|
|
10655
|
+
unknown: "unknown"
|
|
10656
|
+
};
|
|
10657
|
+
|
|
9903
10658
|
// src/types/member-types.ts
|
|
9904
10659
|
var MemberType = /* @__PURE__ */ ((MemberType2) => {
|
|
9905
10660
|
MemberType2["ANONYMOUS"] = "anonymous";
|
|
@@ -9986,6 +10741,7 @@ var EventRuleEventType = /* @__PURE__ */ ((EventRuleEventType2) => {
|
|
|
9986
10741
|
EventRuleEventType2["CHAT_CREATED"] = "chat:created";
|
|
9987
10742
|
EventRuleEventType2["CHAT_SUMMARY"] = "chat:summary";
|
|
9988
10743
|
EventRuleEventType2["MESSAGE_CREATED"] = "message:created";
|
|
10744
|
+
EventRuleEventType2["LINK_CLICKED"] = "link:clicked";
|
|
9989
10745
|
EventRuleEventType2["CHAT_CALLBACK"] = "chat:callback";
|
|
9990
10746
|
EventRuleEventType2["MEMBER_UPDATED"] = "member:updated";
|
|
9991
10747
|
EventRuleEventType2["ROUTINE_TRIGGERED"] = "routine:triggered";
|
|
@@ -10049,6 +10805,20 @@ function eventRuleActionParams(params) {
|
|
|
10049
10805
|
}
|
|
10050
10806
|
var MASKED_SECRET_SENTINEL = "__SECRET_SET__";
|
|
10051
10807
|
|
|
10808
|
+
// src/types/generated/credit_stop_service.ts
|
|
10809
|
+
var SendingNextStep = {
|
|
10810
|
+
add_credits: "add_credits",
|
|
10811
|
+
subscribe: "subscribe",
|
|
10812
|
+
contact_billing_owner: "contact_billing_owner"
|
|
10813
|
+
};
|
|
10814
|
+
var SendingStopState = {
|
|
10815
|
+
ok: "ok",
|
|
10816
|
+
credits_suspended: "credits_suspended",
|
|
10817
|
+
out_of_credits: "out_of_credits",
|
|
10818
|
+
operator_suspension: "operator_suspension",
|
|
10819
|
+
billing_unresolved: "billing_unresolved"
|
|
10820
|
+
};
|
|
10821
|
+
|
|
10052
10822
|
// src/types/billing-types.ts
|
|
10053
10823
|
var WorkspaceFeature = /* @__PURE__ */ ((WorkspaceFeature2) => {
|
|
10054
10824
|
WorkspaceFeature2["PHONE"] = "phone";
|
|
@@ -10064,7 +10834,6 @@ var WorkspaceFeature = /* @__PURE__ */ ((WorkspaceFeature2) => {
|
|
|
10064
10834
|
WorkspaceFeature2["WEB_SEARCH"] = "web_search";
|
|
10065
10835
|
WorkspaceFeature2["CALENDAR"] = "calendar";
|
|
10066
10836
|
WorkspaceFeature2["JOURNEY_V2_EDITOR"] = "journey_v2_editor";
|
|
10067
|
-
WorkspaceFeature2["EXPERIMENTS"] = "experiments";
|
|
10068
10837
|
WorkspaceFeature2["MAILBOX_USER_INPUT"] = "mailbox_user_input";
|
|
10069
10838
|
WorkspaceFeature2["FORKED_TRAJECTORIES"] = "forked_trajectories";
|
|
10070
10839
|
WorkspaceFeature2["GMAIL"] = "gmail";
|
|
@@ -10085,6 +10854,7 @@ var WorkspaceFeature = /* @__PURE__ */ ((WorkspaceFeature2) => {
|
|
|
10085
10854
|
WorkspaceFeature2["IMAGE_GENERATION"] = "image_generation";
|
|
10086
10855
|
WorkspaceFeature2["CHARLESTON_NEPHROLOGY_PMD_PAGING"] = "charleston_nephrology_pmd_paging";
|
|
10087
10856
|
WorkspaceFeature2["PATIENTSYNC_TRANSFER"] = "patientsync_transfer";
|
|
10857
|
+
WorkspaceFeature2["COSAN_PATHWAYS_SCHEDULING"] = "cosan_pathways_scheduling";
|
|
10088
10858
|
return WorkspaceFeature2;
|
|
10089
10859
|
})(WorkspaceFeature || {});
|
|
10090
10860
|
var MemberFeature = /* @__PURE__ */ ((MemberFeature2) => {
|
|
@@ -10195,6 +10965,7 @@ var IndexStatus = /* @__PURE__ */ ((IndexStatus2) => {
|
|
|
10195
10965
|
var DataTypeRecordScope = /* @__PURE__ */ ((DataTypeRecordScope2) => {
|
|
10196
10966
|
DataTypeRecordScope2["WORKSPACE"] = "workspace";
|
|
10197
10967
|
DataTypeRecordScope2["MEMBER"] = "member";
|
|
10968
|
+
DataTypeRecordScope2["ANONYMOUS"] = "anonymous";
|
|
10198
10969
|
return DataTypeRecordScope2;
|
|
10199
10970
|
})(DataTypeRecordScope || {});
|
|
10200
10971
|
var DataSensitivity = /* @__PURE__ */ ((DataSensitivity2) => {
|
|
@@ -10226,6 +10997,7 @@ var ModelProvider = {
|
|
|
10226
10997
|
deepgram: "deepgram",
|
|
10227
10998
|
xai: "xai",
|
|
10228
10999
|
fireworks: "fireworks",
|
|
11000
|
+
vercel: "vercel",
|
|
10229
11001
|
custom: "custom"
|
|
10230
11002
|
};
|
|
10231
11003
|
var ModelType = {
|
|
@@ -10326,7 +11098,26 @@ var FhirClientType = /* @__PURE__ */ ((FhirClientType2) => {
|
|
|
10326
11098
|
return FhirClientType2;
|
|
10327
11099
|
})(FhirClientType || {});
|
|
10328
11100
|
|
|
11101
|
+
// src/types/app-connection-types.ts
|
|
11102
|
+
var CrmActivityKind = /* @__PURE__ */ ((CrmActivityKind2) => {
|
|
11103
|
+
CrmActivityKind2["MESSAGE"] = "message";
|
|
11104
|
+
CrmActivityKind2["SUMMARY"] = "summary";
|
|
11105
|
+
CrmActivityKind2["CHAT_STARTED"] = "chat_started";
|
|
11106
|
+
CrmActivityKind2["CALL_STARTED"] = "call_started";
|
|
11107
|
+
CrmActivityKind2["CALL_ENDED"] = "call_ended";
|
|
11108
|
+
return CrmActivityKind2;
|
|
11109
|
+
})(CrmActivityKind || {});
|
|
11110
|
+
|
|
10329
11111
|
// src/types/generated/qualification.ts
|
|
11112
|
+
var RunHealthCategory = {
|
|
11113
|
+
passed: "passed",
|
|
11114
|
+
failed: "failed",
|
|
11115
|
+
running: "running",
|
|
11116
|
+
not_applicable: "not_applicable",
|
|
11117
|
+
awaiting_evaluation: "awaiting_evaluation",
|
|
11118
|
+
ungradeable: "ungradeable",
|
|
11119
|
+
incomplete: "incomplete"
|
|
11120
|
+
};
|
|
10330
11121
|
var TestChatRunLane = {
|
|
10331
11122
|
text: "text",
|
|
10332
11123
|
web_realtime: "web_realtime",
|
|
@@ -10344,6 +11135,44 @@ var TestChatRunOutcome = {
|
|
|
10344
11135
|
instrument_failure: "instrument_failure"
|
|
10345
11136
|
};
|
|
10346
11137
|
|
|
11138
|
+
// src/types/generated/qualification_health_service.ts
|
|
11139
|
+
var ScenarioHealthCaption = {
|
|
11140
|
+
recent_passes: "recent_passes",
|
|
11141
|
+
pass_ratio: "pass_ratio",
|
|
11142
|
+
could_not_grade: "could_not_grade",
|
|
11143
|
+
awaiting_evaluation: "awaiting_evaluation",
|
|
11144
|
+
running: "running",
|
|
11145
|
+
not_run_since_test_change: "not_run_since_test_change",
|
|
11146
|
+
not_run_on_revision: "not_run_on_revision",
|
|
11147
|
+
never_run: "never_run"
|
|
11148
|
+
};
|
|
11149
|
+
var ScenarioHealthHeadline = {
|
|
11150
|
+
needs_attention: "needs_attention",
|
|
11151
|
+
no_results: "no_results",
|
|
11152
|
+
all_passing: "all_passing",
|
|
11153
|
+
no_scenarios: "no_scenarios"
|
|
11154
|
+
};
|
|
11155
|
+
var ScenarioHealthSampleNote = {
|
|
11156
|
+
low_sample: "low_sample"
|
|
11157
|
+
};
|
|
11158
|
+
var ScenarioHealthState = {
|
|
11159
|
+
failing: "failing",
|
|
11160
|
+
flaky: "flaky",
|
|
11161
|
+
no_results: "no_results",
|
|
11162
|
+
passing: "passing"
|
|
11163
|
+
};
|
|
11164
|
+
|
|
11165
|
+
// src/types/generated/qualification_health_summary.ts
|
|
11166
|
+
var RevisionHistorySegment = {
|
|
11167
|
+
before_test_change: "before_test_change"
|
|
11168
|
+
};
|
|
11169
|
+
|
|
11170
|
+
// src/types/generated/qualification_run_identity.ts
|
|
11171
|
+
var ScenarioRunBlocker = {
|
|
11172
|
+
missing_persona: "missing_persona",
|
|
11173
|
+
archived_persona: "archived_persona"
|
|
11174
|
+
};
|
|
11175
|
+
|
|
10347
11176
|
// src/types/qualification-types.ts
|
|
10348
11177
|
var CriterionType = /* @__PURE__ */ ((CriterionType2) => {
|
|
10349
11178
|
CriterionType2["EXPRESSION"] = "expression";
|
|
@@ -11305,17 +12134,17 @@ var WorkspacesApi = class extends BaseApiClient {
|
|
|
11305
12134
|
body: JSON.stringify(payload)
|
|
11306
12135
|
});
|
|
11307
12136
|
}
|
|
11308
|
-
/**
|
|
12137
|
+
/**
|
|
12138
|
+
* List available themes for a workspace.
|
|
12139
|
+
*
|
|
12140
|
+
* Read-only: `…/themes` serves GET and nothing else. `Workspace.themes` is
|
|
12141
|
+
* an entitlement allowlist — which non-global themes this workspace may
|
|
12142
|
+
* select. There was never a `PUT …/themes` route; the
|
|
12143
|
+
* `updateWorkspaceThemes` method that targeted one always 405'd (GRA-8892).
|
|
12144
|
+
*/
|
|
11309
12145
|
async getWorkspaceThemes(wid) {
|
|
11310
12146
|
return this.fetch(`w/${wid}/themes`);
|
|
11311
12147
|
}
|
|
11312
|
-
/** Update the active themes for a workspace. */
|
|
11313
|
-
async updateWorkspaceThemes(wid, themes) {
|
|
11314
|
-
return this.fetch(`w/${wid}/themes`, {
|
|
11315
|
-
method: "PUT",
|
|
11316
|
-
body: JSON.stringify({ themes })
|
|
11317
|
-
});
|
|
11318
|
-
}
|
|
11319
12148
|
/**
|
|
11320
12149
|
* Get all workspace-grantable scopes that can be assigned to member roles.
|
|
11321
12150
|
*
|
|
@@ -11344,6 +12173,55 @@ var WorkspacesApi = class extends BaseApiClient {
|
|
|
11344
12173
|
}
|
|
11345
12174
|
};
|
|
11346
12175
|
|
|
12176
|
+
// src/types/generated/bundle_contract.ts
|
|
12177
|
+
var BundleGrantRequestGranteeType = {
|
|
12178
|
+
organization: "organization",
|
|
12179
|
+
global: "global"
|
|
12180
|
+
};
|
|
12181
|
+
var FormBundleItemRecordScope = {
|
|
12182
|
+
member: "member",
|
|
12183
|
+
workspace: "workspace",
|
|
12184
|
+
anonymous: "anonymous"
|
|
12185
|
+
};
|
|
12186
|
+
var SolutionReleaseResponseSlug = {
|
|
12187
|
+
"member-enrollment": "member-enrollment",
|
|
12188
|
+
"member-reengagement": "member-reengagement",
|
|
12189
|
+
"treatment-adherence": "treatment-adherence",
|
|
12190
|
+
"heart-health": "heart-health",
|
|
12191
|
+
"recovery-checkins": "recovery-checkins",
|
|
12192
|
+
"care-coordination": "care-coordination"
|
|
12193
|
+
};
|
|
12194
|
+
|
|
12195
|
+
// src/types/generated/installation_contract.ts
|
|
12196
|
+
var InstallationItemChangeChange = {
|
|
12197
|
+
added: "added",
|
|
12198
|
+
removed: "removed",
|
|
12199
|
+
revisionChanged: "revisionChanged",
|
|
12200
|
+
definitionChanged: "definitionChanged",
|
|
12201
|
+
unchanged: "unchanged"
|
|
12202
|
+
};
|
|
12203
|
+
var ReferenceTargetInputKind = {
|
|
12204
|
+
file: "file",
|
|
12205
|
+
file_folder: "file_folder",
|
|
12206
|
+
image: "image",
|
|
12207
|
+
phone_number: "phone_number",
|
|
12208
|
+
member_role: "member_role",
|
|
12209
|
+
page: "page"
|
|
12210
|
+
};
|
|
12211
|
+
var ScalarTargetInputKind = {
|
|
12212
|
+
text: "text",
|
|
12213
|
+
textarea: "textarea",
|
|
12214
|
+
url: "url",
|
|
12215
|
+
color: "color",
|
|
12216
|
+
number: "number",
|
|
12217
|
+
boolean: "boolean",
|
|
12218
|
+
select: "select"
|
|
12219
|
+
};
|
|
12220
|
+
var SetInstallationPolicyRequestUpgradePolicy = {
|
|
12221
|
+
pinned: "pinned",
|
|
12222
|
+
auto: "auto"
|
|
12223
|
+
};
|
|
12224
|
+
|
|
11347
12225
|
// src/app-context.ts
|
|
11348
12226
|
function formatAppContextAsMarkdown(context) {
|
|
11349
12227
|
if (!context) {
|
|
@@ -11420,6 +12298,8 @@ function createApiModules(apiKey, baseUrl, customFetch) {
|
|
|
11420
12298
|
assignments: new AssignmentsApi(apiKey, baseUrl, customFetch),
|
|
11421
12299
|
auth: new AuthApi(apiKey, baseUrl, customFetch),
|
|
11422
12300
|
builders: new BuildersApi(apiKey, baseUrl, customFetch),
|
|
12301
|
+
bundles: new BundlesApi(apiKey, baseUrl, customFetch),
|
|
12302
|
+
installations: new InstallationsApi(apiKey, baseUrl, customFetch),
|
|
11423
12303
|
calendars: new CalendarsApi(apiKey, baseUrl, customFetch),
|
|
11424
12304
|
calls: new CallsApi(apiKey, baseUrl, customFetch),
|
|
11425
12305
|
cel: new CELApi(apiKey, baseUrl, customFetch),
|
|
@@ -11468,6 +12348,8 @@ function createApiModules(apiKey, baseUrl, customFetch) {
|
|
|
11468
12348
|
metrics: new MetricsApi(apiKey, baseUrl, customFetch),
|
|
11469
12349
|
queries: new QueriesApi(apiKey, baseUrl, customFetch),
|
|
11470
12350
|
reports: new ReportsApi(apiKey, baseUrl, customFetch),
|
|
12351
|
+
resourceWorkflows: new ResourceWorkflowsApi(apiKey, baseUrl, customFetch),
|
|
12352
|
+
routingRules: new RoutingRulesApi(apiKey, baseUrl, customFetch),
|
|
11471
12353
|
salesforce: new SalesforceApi(apiKey, baseUrl, customFetch),
|
|
11472
12354
|
sites: new SitesApi(apiKey, baseUrl, customFetch),
|
|
11473
12355
|
subscriptions: new SubscriptionsApi(apiKey, baseUrl, customFetch),
|
|
@@ -11497,6 +12379,7 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11497
12379
|
"archiveDataType",
|
|
11498
12380
|
"archiveJourney",
|
|
11499
12381
|
"archiveMember",
|
|
12382
|
+
"archiveMemberByExternalId",
|
|
11500
12383
|
"archiveMemberRelationship",
|
|
11501
12384
|
"archivePersona",
|
|
11502
12385
|
"archivePhoneNumber",
|
|
@@ -11523,7 +12406,6 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11523
12406
|
"checkSiteSlugAvailability",
|
|
11524
12407
|
"claimDevicePairing",
|
|
11525
12408
|
"clearConnectionMemberExclusion",
|
|
11526
|
-
"clearMemberSwitch",
|
|
11527
12409
|
"clearTrackedLinkDestinations",
|
|
11528
12410
|
"clickWorkspaceSupportRequestResource",
|
|
11529
12411
|
"cloneDataType",
|
|
@@ -11546,6 +12428,9 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11546
12428
|
"createAgent",
|
|
11547
12429
|
"createApiKey",
|
|
11548
12430
|
"createAssignment",
|
|
12431
|
+
"bindInstallationSlots",
|
|
12432
|
+
"restoreInstallationForm",
|
|
12433
|
+
"createBundle",
|
|
11549
12434
|
"createCalendar",
|
|
11550
12435
|
"createCalendarEvent",
|
|
11551
12436
|
"createCalendarEventType",
|
|
@@ -11594,6 +12479,7 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11594
12479
|
"createPhoneNumber",
|
|
11595
12480
|
"createProduct",
|
|
11596
12481
|
"createRoutine",
|
|
12482
|
+
"createRoutingRule",
|
|
11597
12483
|
"createScenario",
|
|
11598
12484
|
"createSignup",
|
|
11599
12485
|
"createSite",
|
|
@@ -11644,6 +12530,7 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11644
12530
|
"deleteGoal",
|
|
11645
12531
|
"deleteHubspot",
|
|
11646
12532
|
"deleteInbox",
|
|
12533
|
+
"deleteJourneyDraft",
|
|
11647
12534
|
"deleteJourneyNote",
|
|
11648
12535
|
"deleteMcpServer",
|
|
11649
12536
|
"deleteMember",
|
|
@@ -11661,6 +12548,7 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11661
12548
|
"deletePlatformApp",
|
|
11662
12549
|
"deleteProduct",
|
|
11663
12550
|
"deleteRoutine",
|
|
12551
|
+
"deleteRoutingRule",
|
|
11664
12552
|
"deleteSalesforce",
|
|
11665
12553
|
"deleteScenario",
|
|
11666
12554
|
"deleteSite",
|
|
@@ -11693,6 +12581,7 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11693
12581
|
"dismissAllNotifications",
|
|
11694
12582
|
"dismissNotification",
|
|
11695
12583
|
"downloadEmailAttachment",
|
|
12584
|
+
"downloadFileContents",
|
|
11696
12585
|
"downloadFilesZip",
|
|
11697
12586
|
"downloadSiteSourceZip",
|
|
11698
12587
|
"editWorkflowRevisionAsDraft",
|
|
@@ -11755,6 +12644,7 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11755
12644
|
"getAgentTasks",
|
|
11756
12645
|
"getAgents",
|
|
11757
12646
|
"getAnonymousResolution",
|
|
12647
|
+
"getAnonymousFormSubmission",
|
|
11758
12648
|
"getAnonymousResolutions",
|
|
11759
12649
|
"getApiKeys",
|
|
11760
12650
|
"getArchiveBlockers",
|
|
@@ -11768,6 +12658,12 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11768
12658
|
"getAvailableActions",
|
|
11769
12659
|
"getAvailablePhoneNumbers",
|
|
11770
12660
|
"getAvailableSlots",
|
|
12661
|
+
"getInstallation",
|
|
12662
|
+
"getInstallationReadiness",
|
|
12663
|
+
"getThemeSettingsSchema",
|
|
12664
|
+
"getBundleDraft",
|
|
12665
|
+
"getBundle",
|
|
12666
|
+
"getBundleVersion",
|
|
11771
12667
|
"getBusinessHoursStatus",
|
|
11772
12668
|
"getCalendar",
|
|
11773
12669
|
"getCalendarEvent",
|
|
@@ -11780,8 +12676,11 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11780
12676
|
"getCelContext",
|
|
11781
12677
|
"getCharlestonTestDeliveryRecipients",
|
|
11782
12678
|
"getChat",
|
|
12679
|
+
"getChatByUuid",
|
|
11783
12680
|
"getChatAssignmentTasks",
|
|
11784
12681
|
"getChatBrowserLiveView",
|
|
12682
|
+
"saveChatBrowserStorage",
|
|
12683
|
+
"clearChatBrowserStorage",
|
|
11785
12684
|
"getChatCallbacks",
|
|
11786
12685
|
"getChatEhrWritebackOutcomes",
|
|
11787
12686
|
"getChatEmails",
|
|
@@ -11827,6 +12726,7 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11827
12726
|
"getDashboardWorkflowAssignmentStats",
|
|
11828
12727
|
"getDashboards",
|
|
11829
12728
|
"getDataRecord",
|
|
12729
|
+
"getDataRecordByUuid",
|
|
11830
12730
|
"getDataRecordChanges",
|
|
11831
12731
|
"getDataRecordFilter",
|
|
11832
12732
|
"getDataRecordFilterCount",
|
|
@@ -11944,6 +12844,7 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11944
12844
|
"getMcpServerResources",
|
|
11945
12845
|
"getMcpServerTools",
|
|
11946
12846
|
"getMcpServers",
|
|
12847
|
+
"getMemberByUuid",
|
|
11947
12848
|
"getMemberExperiments",
|
|
11948
12849
|
"getMemberFieldDefinitions",
|
|
11949
12850
|
"getMemberFields",
|
|
@@ -11975,6 +12876,7 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11975
12876
|
"getMondayConnectionStatus",
|
|
11976
12877
|
"getMondayReconciliationMatches",
|
|
11977
12878
|
"getMondaySyncConfig",
|
|
12879
|
+
"getMondaySyncLogs",
|
|
11978
12880
|
"getMyCredentials",
|
|
11979
12881
|
"getMyGivenGrants",
|
|
11980
12882
|
"getMyReceivedGrants",
|
|
@@ -11985,7 +12887,6 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
11985
12887
|
"getOperatorGroup",
|
|
11986
12888
|
"getOperatorGroups",
|
|
11987
12889
|
"getOrCreateQualificationForWorkflow",
|
|
11988
|
-
"getOwnedMembers",
|
|
11989
12890
|
"getPage",
|
|
11990
12891
|
"getPageBySlug",
|
|
11991
12892
|
"getPersona",
|
|
@@ -12015,11 +12916,14 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
12015
12916
|
"getRoutineConfigEvents",
|
|
12016
12917
|
"getRoutineRuns",
|
|
12017
12918
|
"getRoutines",
|
|
12919
|
+
"getRoutingRule",
|
|
12920
|
+
"getRoutingRules",
|
|
12018
12921
|
"getRuleExecutions",
|
|
12019
12922
|
"getSMSUsageReport",
|
|
12020
12923
|
"getSalesforceReconciliationMatches",
|
|
12021
12924
|
"getSalesforceStatus",
|
|
12022
12925
|
"getSalesforceSyncConfig",
|
|
12926
|
+
"getSalesforceSyncLogs",
|
|
12023
12927
|
"getScenario",
|
|
12024
12928
|
"getSite",
|
|
12025
12929
|
"getSiteByUuid",
|
|
@@ -12065,7 +12969,6 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
12065
12969
|
"getWebhookLogs",
|
|
12066
12970
|
"getWorkflow",
|
|
12067
12971
|
"getWorkflowOpeningTurnConversionReport",
|
|
12068
|
-
"getWorkflowAccessValidation",
|
|
12069
12972
|
"getWorkflowActivity",
|
|
12070
12973
|
"getWorkflowConfigValidation",
|
|
12071
12974
|
"getWorkflowFeedback",
|
|
@@ -12096,6 +12999,8 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
12096
12999
|
"getWorkspaceSubscriptions",
|
|
12097
13000
|
"getWorkspaceSupportRequest",
|
|
12098
13001
|
"getWorkspaceThemes",
|
|
13002
|
+
"installBundle",
|
|
13003
|
+
"grantBundle",
|
|
12099
13004
|
"importFromBoard",
|
|
12100
13005
|
"importHubspotMembers",
|
|
12101
13006
|
"importMembers",
|
|
@@ -12118,13 +13023,23 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
12118
13023
|
"linkMemberToMonday",
|
|
12119
13024
|
"linkMemberToSalesforce",
|
|
12120
13025
|
"linkPhoneNumber",
|
|
13026
|
+
"linkUnlinkedSalesforceMembersByIdentity",
|
|
12121
13027
|
"listAbilities",
|
|
13028
|
+
"listAnonymousFormSubmissions",
|
|
12122
13029
|
"listAppConnections",
|
|
12123
13030
|
"listAvailableAppConnections",
|
|
13031
|
+
"listInstallations",
|
|
13032
|
+
"listBundleGrants",
|
|
13033
|
+
"listBundleVersions",
|
|
13034
|
+
"listBundles",
|
|
13035
|
+
"listBundleWorkflowCandidates",
|
|
13036
|
+
"updateBundle",
|
|
13037
|
+
"listBundleInstallations",
|
|
12124
13038
|
"listConfluencePages",
|
|
12125
13039
|
"listConfluenceSpaces",
|
|
12126
13040
|
"listConnectionMemberFieldKeys",
|
|
12127
13041
|
"listContactPermissions",
|
|
13042
|
+
"revokeBundleGrant",
|
|
12128
13043
|
"rollbackSiteSource",
|
|
12129
13044
|
"rotateDocumoFaxCredentials",
|
|
12130
13045
|
"runQuery",
|
|
@@ -12145,7 +13060,11 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
12145
13060
|
"getMetricSeries",
|
|
12146
13061
|
"computeChatMetrics",
|
|
12147
13062
|
"listPushSubscriptions",
|
|
13063
|
+
"listResourceWorkflows",
|
|
13064
|
+
"getResourceWorkflow",
|
|
13065
|
+
"getResourceWorkflowRevision",
|
|
12148
13066
|
"listSalesforceObjects",
|
|
13067
|
+
"listScenarioHealthSummaries",
|
|
12149
13068
|
"listScenarios",
|
|
12150
13069
|
"listTestChatRuns",
|
|
12151
13070
|
"listWidgetDomains",
|
|
@@ -12161,15 +13080,18 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
12161
13080
|
"previewRenameFieldSlug",
|
|
12162
13081
|
"previewImportWorkspace",
|
|
12163
13082
|
"previewInboxEmail",
|
|
13083
|
+
"preflightBundleInstallation",
|
|
12164
13084
|
"previewRoutineVoiceReadiness",
|
|
12165
|
-
"previewRoutineWorkflowAccess",
|
|
12166
13085
|
"previewSchedule",
|
|
13086
|
+
"previewRoutingRule",
|
|
12167
13087
|
"previewTTS",
|
|
12168
13088
|
"previewTemplate",
|
|
12169
13089
|
"previewThinkingSound",
|
|
12170
13090
|
"previewWorkspaceImport",
|
|
12171
13091
|
"previewWorkspaceImportZip",
|
|
12172
13092
|
"provisionClientWorkspace",
|
|
13093
|
+
"previewInstallationUpgrade",
|
|
13094
|
+
"publishBundle",
|
|
12173
13095
|
"publishWorkflowRevision",
|
|
12174
13096
|
"putJourneyDraft",
|
|
12175
13097
|
"putJourneyV2Definition",
|
|
@@ -12181,11 +13103,16 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
12181
13103
|
"registerPushSubscription",
|
|
12182
13104
|
"reindexFolder",
|
|
12183
13105
|
"releasePhoneNumber",
|
|
13106
|
+
"reorderRoutingRules",
|
|
12184
13107
|
"removeFileRole",
|
|
12185
13108
|
"removeFolderRole",
|
|
12186
13109
|
"removeGroupMember",
|
|
12187
13110
|
"reorderEventRules",
|
|
12188
13111
|
"reorderMenuItems",
|
|
13112
|
+
"reconcileInstallation",
|
|
13113
|
+
"setInstallationPolicy",
|
|
13114
|
+
"upgradeInstallation",
|
|
13115
|
+
"replaceBundleDraft",
|
|
12189
13116
|
"replyToEmail",
|
|
12190
13117
|
"rotateDocumoFaxCredentials",
|
|
12191
13118
|
"requestPhoneNumber",
|
|
@@ -12221,7 +13148,6 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
12221
13148
|
"startSyncRun",
|
|
12222
13149
|
"startTestChatRun",
|
|
12223
13150
|
"summarizeChat",
|
|
12224
|
-
"switchMember",
|
|
12225
13151
|
"syncCalendarWithGoogle",
|
|
12226
13152
|
"syncCalendarWithHealthie",
|
|
12227
13153
|
"testFhirConnection",
|
|
@@ -12234,6 +13160,7 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
12234
13160
|
"unarchiveChat",
|
|
12235
13161
|
"unarchiveDataType",
|
|
12236
13162
|
"unarchiveMember",
|
|
13163
|
+
"unarchiveMemberByExternalId",
|
|
12237
13164
|
"unarchivePersona",
|
|
12238
13165
|
"unarchiveStep",
|
|
12239
13166
|
"unarchiveTask",
|
|
@@ -12291,6 +13218,7 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
12291
13218
|
"updateJourneyNote",
|
|
12292
13219
|
"updateMcpServer",
|
|
12293
13220
|
"updateMember",
|
|
13221
|
+
"updateMemberByExternalId",
|
|
12294
13222
|
"updateMemberField",
|
|
12295
13223
|
"updateMemberFilter",
|
|
12296
13224
|
"updateMemberLabel",
|
|
@@ -12307,6 +13235,7 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
12307
13235
|
"updateProduct",
|
|
12308
13236
|
"updateProject",
|
|
12309
13237
|
"updateRoutine",
|
|
13238
|
+
"updateRoutingRule",
|
|
12310
13239
|
"updateSalesforceSyncConfig",
|
|
12311
13240
|
"resyncSalesforceLinkedMembers",
|
|
12312
13241
|
"updateScenario",
|
|
@@ -12329,7 +13258,6 @@ var WORKSPACE_METHOD_NAMES = [
|
|
|
12329
13258
|
"updateWorkspace",
|
|
12330
13259
|
"updateWorkspaceDefaults",
|
|
12331
13260
|
"updateWorkspaceInvitationAdmin",
|
|
12332
|
-
"updateWorkspaceThemes",
|
|
12333
13261
|
"upsertDataRecord",
|
|
12334
13262
|
"upsertWidgetDomain",
|
|
12335
13263
|
"validateCelExpression",
|
|
@@ -12420,6 +13348,9 @@ function bindChatsMethods(target, chats) {
|
|
|
12420
13348
|
target.transitionChatInteractionSession = chats.transitionChatInteractionSession.bind(chats);
|
|
12421
13349
|
target.getChats = chats.getChats.bind(chats);
|
|
12422
13350
|
target.getChat = chats.getChat.bind(chats);
|
|
13351
|
+
target.getChatByUuid = chats.getChatByUuid.bind(chats);
|
|
13352
|
+
target.saveChatBrowserStorage = chats.saveChatBrowserStorage.bind(chats);
|
|
13353
|
+
target.clearChatBrowserStorage = chats.clearChatBrowserStorage.bind(chats);
|
|
12423
13354
|
target.getChatBrowserLiveView = chats.getChatBrowserLiveView.bind(chats);
|
|
12424
13355
|
target.getChatMachineResources = chats.getChatMachineResources.bind(chats);
|
|
12425
13356
|
target.getCurrentSmsChat = chats.getCurrentSmsChat.bind(chats);
|
|
@@ -12556,7 +13487,10 @@ function bindDataTypesMethods(target, dataTypes) {
|
|
|
12556
13487
|
target.unarchiveDataType = dataTypes.unarchiveDataType.bind(dataTypes);
|
|
12557
13488
|
target.cloneDataType = dataTypes.cloneDataType.bind(dataTypes);
|
|
12558
13489
|
target.getDataRecords = dataTypes.getDataRecords.bind(dataTypes);
|
|
13490
|
+
target.listAnonymousFormSubmissions = dataTypes.listAnonymousFormSubmissions.bind(dataTypes);
|
|
13491
|
+
target.getAnonymousFormSubmission = dataTypes.getAnonymousFormSubmission.bind(dataTypes);
|
|
12559
13492
|
target.getDataRecord = dataTypes.getDataRecord.bind(dataTypes);
|
|
13493
|
+
target.getDataRecordByUuid = dataTypes.getDataRecordByUuid.bind(dataTypes);
|
|
12560
13494
|
target.createDataRecord = dataTypes.createDataRecord.bind(dataTypes);
|
|
12561
13495
|
target.updateDataRecord = dataTypes.updateDataRecord.bind(dataTypes);
|
|
12562
13496
|
target.deleteDataRecord = dataTypes.deleteDataRecord.bind(dataTypes);
|
|
@@ -12595,18 +13529,19 @@ function bindMembersMethods(target, members) {
|
|
|
12595
13529
|
target.previewMemberWorkflowVoice = members.previewMemberWorkflowVoice.bind(members);
|
|
12596
13530
|
target.setMemberWorkflowVoice = members.setMemberWorkflowVoice.bind(members);
|
|
12597
13531
|
target.clearMemberWorkflowVoice = members.clearMemberWorkflowVoice.bind(members);
|
|
12598
|
-
target.getOwnedMembers = members.getOwnedMembers.bind(members);
|
|
12599
|
-
target.switchMember = members.switchMember.bind(members);
|
|
12600
|
-
target.clearMemberSwitch = members.clearMemberSwitch.bind(members);
|
|
12601
13532
|
target.updateCurrentMember = members.updateCurrentMember.bind(members);
|
|
12602
13533
|
target.getWorkspaceMembers = members.getWorkspaceMembers.bind(members);
|
|
12603
13534
|
target.getWorkspaceMember = members.getWorkspaceMember.bind(members);
|
|
13535
|
+
target.getMemberByUuid = members.getMemberByUuid.bind(members);
|
|
12604
13536
|
target.getOrgWorkspaceMember = members.getOrgWorkspaceMember.bind(members);
|
|
12605
13537
|
target.createWorkspaceMember = members.createWorkspaceMember.bind(members);
|
|
12606
13538
|
target.updateMember = members.updateMember.bind(members);
|
|
12607
13539
|
target.deleteMember = members.deleteMember.bind(members);
|
|
12608
13540
|
target.archiveMember = members.archiveMember.bind(members);
|
|
12609
13541
|
target.unarchiveMember = members.unarchiveMember.bind(members);
|
|
13542
|
+
target.updateMemberByExternalId = members.updateMemberByExternalId.bind(members);
|
|
13543
|
+
target.archiveMemberByExternalId = members.archiveMemberByExternalId.bind(members);
|
|
13544
|
+
target.unarchiveMemberByExternalId = members.unarchiveMemberByExternalId.bind(members);
|
|
12610
13545
|
target.sendMemberPhoneConfirmation = members.sendMemberPhoneConfirmation.bind(members);
|
|
12611
13546
|
target.bulkCreateMembers = members.bulkCreateMembers.bind(members);
|
|
12612
13547
|
target.previewImportMembers = members.previewImportMembers.bind(members);
|
|
@@ -12708,7 +13643,6 @@ function bindWorkspacesMethods(target, workspaces, signupRequests) {
|
|
|
12708
13643
|
target.rebuildImportSkippedRules = workspaces.rebuildImportSkippedRules.bind(workspaces);
|
|
12709
13644
|
target.previewImportWorkspace = workspaces.previewImportWorkspace.bind(workspaces);
|
|
12710
13645
|
target.getWorkspaceThemes = workspaces.getWorkspaceThemes.bind(workspaces);
|
|
12711
|
-
target.updateWorkspaceThemes = workspaces.updateWorkspaceThemes.bind(workspaces);
|
|
12712
13646
|
target.getWorkspaceBySlug = workspaces.getWorkspace.bind(workspaces);
|
|
12713
13647
|
target.getWorkspaceScopes = workspaces.getWorkspaceScopes.bind(workspaces);
|
|
12714
13648
|
target.getUsageDashboard = workspaces.getUsageDashboard.bind(workspaces);
|
|
@@ -12757,6 +13691,7 @@ function bindAuthMethods(target, auth, assignments) {
|
|
|
12757
13691
|
target.logout = auth.logout.bind(auth);
|
|
12758
13692
|
target.requestCrossDomainToken = auth.requestCrossDomainToken.bind(auth);
|
|
12759
13693
|
target.exchangeToken = auth.exchangeToken.bind(auth);
|
|
13694
|
+
target.createRealtimeLoginToken = auth.createRealtimeLoginToken.bind(auth);
|
|
12760
13695
|
target.getDomainMapping = auth.getDomainMapping.bind(auth);
|
|
12761
13696
|
target.createSignup = auth.createSignup.bind(auth);
|
|
12762
13697
|
target.createAccount = auth.emailPasswordSignup.bind(auth);
|
|
@@ -12846,6 +13781,7 @@ function bindSitesMethods(target, sites) {
|
|
|
12846
13781
|
function bindFilesMethods(target, files) {
|
|
12847
13782
|
target.getFiles = files.getFiles.bind(files);
|
|
12848
13783
|
target.getFile = files.getFile.bind(files);
|
|
13784
|
+
target.downloadFileContents = files.downloadFileContents.bind(files);
|
|
12849
13785
|
target.downloadFilesZip = files.downloadFilesZip.bind(files);
|
|
12850
13786
|
target.createFile = files.createFile.bind(files);
|
|
12851
13787
|
target.uploadFile = files.uploadFile.bind(files);
|
|
@@ -12918,7 +13854,6 @@ function bindEventsMethods(target, events) {
|
|
|
12918
13854
|
target.resetRoutineRuns = events.resetRoutineRuns.bind(events);
|
|
12919
13855
|
target.previewSchedule = events.previewSchedule.bind(events);
|
|
12920
13856
|
target.previewRoutineVoiceReadiness = events.previewRoutineVoiceReadiness.bind(events);
|
|
12921
|
-
target.previewRoutineWorkflowAccess = events.previewRoutineWorkflowAccess.bind(events);
|
|
12922
13857
|
}
|
|
12923
13858
|
|
|
12924
13859
|
// src/client/bindings/experiments.ts
|
|
@@ -12959,7 +13894,6 @@ function bindWorkflowsMethods(target, workflows, workflowNotes, voice, superviso
|
|
|
12959
13894
|
target.createWorkflowFromTemplate = workflows.createWorkflowFromTemplate.bind(workflows);
|
|
12960
13895
|
target.getWorkflowTaskAssignmentStats = workflows.getWorkflowTaskAssignmentStats.bind(workflows);
|
|
12961
13896
|
target.getTaskChats = workflows.getTaskChats.bind(workflows);
|
|
12962
|
-
target.getWorkflowAccessValidation = workflows.getWorkflowAccessValidation.bind(workflows);
|
|
12963
13897
|
target.getWorkflowConfigValidation = workflows.getWorkflowConfigValidation.bind(workflows);
|
|
12964
13898
|
target.getWorkflowNotes = workflowNotes.getWorkflowNotes.bind(workflowNotes);
|
|
12965
13899
|
target.createWorkflowNote = workflowNotes.createWorkflowNote.bind(workflowNotes);
|
|
@@ -13080,6 +14014,7 @@ function bindToolkitsMethods(target, toolkits, templates, aiModels, customToolki
|
|
|
13080
14014
|
target.previewTemplate = templates.previewTemplate.bind(templates);
|
|
13081
14015
|
target.getVariableRegistry = templates.getVariableRegistry.bind(templates);
|
|
13082
14016
|
target.getChatModels = aiModels.getChatModels.bind(aiModels);
|
|
14017
|
+
target.getManagerModels = aiModels.getManagerModels.bind(aiModels);
|
|
13083
14018
|
target.getRealtimeModels = aiModels.getRealtimeModels.bind(aiModels);
|
|
13084
14019
|
target.getSTTModels = aiModels.getSTTModels.bind(aiModels);
|
|
13085
14020
|
target.getTTSModels = aiModels.getTTSModels.bind(aiModels);
|
|
@@ -13193,6 +14128,7 @@ function bindIntegrationsMethods(target, mondayIntegration, discordBots, slackAp
|
|
|
13193
14128
|
target.getMondayConnectionBoardColumns = mondayIntegration.getMondayConnectionBoardColumns.bind(mondayIntegration);
|
|
13194
14129
|
target.getMondayConnectionBoardGroups = mondayIntegration.getMondayConnectionBoardGroups.bind(mondayIntegration);
|
|
13195
14130
|
target.getMondaySyncConfig = mondayIntegration.getMondaySyncConfig.bind(mondayIntegration);
|
|
14131
|
+
target.getMondaySyncLogs = mondayIntegration.getMondaySyncLogs.bind(mondayIntegration);
|
|
13196
14132
|
target.updateMondaySyncConfig = mondayIntegration.updateMondaySyncConfig.bind(mondayIntegration);
|
|
13197
14133
|
target.getLinkedMondayMembers = mondayIntegration.getLinkedMondayMembers.bind(mondayIntegration);
|
|
13198
14134
|
target.getMondayReconciliationMatches = mondayIntegration.getMondayReconciliationMatches.bind(mondayIntegration);
|
|
@@ -13307,10 +14243,12 @@ function bindIntegrationsMethods(target, mondayIntegration, discordBots, slackAp
|
|
|
13307
14243
|
target.deleteSalesforce = salesforce.deleteSalesforce.bind(salesforce);
|
|
13308
14244
|
target.getSalesforceReconciliationMatches = salesforce.getSalesforceReconciliationMatches.bind(salesforce);
|
|
13309
14245
|
target.linkMemberToSalesforce = salesforce.linkMemberToSalesforce.bind(salesforce);
|
|
14246
|
+
target.linkUnlinkedSalesforceMembersByIdentity = salesforce.linkUnlinkedSalesforceMembersByIdentity.bind(salesforce);
|
|
13310
14247
|
target.bulkLinkMembersToSalesforce = salesforce.bulkLinkMembersToSalesforce.bind(salesforce);
|
|
13311
14248
|
target.unlinkMemberFromSalesforce = salesforce.unlinkMemberFromSalesforce.bind(salesforce);
|
|
13312
14249
|
target.getLinkedSalesforceMembers = salesforce.getLinkedSalesforceMembers.bind(salesforce);
|
|
13313
14250
|
target.getSalesforceSyncConfig = salesforce.getSalesforceSyncConfig.bind(salesforce);
|
|
14251
|
+
target.getSalesforceSyncLogs = salesforce.getSalesforceSyncLogs.bind(salesforce);
|
|
13314
14252
|
target.updateSalesforceSyncConfig = salesforce.updateSalesforceSyncConfig.bind(salesforce);
|
|
13315
14253
|
target.resyncSalesforceLinkedMembers = salesforce.resyncSalesforceLinkedMembers.bind(salesforce);
|
|
13316
14254
|
target.listSalesforceObjects = salesforce.listSalesforceObjects.bind(salesforce);
|
|
@@ -13400,10 +14338,15 @@ function bindOrgMethods(target, org) {
|
|
|
13400
14338
|
target.getVoiceTrustProducts = org.getVoiceTrustProducts.bind(org);
|
|
13401
14339
|
target.syncVoiceTrustProducts = org.syncVoiceTrustProducts.bind(org);
|
|
13402
14340
|
target.createOrganizationWorkspace = org.createOrganizationWorkspace.bind(org);
|
|
14341
|
+
target.getOrganizationWorkspace = org.getOrganizationWorkspace.bind(org);
|
|
14342
|
+
target.updateOrganizationWorkspace = org.updateOrganizationWorkspace.bind(org);
|
|
13403
14343
|
target.getOrgBillingCustomer = org.getOrgBillingCustomer.bind(org);
|
|
13404
14344
|
target.getA2PCampaignConfig = org.getA2PCampaignConfig.bind(org);
|
|
13405
14345
|
target.updateA2PCampaignConfig = org.updateA2PCampaignConfig.bind(org);
|
|
13406
14346
|
target.getOrgWorkspaceUsage = org.getOrgWorkspaceUsage.bind(org);
|
|
14347
|
+
target.updateOrganizationMember = org.updateOrganizationMember.bind(org);
|
|
14348
|
+
target.listOrgWebhookEndpoints = org.listOrgWebhookEndpoints.bind(org);
|
|
14349
|
+
target.getOrgWebhookEndpoint = org.getOrgWebhookEndpoint.bind(org);
|
|
13407
14350
|
}
|
|
13408
14351
|
|
|
13409
14352
|
// src/client/bindings/pronunciations.ts
|
|
@@ -13423,12 +14366,58 @@ function bindPronunciationsMethods(target, pronunciations) {
|
|
|
13423
14366
|
target.previewPronunciation = pronunciations.previewPronunciation.bind(pronunciations);
|
|
13424
14367
|
}
|
|
13425
14368
|
|
|
14369
|
+
// src/client/bindings/resource-workflows.ts
|
|
14370
|
+
function bindResourceWorkflowsMethods(target, resourceWorkflows) {
|
|
14371
|
+
target.getResourceWorkflow = resourceWorkflows.getResourceWorkflow.bind(resourceWorkflows);
|
|
14372
|
+
target.getResourceWorkflowRevision = resourceWorkflows.getResourceWorkflowRevision.bind(resourceWorkflows);
|
|
14373
|
+
}
|
|
14374
|
+
|
|
14375
|
+
// src/client/bindings/bundles.ts
|
|
14376
|
+
function bindBundlesMethods(target, bundles, resourceWorkflows) {
|
|
14377
|
+
bindResourceWorkflowsMethods(target, resourceWorkflows);
|
|
14378
|
+
target.getSolutionRelease = bundles.getSolutionRelease.bind(bundles);
|
|
14379
|
+
target.updateBundle = bundles.updateBundle.bind(bundles);
|
|
14380
|
+
target.listBundleInstallations = bundles.listBundleInstallations.bind(bundles);
|
|
14381
|
+
target.listBundles = bundles.listBundles.bind(bundles);
|
|
14382
|
+
target.listBundleWorkflowCandidates = bundles.listBundleWorkflowCandidates.bind(bundles);
|
|
14383
|
+
target.createBundle = bundles.createBundle.bind(bundles);
|
|
14384
|
+
target.getBundleDraft = bundles.getBundleDraft.bind(bundles);
|
|
14385
|
+
target.replaceBundleDraft = bundles.replaceBundleDraft.bind(bundles);
|
|
14386
|
+
target.publishBundle = bundles.publishBundle.bind(bundles);
|
|
14387
|
+
target.listBundleVersions = bundles.listBundleVersions.bind(bundles);
|
|
14388
|
+
target.getBundle = bundles.getBundle.bind(bundles);
|
|
14389
|
+
target.getBundleVersion = bundles.getBundleVersion.bind(bundles);
|
|
14390
|
+
target.listBundleGrants = bundles.listBundleGrants.bind(bundles);
|
|
14391
|
+
target.grantBundle = bundles.grantBundle.bind(bundles);
|
|
14392
|
+
target.revokeBundleGrant = bundles.revokeBundleGrant.bind(bundles);
|
|
14393
|
+
target.listResourceWorkflows = resourceWorkflows.listResourceWorkflows.bind(resourceWorkflows);
|
|
14394
|
+
}
|
|
14395
|
+
|
|
14396
|
+
// src/client/bindings/installations.ts
|
|
14397
|
+
function bindInstallationsMethods(target, installations) {
|
|
14398
|
+
target.preflightBundleInstallation = installations.preflightBundleInstallation.bind(installations);
|
|
14399
|
+
target.installBundle = installations.installBundle.bind(installations);
|
|
14400
|
+
target.listInstallations = installations.listInstallations.bind(installations);
|
|
14401
|
+
target.getInstallation = installations.getInstallation.bind(installations);
|
|
14402
|
+
target.getInstallationReadiness = installations.getInstallationReadiness.bind(installations);
|
|
14403
|
+
target.previewInstallationUpgrade = installations.previewInstallationUpgrade.bind(installations);
|
|
14404
|
+
target.upgradeInstallation = installations.upgradeInstallation.bind(installations);
|
|
14405
|
+
target.setInstallationPolicy = installations.setInstallationPolicy.bind(installations);
|
|
14406
|
+
target.unsubscribeInstallation = installations.unsubscribeInstallation.bind(installations);
|
|
14407
|
+
target.restoreInstallationForm = installations.restoreInstallationForm.bind(installations);
|
|
14408
|
+
target.restoreInstallationWorkflowResources = installations.restoreInstallationWorkflowResources.bind(installations);
|
|
14409
|
+
target.bindInstallationSlots = installations.bindInstallationSlots.bind(installations);
|
|
14410
|
+
target.reconcileInstallation = installations.reconcileInstallation.bind(installations);
|
|
14411
|
+
target.getThemeSettingsSchema = installations.getThemeSettingsSchema.bind(installations);
|
|
14412
|
+
}
|
|
14413
|
+
|
|
13426
14414
|
// src/client/bindings/journeys.ts
|
|
13427
14415
|
function bindJourneysMethods(target, journeys) {
|
|
13428
14416
|
target.getJourneys = journeys.getJourneys.bind(journeys);
|
|
13429
14417
|
target.getJourney = journeys.getJourney.bind(journeys);
|
|
13430
14418
|
target.getJourneyAuthoring = journeys.getJourneyAuthoring.bind(journeys);
|
|
13431
14419
|
target.putJourneyDraft = journeys.putJourneyDraft.bind(journeys);
|
|
14420
|
+
target.deleteJourneyDraft = journeys.deleteJourneyDraft.bind(journeys);
|
|
13432
14421
|
target.putJourneyV2Definition = journeys.putJourneyV2Definition.bind(journeys);
|
|
13433
14422
|
target.getJourneyV2Validation = journeys.getJourneyV2Validation.bind(journeys);
|
|
13434
14423
|
target.getJourneyFilterOptions = journeys.getJourneyFilterOptions.bind(journeys);
|
|
@@ -13476,6 +14465,7 @@ function bindQualificationsMethods(target, qualifications) {
|
|
|
13476
14465
|
target.updateScenario = qualifications.updateScenario.bind(qualifications);
|
|
13477
14466
|
target.deleteScenario = qualifications.deleteScenario.bind(qualifications);
|
|
13478
14467
|
target.listTestChatRuns = qualifications.listTestChatRuns.bind(qualifications);
|
|
14468
|
+
target.listScenarioHealthSummaries = qualifications.listScenarioHealthSummaries.bind(qualifications);
|
|
13479
14469
|
target.getTestChatRun = qualifications.getTestChatRun.bind(qualifications);
|
|
13480
14470
|
target.startTestChatRun = qualifications.startTestChatRun.bind(qualifications);
|
|
13481
14471
|
target.evaluateTestChatRun = qualifications.evaluateTestChatRun.bind(qualifications);
|
|
@@ -13564,6 +14554,17 @@ function bindSupportRequestMethods(target, supportRequests) {
|
|
|
13564
14554
|
target.clickWorkspaceSupportRequestResource = supportRequests.clickWorkspaceSupportRequestResource.bind(supportRequests);
|
|
13565
14555
|
}
|
|
13566
14556
|
|
|
14557
|
+
// src/client/bindings/routing-rules.ts
|
|
14558
|
+
function bindRoutingRulesMethods(target, routingRules) {
|
|
14559
|
+
target.getRoutingRules = routingRules.getRoutingRules.bind(routingRules);
|
|
14560
|
+
target.getRoutingRule = routingRules.getRoutingRule.bind(routingRules);
|
|
14561
|
+
target.createRoutingRule = routingRules.createRoutingRule.bind(routingRules);
|
|
14562
|
+
target.updateRoutingRule = routingRules.updateRoutingRule.bind(routingRules);
|
|
14563
|
+
target.deleteRoutingRule = routingRules.deleteRoutingRule.bind(routingRules);
|
|
14564
|
+
target.reorderRoutingRules = routingRules.reorderRoutingRules.bind(routingRules);
|
|
14565
|
+
target.previewRoutingRule = routingRules.previewRoutingRule.bind(routingRules);
|
|
14566
|
+
}
|
|
14567
|
+
|
|
13567
14568
|
// src/client/client.ts
|
|
13568
14569
|
var GravityRailClient = class {
|
|
13569
14570
|
// WorkspaceInvitations is exposed publicly for backward compatibility
|
|
@@ -13589,6 +14590,9 @@ var GravityRailClient = class {
|
|
|
13589
14590
|
// Chats API
|
|
13590
14591
|
getChats;
|
|
13591
14592
|
getChat;
|
|
14593
|
+
getChatByUuid;
|
|
14594
|
+
saveChatBrowserStorage;
|
|
14595
|
+
clearChatBrowserStorage;
|
|
13592
14596
|
getChatBrowserLiveView;
|
|
13593
14597
|
getChatMachineResources;
|
|
13594
14598
|
getCurrentSmsChat;
|
|
@@ -13666,7 +14670,10 @@ var GravityRailClient = class {
|
|
|
13666
14670
|
unarchiveDataType;
|
|
13667
14671
|
cloneDataType;
|
|
13668
14672
|
getDataRecords;
|
|
14673
|
+
listAnonymousFormSubmissions;
|
|
14674
|
+
getAnonymousFormSubmission;
|
|
13669
14675
|
getDataRecord;
|
|
14676
|
+
getDataRecordByUuid;
|
|
13670
14677
|
createDataRecord;
|
|
13671
14678
|
updateDataRecord;
|
|
13672
14679
|
deleteDataRecord;
|
|
@@ -13692,12 +14699,10 @@ var GravityRailClient = class {
|
|
|
13692
14699
|
previewMemberWorkflowVoice;
|
|
13693
14700
|
setMemberWorkflowVoice;
|
|
13694
14701
|
clearMemberWorkflowVoice;
|
|
13695
|
-
getOwnedMembers;
|
|
13696
|
-
switchMember;
|
|
13697
|
-
clearMemberSwitch;
|
|
13698
14702
|
updateCurrentMember;
|
|
13699
14703
|
getWorkspaceMembers;
|
|
13700
14704
|
getWorkspaceMember;
|
|
14705
|
+
getMemberByUuid;
|
|
13701
14706
|
// Org-scoped, so deliberately absent from WORKSPACE_METHOD_NAMES: that proxy
|
|
13702
14707
|
// passes a workspace uuid as the first argument.
|
|
13703
14708
|
getOrgWorkspaceMember;
|
|
@@ -13706,6 +14711,9 @@ var GravityRailClient = class {
|
|
|
13706
14711
|
deleteMember;
|
|
13707
14712
|
archiveMember;
|
|
13708
14713
|
unarchiveMember;
|
|
14714
|
+
updateMemberByExternalId;
|
|
14715
|
+
archiveMemberByExternalId;
|
|
14716
|
+
unarchiveMemberByExternalId;
|
|
13709
14717
|
sendMemberPhoneConfirmation;
|
|
13710
14718
|
bulkCreateMembers;
|
|
13711
14719
|
previewImportMembers;
|
|
@@ -13783,6 +14791,7 @@ var GravityRailClient = class {
|
|
|
13783
14791
|
updateScenario;
|
|
13784
14792
|
deleteScenario;
|
|
13785
14793
|
listTestChatRuns;
|
|
14794
|
+
listScenarioHealthSummaries;
|
|
13786
14795
|
getTestChatRun;
|
|
13787
14796
|
startTestChatRun;
|
|
13788
14797
|
evaluateTestChatRun;
|
|
@@ -13860,6 +14869,7 @@ var GravityRailClient = class {
|
|
|
13860
14869
|
getJourney;
|
|
13861
14870
|
getJourneyAuthoring;
|
|
13862
14871
|
putJourneyDraft;
|
|
14872
|
+
deleteJourneyDraft;
|
|
13863
14873
|
putJourneyV2Definition;
|
|
13864
14874
|
getJourneyV2Validation;
|
|
13865
14875
|
getJourneyFilterOptions;
|
|
@@ -13894,6 +14904,41 @@ var GravityRailClient = class {
|
|
|
13894
14904
|
createJourneyNote;
|
|
13895
14905
|
updateJourneyNote;
|
|
13896
14906
|
deleteJourneyNote;
|
|
14907
|
+
updateBundle;
|
|
14908
|
+
listBundleInstallations;
|
|
14909
|
+
// Bundles API
|
|
14910
|
+
getSolutionRelease;
|
|
14911
|
+
listBundles;
|
|
14912
|
+
listBundleWorkflowCandidates;
|
|
14913
|
+
createBundle;
|
|
14914
|
+
getBundleDraft;
|
|
14915
|
+
replaceBundleDraft;
|
|
14916
|
+
publishBundle;
|
|
14917
|
+
listBundleVersions;
|
|
14918
|
+
getBundle;
|
|
14919
|
+
getBundleVersion;
|
|
14920
|
+
listBundleGrants;
|
|
14921
|
+
grantBundle;
|
|
14922
|
+
revokeBundleGrant;
|
|
14923
|
+
listResourceWorkflows;
|
|
14924
|
+
// Resource Workflows API — published Workflow catalog reads
|
|
14925
|
+
getResourceWorkflow;
|
|
14926
|
+
getResourceWorkflowRevision;
|
|
14927
|
+
// Installations API
|
|
14928
|
+
preflightBundleInstallation;
|
|
14929
|
+
installBundle;
|
|
14930
|
+
listInstallations;
|
|
14931
|
+
getInstallation;
|
|
14932
|
+
getInstallationReadiness;
|
|
14933
|
+
previewInstallationUpgrade;
|
|
14934
|
+
upgradeInstallation;
|
|
14935
|
+
setInstallationPolicy;
|
|
14936
|
+
unsubscribeInstallation;
|
|
14937
|
+
bindInstallationSlots;
|
|
14938
|
+
restoreInstallationForm;
|
|
14939
|
+
restoreInstallationWorkflowResources;
|
|
14940
|
+
reconcileInstallation;
|
|
14941
|
+
getThemeSettingsSchema;
|
|
13897
14942
|
// Experiments API
|
|
13898
14943
|
getExperiments;
|
|
13899
14944
|
getExperiment;
|
|
@@ -13986,7 +15031,6 @@ var GravityRailClient = class {
|
|
|
13986
15031
|
rebuildImportSkippedRules;
|
|
13987
15032
|
previewImportWorkspace;
|
|
13988
15033
|
getWorkspaceThemes;
|
|
13989
|
-
updateWorkspaceThemes;
|
|
13990
15034
|
getWorkspaceBySlug;
|
|
13991
15035
|
getWorkspaceScopes;
|
|
13992
15036
|
getUsageDashboard;
|
|
@@ -14025,10 +15069,15 @@ var GravityRailClient = class {
|
|
|
14025
15069
|
getVoiceTrustProducts;
|
|
14026
15070
|
syncVoiceTrustProducts;
|
|
14027
15071
|
createOrganizationWorkspace;
|
|
15072
|
+
getOrganizationWorkspace;
|
|
15073
|
+
updateOrganizationWorkspace;
|
|
14028
15074
|
getOrgBillingCustomer;
|
|
14029
15075
|
getA2PCampaignConfig;
|
|
14030
15076
|
updateA2PCampaignConfig;
|
|
14031
15077
|
getOrgWorkspaceUsage;
|
|
15078
|
+
updateOrganizationMember;
|
|
15079
|
+
listOrgWebhookEndpoints;
|
|
15080
|
+
getOrgWebhookEndpoint;
|
|
14032
15081
|
getVapidPublicKey;
|
|
14033
15082
|
registerPushSubscription;
|
|
14034
15083
|
unregisterPushSubscription;
|
|
@@ -14065,6 +15114,7 @@ var GravityRailClient = class {
|
|
|
14065
15114
|
logout;
|
|
14066
15115
|
requestCrossDomainToken;
|
|
14067
15116
|
exchangeToken;
|
|
15117
|
+
createRealtimeLoginToken;
|
|
14068
15118
|
getDomainMapping;
|
|
14069
15119
|
createSignup;
|
|
14070
15120
|
createAccount;
|
|
@@ -14154,6 +15204,7 @@ var GravityRailClient = class {
|
|
|
14154
15204
|
updateProject;
|
|
14155
15205
|
updatePlan;
|
|
14156
15206
|
resolveFilePath;
|
|
15207
|
+
downloadFileContents;
|
|
14157
15208
|
downloadFilesZip;
|
|
14158
15209
|
createFile;
|
|
14159
15210
|
uploadFile;
|
|
@@ -14214,7 +15265,6 @@ var GravityRailClient = class {
|
|
|
14214
15265
|
resetRoutineRuns;
|
|
14215
15266
|
previewSchedule;
|
|
14216
15267
|
previewRoutineVoiceReadiness;
|
|
14217
|
-
previewRoutineWorkflowAccess;
|
|
14218
15268
|
// Workflows API
|
|
14219
15269
|
getWorkflows;
|
|
14220
15270
|
getWorkflow;
|
|
@@ -14235,7 +15285,6 @@ var GravityRailClient = class {
|
|
|
14235
15285
|
createWorkflowFromTemplate;
|
|
14236
15286
|
getWorkflowTaskAssignmentStats;
|
|
14237
15287
|
getTaskChats;
|
|
14238
|
-
getWorkflowAccessValidation;
|
|
14239
15288
|
getWorkflowConfigValidation;
|
|
14240
15289
|
getWorkflowNotes;
|
|
14241
15290
|
createWorkflowNote;
|
|
@@ -14347,6 +15396,7 @@ var GravityRailClient = class {
|
|
|
14347
15396
|
previewTemplate;
|
|
14348
15397
|
getVariableRegistry;
|
|
14349
15398
|
getChatModels;
|
|
15399
|
+
getManagerModels;
|
|
14350
15400
|
getRealtimeModels;
|
|
14351
15401
|
getSTTModels;
|
|
14352
15402
|
getTTSModels;
|
|
@@ -14459,6 +15509,7 @@ var GravityRailClient = class {
|
|
|
14459
15509
|
getMondayConnectionBoardColumns;
|
|
14460
15510
|
getMondayConnectionBoardGroups;
|
|
14461
15511
|
getMondaySyncConfig;
|
|
15512
|
+
getMondaySyncLogs;
|
|
14462
15513
|
updateMondaySyncConfig;
|
|
14463
15514
|
getLinkedMondayMembers;
|
|
14464
15515
|
getMondayReconciliationMatches;
|
|
@@ -14580,10 +15631,12 @@ var GravityRailClient = class {
|
|
|
14580
15631
|
deleteSalesforce;
|
|
14581
15632
|
getSalesforceReconciliationMatches;
|
|
14582
15633
|
linkMemberToSalesforce;
|
|
15634
|
+
linkUnlinkedSalesforceMembersByIdentity;
|
|
14583
15635
|
bulkLinkMembersToSalesforce;
|
|
14584
15636
|
unlinkMemberFromSalesforce;
|
|
14585
15637
|
getLinkedSalesforceMembers;
|
|
14586
15638
|
getSalesforceSyncConfig;
|
|
15639
|
+
getSalesforceSyncLogs;
|
|
14587
15640
|
updateSalesforceSyncConfig;
|
|
14588
15641
|
resyncSalesforceLinkedMembers;
|
|
14589
15642
|
listSalesforceObjects;
|
|
@@ -14680,6 +15733,14 @@ var GravityRailClient = class {
|
|
|
14680
15733
|
closeWorkspaceSupportRequest;
|
|
14681
15734
|
reopenWorkspaceSupportRequest;
|
|
14682
15735
|
clickWorkspaceSupportRequestResource;
|
|
15736
|
+
// Routing Rules API
|
|
15737
|
+
getRoutingRules;
|
|
15738
|
+
getRoutingRule;
|
|
15739
|
+
createRoutingRule;
|
|
15740
|
+
updateRoutingRule;
|
|
15741
|
+
deleteRoutingRule;
|
|
15742
|
+
reorderRoutingRules;
|
|
15743
|
+
previewRoutingRule;
|
|
14683
15744
|
constructor(apiKey, baseUrl, customFetch) {
|
|
14684
15745
|
const apis = createApiModules(apiKey, baseUrl, customFetch);
|
|
14685
15746
|
this.apis = apis;
|
|
@@ -14701,6 +15762,8 @@ var GravityRailClient = class {
|
|
|
14701
15762
|
bindMotdMethods(this, apis.motd);
|
|
14702
15763
|
bindTrackedLinksMethods(this, apis.trackedLinks);
|
|
14703
15764
|
bindJourneysMethods(this, apis.journeys);
|
|
15765
|
+
bindBundlesMethods(this, apis.bundles, apis.resourceWorkflows);
|
|
15766
|
+
bindInstallationsMethods(this, apis.installations);
|
|
14704
15767
|
bindExperimentsMethods(this, apis.experiments);
|
|
14705
15768
|
bindOperatorMethods(this, apis.operatorGroups);
|
|
14706
15769
|
bindOrgMethods(this, apis.org);
|
|
@@ -14754,6 +15817,7 @@ var GravityRailClient = class {
|
|
|
14754
15817
|
bindCustomersMethods(this, apis.customers);
|
|
14755
15818
|
bindResellersMethods(this, apis.resellers);
|
|
14756
15819
|
bindSupportRequestMethods(this, apis.supportRequests);
|
|
15820
|
+
bindRoutingRulesMethods(this, apis.routingRules);
|
|
14757
15821
|
}
|
|
14758
15822
|
/**
|
|
14759
15823
|
* Return a workspace-scoped client facade.
|
|
@@ -14831,32 +15895,6 @@ var GravityRailClient = class {
|
|
|
14831
15895
|
}
|
|
14832
15896
|
});
|
|
14833
15897
|
}
|
|
14834
|
-
/**
|
|
14835
|
-
* Set the acting member UUID for member identity switching.
|
|
14836
|
-
* When set, all API requests will include the X-Acting-Member header.
|
|
14837
|
-
* The backend will validate that the authenticated account owns this member
|
|
14838
|
-
* and use it as the effective identity for the request.
|
|
14839
|
-
* Propagates to all API modules.
|
|
14840
|
-
*/
|
|
14841
|
-
setActingMember(memberUuid) {
|
|
14842
|
-
Object.values(this.apis).forEach((api) => {
|
|
14843
|
-
if (typeof api.setActingMember === "function") {
|
|
14844
|
-
api.setActingMember(memberUuid);
|
|
14845
|
-
}
|
|
14846
|
-
});
|
|
14847
|
-
}
|
|
14848
|
-
/**
|
|
14849
|
-
* Get the current acting member UUID.
|
|
14850
|
-
* Returns undefined if no member switch is active.
|
|
14851
|
-
*/
|
|
14852
|
-
getActingMember() {
|
|
14853
|
-
for (const api of Object.values(this.apis)) {
|
|
14854
|
-
if (typeof api.getActingMember === "function") {
|
|
14855
|
-
return api.getActingMember();
|
|
14856
|
-
}
|
|
14857
|
-
}
|
|
14858
|
-
return void 0;
|
|
14859
|
-
}
|
|
14860
15898
|
};
|
|
14861
15899
|
|
|
14862
15900
|
// src/workspace-builder/resource.ts
|
|
@@ -15908,8 +16946,8 @@ var JourneyV2Builder = class extends WorkspaceBuilderResource {
|
|
|
15908
16946
|
*
|
|
15909
16947
|
* A different rule set from the legacy builder's on purpose. "No incoming
|
|
15910
16948
|
* edge" has no meaning in a timeline — position is the order — and the v2
|
|
15911
|
-
*
|
|
15912
|
-
*
|
|
16949
|
+
* checks here cover branch shape and Ending conditions. Steps without
|
|
16950
|
+
* actions pass through, with or without a wait.
|
|
15913
16951
|
*/
|
|
15914
16952
|
validate() {
|
|
15915
16953
|
const problems = [];
|
|
@@ -15918,19 +16956,6 @@ var JourneyV2Builder = class extends WorkspaceBuilderResource {
|
|
|
15918
16956
|
`journey '${this.name}' has no touches \u2014 an empty timeline has nothing to execute.`
|
|
15919
16957
|
);
|
|
15920
16958
|
}
|
|
15921
|
-
const armHeads = new Set(
|
|
15922
|
-
this.allRoutes().map((route) => route.touches[0]).filter(Boolean)
|
|
15923
|
-
);
|
|
15924
|
-
this.allTouches().forEach((touch) => {
|
|
15925
|
-
if (touch.hasOutreach) return;
|
|
15926
|
-
const wait = touch.options.wait;
|
|
15927
|
-
const isFirst = this.touches[0] === touch;
|
|
15928
|
-
const isExplicitWait = !isFirst && !armHeads.has(touch) && (wait?.afterDays !== void 0 || !!wait?.when || wait?.filterId !== void 0);
|
|
15929
|
-
if (isExplicitWait) return;
|
|
15930
|
-
problems.push(
|
|
15931
|
-
`touch '${touch.name}' has no JOURNEY_STEP_EXECUTE action \u2014 a member reaching it gets nothing. Add one, or give it a wait so it is an explicit grace period.`
|
|
15932
|
-
);
|
|
15933
|
-
});
|
|
15934
16959
|
for (const touch of this.allTouches()) {
|
|
15935
16960
|
const branch = touch._branch;
|
|
15936
16961
|
if (!branch) continue;
|
|
@@ -15952,13 +16977,6 @@ var JourneyV2Builder = class extends WorkspaceBuilderResource {
|
|
|
15952
16977
|
`the Otherwise route of the branch after touch '${touch.name}' is not last; it is taken immediately, so any route after it can never be reached.`
|
|
15953
16978
|
);
|
|
15954
16979
|
}
|
|
15955
|
-
for (const route of branch.routes) {
|
|
15956
|
-
if (!route.touches.length && !route.options.continueAt) {
|
|
15957
|
-
problems.push(
|
|
15958
|
-
`route '${route.name}' has no target \u2014 give it at least one touch, or a \`continueAt\` naming the touch it continues to.`
|
|
15959
|
-
);
|
|
15960
|
-
}
|
|
15961
|
-
}
|
|
15962
16980
|
}
|
|
15963
16981
|
for (const ending of this.endings) {
|
|
15964
16982
|
if (!ending.when?.trim() && ending.filterId === void 0) {
|
|
@@ -16343,34 +17361,6 @@ function buildV2Wait(wait, touchIndex) {
|
|
|
16343
17361
|
return { kind: "none", ...extras };
|
|
16344
17362
|
}
|
|
16345
17363
|
|
|
16346
|
-
// src/workspace-builder/role-update.ts
|
|
16347
|
-
var RoleUpdate = class extends WorkspaceBuilderResource {
|
|
16348
|
-
constructor(roleId, workflowIds, dataTypeIds) {
|
|
16349
|
-
super();
|
|
16350
|
-
this.roleId = roleId;
|
|
16351
|
-
this.workflowIds = workflowIds;
|
|
16352
|
-
this.dataTypeIds = dataTypeIds;
|
|
16353
|
-
}
|
|
16354
|
-
roleId;
|
|
16355
|
-
workflowIds;
|
|
16356
|
-
dataTypeIds;
|
|
16357
|
-
planLine() {
|
|
16358
|
-
const parts = [];
|
|
16359
|
-
if (this.workflowIds) parts.push(`workflows=${JSON.stringify(this.workflowIds)}`);
|
|
16360
|
-
if (this.dataTypeIds) parts.push(`dataTypes=${JSON.stringify(this.dataTypeIds)}`);
|
|
16361
|
-
return `RoleUpdate: roleId=${this.roleId}${parts.length ? ` (${parts.join(", ")})` : ""}`;
|
|
16362
|
-
}
|
|
16363
|
-
async apply(client) {
|
|
16364
|
-
if (this._existed) return;
|
|
16365
|
-
const payload = {};
|
|
16366
|
-
if (this.workflowIds) payload.workflowIds = this.workflowIds;
|
|
16367
|
-
if (this.dataTypeIds) payload.dataTypeIds = this.dataTypeIds;
|
|
16368
|
-
if (Object.keys(payload).length) await client.updateMemberRole(this.roleId, payload);
|
|
16369
|
-
this._id = this.roleId;
|
|
16370
|
-
this._created = true;
|
|
16371
|
-
}
|
|
16372
|
-
};
|
|
16373
|
-
|
|
16374
17364
|
// src/workspace-builder/workflows.ts
|
|
16375
17365
|
var PERM_KEYS = {
|
|
16376
17366
|
canRead: "canRead",
|
|
@@ -16623,7 +17613,6 @@ var PHASES = /* @__PURE__ */ new Map([
|
|
|
16623
17613
|
[AgentBuilder, 1],
|
|
16624
17614
|
[WorkflowBuilder, 2],
|
|
16625
17615
|
[TaskBuilder, 3],
|
|
16626
|
-
[RoleUpdate, 4],
|
|
16627
17616
|
[MemberFilterBuilder, 5],
|
|
16628
17617
|
[RoutineBuilder, 6],
|
|
16629
17618
|
[NotificationRuleBuilder, 6],
|
|
@@ -16645,10 +17634,6 @@ async function collectPages(fetchPage) {
|
|
|
16645
17634
|
}
|
|
16646
17635
|
return all;
|
|
16647
17636
|
}
|
|
16648
|
-
function sameIdSet(left, right) {
|
|
16649
|
-
const target = new Set(right);
|
|
16650
|
-
return target.size === new Set(left).size && left.every((id) => target.has(id));
|
|
16651
|
-
}
|
|
16652
17637
|
function notificationRuleKey(noticeType, memberId, workflowId) {
|
|
16653
17638
|
return JSON.stringify([noticeType, memberId, workflowId]);
|
|
16654
17639
|
}
|
|
@@ -16727,11 +17712,6 @@ var WorkspaceBuilder = class {
|
|
|
16727
17712
|
this.resources.push(rule);
|
|
16728
17713
|
return rule;
|
|
16729
17714
|
}
|
|
16730
|
-
roleUpdate(roleId, workflowIds, dataTypeIds) {
|
|
16731
|
-
const update = new RoleUpdate(roleId, workflowIds, dataTypeIds);
|
|
16732
|
-
this.resources.push(update);
|
|
16733
|
-
return update;
|
|
16734
|
-
}
|
|
16735
17715
|
plan() {
|
|
16736
17716
|
const resources = this.sortedResources();
|
|
16737
17717
|
writeLine(`
|
|
@@ -16992,45 +17972,9 @@ Done! Created ${count} resources.`);
|
|
|
16992
17972
|
}
|
|
16993
17973
|
}
|
|
16994
17974
|
}
|
|
16995
|
-
await this.resolveExistingRoleUpdates(resources);
|
|
16996
17975
|
await this.resolveExistingWorkflows(resources, workflowNames);
|
|
16997
17976
|
await this.resolveExistingNotificationRules(resources);
|
|
16998
17977
|
}
|
|
16999
|
-
/**
|
|
17000
|
-
* Adopt a role update whose grants the server already has.
|
|
17001
|
-
*
|
|
17002
|
-
* A role update is a replace-semantics PUT, not a create, so its identity is
|
|
17003
|
-
* the role id and "already applied" means the id sets match exactly. Subset
|
|
17004
|
-
* would be wrong: `roleUpdate(7, [])` asks to *clear* the role's workflow
|
|
17005
|
-
* access, and treating that as satisfied by a role that still has grants
|
|
17006
|
-
* would silently skip a real change.
|
|
17007
|
-
*
|
|
17008
|
-
* Only the fields this update declares are compared — an update that passes
|
|
17009
|
-
* `workflowIds` and omits `dataTypeIds` never touches data-type access, so
|
|
17010
|
-
* that access cannot make it stale.
|
|
17011
|
-
*/
|
|
17012
|
-
async resolveExistingRoleUpdates(resources) {
|
|
17013
|
-
const updates = resources.filter(
|
|
17014
|
-
(resource) => resource instanceof RoleUpdate
|
|
17015
|
-
);
|
|
17016
|
-
if (!updates.length) return;
|
|
17017
|
-
const rolesById = new Map(
|
|
17018
|
-
(await this.client.getMemberRoles()).map((role) => [role.id, role])
|
|
17019
|
-
);
|
|
17020
|
-
for (const update of updates) {
|
|
17021
|
-
const role = rolesById.get(update.roleId);
|
|
17022
|
-
if (!role) continue;
|
|
17023
|
-
const workflowsSettled = update.workflowIds === void 0 || sameIdSet(
|
|
17024
|
-
update.workflowIds,
|
|
17025
|
-
(role.workflowAccess ?? []).map((access) => access.workflowId)
|
|
17026
|
-
);
|
|
17027
|
-
const dataTypesSettled = update.dataTypeIds === void 0 || sameIdSet(
|
|
17028
|
-
update.dataTypeIds,
|
|
17029
|
-
(role.dataTypeAccess ?? []).map((access) => access.dataTypeId)
|
|
17030
|
-
);
|
|
17031
|
-
if (workflowsSettled && dataTypesSettled) update.adopt(role);
|
|
17032
|
-
}
|
|
17033
|
-
}
|
|
17034
17978
|
/**
|
|
17035
17979
|
* Adopt notification rules the server already has.
|
|
17036
17980
|
*
|
|
@@ -17320,7 +18264,6 @@ function assertUniqueJourneyNames(journeys) {
|
|
|
17320
18264
|
}
|
|
17321
18265
|
}
|
|
17322
18266
|
function resourceKey(resource) {
|
|
17323
|
-
if (resource instanceof RoleUpdate) return "roleUpdates";
|
|
17324
18267
|
if (resource instanceof FormBuilder) return "forms";
|
|
17325
18268
|
if (resource instanceof MemberLabelBuilder) return "labels";
|
|
17326
18269
|
if (resource instanceof WorkflowBuilder) return "workflows";
|
|
@@ -17444,7 +18387,6 @@ function writeScopeForResource(resource) {
|
|
|
17444
18387
|
if (resource instanceof JourneyBuilder || resource instanceof JourneyStepBuilder || resource instanceof JourneyV2Builder) {
|
|
17445
18388
|
return "journeys:write";
|
|
17446
18389
|
}
|
|
17447
|
-
if (resource instanceof RoleUpdate) return "member_roles:write";
|
|
17448
18390
|
return null;
|
|
17449
18391
|
}
|
|
17450
18392
|
function scopeRetryHint(resource) {
|
|
@@ -17523,9 +18465,11 @@ var AbilityTypeSlugs = {
|
|
|
17523
18465
|
GOOGLE_DRIVE: "integration:google_drive",
|
|
17524
18466
|
GOOGLE_SHEETS: "integration:google_sheets",
|
|
17525
18467
|
CHARLESTON_PMD_PAGING: "integration:charleston_pmd_paging",
|
|
18468
|
+
COSAN_PATHWAYS_SCHEDULING: "integration:cosan_pathways_scheduling",
|
|
17526
18469
|
// Communication
|
|
17527
18470
|
PHONE_CALL_TOOLS: "communication:phone_call_tools",
|
|
17528
18471
|
SEND_SMS: "communication:send_sms",
|
|
18472
|
+
SEND_EMAIL: "communication:send_email",
|
|
17529
18473
|
SEND_WHATSAPP: "communication:send_whatsapp",
|
|
17530
18474
|
MEMBER_ACCESS: "communication:member_access",
|
|
17531
18475
|
AUDIO_PLAYBACK: "communication:audio_playback",
|
|
@@ -17540,6 +18484,8 @@ var AbilityTypeSlugs = {
|
|
|
17540
18484
|
MANAGE_WORKSPACE: "delegation:manage_workspace",
|
|
17541
18485
|
// Workflow
|
|
17542
18486
|
WORKFLOW_RUN: "workflow:run",
|
|
18487
|
+
// Access
|
|
18488
|
+
MEMBER_ROLE_GATE: "access:member_role_gate",
|
|
17543
18489
|
// Commerce
|
|
17544
18490
|
RESELLER: "commerce:reseller",
|
|
17545
18491
|
// System (auto-injected, hidden from users)
|
|
@@ -17738,12 +18684,6 @@ var AbilityConfigIssueSeverity = {
|
|
|
17738
18684
|
warning: "warning",
|
|
17739
18685
|
error: "error"
|
|
17740
18686
|
};
|
|
17741
|
-
var WorkflowAccessWarningResourceType = {
|
|
17742
|
-
form: "form",
|
|
17743
|
-
file: "file",
|
|
17744
|
-
folder: "folder",
|
|
17745
|
-
calendar: "calendar"
|
|
17746
|
-
};
|
|
17747
18687
|
|
|
17748
18688
|
// src/types/generated/workflow.ts
|
|
17749
18689
|
var WorkflowRoutingMode = {
|
|
@@ -17784,7 +18724,8 @@ var ImportSkippedRuleResponseParentKind = {
|
|
|
17784
18724
|
var ImportSkippedRuleResponseReasonCode = {
|
|
17785
18725
|
missing_binding: "missing_binding",
|
|
17786
18726
|
invalid_event_rule_cel: "invalid_event_rule_cel",
|
|
17787
|
-
unresolved_journey_scope: "unresolved_journey_scope"
|
|
18727
|
+
unresolved_journey_scope: "unresolved_journey_scope",
|
|
18728
|
+
missing_source_workflow: "missing_source_workflow"
|
|
17788
18729
|
};
|
|
17789
18730
|
var ImportSkippedRuleResponseStatus = {
|
|
17790
18731
|
outstanding: "outstanding",
|
|
@@ -17916,14 +18857,14 @@ function isChatType(value) {
|
|
|
17916
18857
|
}
|
|
17917
18858
|
|
|
17918
18859
|
// src/constants/models.ts
|
|
17919
|
-
var DEFAULT_CHAT_MODEL = "
|
|
17920
|
-
var DEFAULT_AGENT_CHAT_MODEL = "openai:chat:gpt-
|
|
18860
|
+
var DEFAULT_CHAT_MODEL = "openai:chat:gpt-6-luna";
|
|
18861
|
+
var DEFAULT_AGENT_CHAT_MODEL = "openai:chat:gpt-6-luna";
|
|
17921
18862
|
var DEFAULT_AGENT_REALTIME_MODEL = "xai:realtime:voice-agent-2";
|
|
17922
18863
|
var DEFAULT_AGENT_REALTIME_MODEL_CONFIG = {
|
|
17923
18864
|
ttsModel: "native",
|
|
17924
18865
|
voiceModel: "xai:voice:cosmo"
|
|
17925
18866
|
};
|
|
17926
|
-
var DEFAULT_VOICE_INFERENCE_MODEL = "openai:chat:gpt-
|
|
18867
|
+
var DEFAULT_VOICE_INFERENCE_MODEL = "openai:chat:gpt-6-luna";
|
|
17927
18868
|
var DEFAULT_CUSTOM_VOICE_MODEL = "xai:voice:lux";
|
|
17928
18869
|
|
|
17929
18870
|
// src/types/resource-metadata.ts
|
|
@@ -18055,6 +18996,14 @@ var ActivityWindowBasis = {
|
|
|
18055
18996
|
absolute: "absolute",
|
|
18056
18997
|
workspace_local: "workspace_local"
|
|
18057
18998
|
};
|
|
18999
|
+
var FeedCursorRejection = {
|
|
19000
|
+
malformed: "malformed",
|
|
19001
|
+
signature: "signature",
|
|
19002
|
+
version: "version",
|
|
19003
|
+
expired: "expired",
|
|
19004
|
+
scope_mismatch: "scope_mismatch",
|
|
19005
|
+
query_mismatch: "query_mismatch"
|
|
19006
|
+
};
|
|
18058
19007
|
|
|
18059
19008
|
// src/types/generated/family.ts
|
|
18060
19009
|
var ActivityEventFamily = {
|
|
@@ -18087,6 +19036,7 @@ var ActivityCapability = {
|
|
|
18087
19036
|
"operator:read": "operator:read",
|
|
18088
19037
|
"org:read": "org:read",
|
|
18089
19038
|
"phones:read": "phones:read",
|
|
19039
|
+
"records:read": "records:read",
|
|
18090
19040
|
"workflows:read": "workflows:read",
|
|
18091
19041
|
"workspace:read": "workspace:read"
|
|
18092
19042
|
};
|
|
@@ -18109,16 +19059,19 @@ var ActivityEventType = {
|
|
|
18109
19059
|
chatawaiting_human: "chat.awaiting_human",
|
|
18110
19060
|
chathuman_replied: "chat.human_replied",
|
|
18111
19061
|
chatcall_ended: "chat.call_ended",
|
|
19062
|
+
chatsummary: "chat.summary",
|
|
18112
19063
|
escalationopened: "escalation.opened",
|
|
18113
19064
|
escalationresolved: "escalation.resolved",
|
|
18114
19065
|
callstarted: "call.started",
|
|
18115
19066
|
callcompleted: "call.completed",
|
|
18116
19067
|
callmissed: "call.missed",
|
|
19068
|
+
callsummary: "call.summary",
|
|
18117
19069
|
presencewent_online: "presence.went_online",
|
|
18118
19070
|
presencewent_offline: "presence.went_offline",
|
|
18119
19071
|
operator_groupmember_added: "operator_group.member_added",
|
|
18120
19072
|
operator_groupmember_removed: "operator_group.member_removed",
|
|
18121
19073
|
voicemailreceived: "voicemail.received",
|
|
19074
|
+
voicemailtranscribed: "voicemail.transcribed",
|
|
18122
19075
|
voicemaillistened: "voicemail.listened",
|
|
18123
19076
|
routinestarted: "routine.started",
|
|
18124
19077
|
routinecompleted: "routine.completed",
|
|
@@ -18134,7 +19087,9 @@ var ActivityEventType = {
|
|
|
18134
19087
|
phone_numberarchived: "phone_number.archived",
|
|
18135
19088
|
domainlinked: "domain.linked",
|
|
18136
19089
|
domainverified: "domain.verified",
|
|
18137
|
-
configupdated: "config.updated"
|
|
19090
|
+
configupdated: "config.updated",
|
|
19091
|
+
data_recordcreated: "data_record.created",
|
|
19092
|
+
data_recordupdated: "data_record.updated"
|
|
18138
19093
|
};
|
|
18139
19094
|
var ActivityVisibility = {
|
|
18140
19095
|
workspace: "workspace",
|
|
@@ -18149,7 +19104,8 @@ var ActorKind = {
|
|
|
18149
19104
|
connection: "connection",
|
|
18150
19105
|
member: "member",
|
|
18151
19106
|
org_account: "org_account",
|
|
18152
|
-
system: "system"
|
|
19107
|
+
system: "system",
|
|
19108
|
+
unattributed: "unattributed"
|
|
18153
19109
|
};
|
|
18154
19110
|
var EntityKind = {
|
|
18155
19111
|
account: "account",
|
|
@@ -18181,7 +19137,8 @@ var EntityKind = {
|
|
|
18181
19137
|
purchase: "purchase",
|
|
18182
19138
|
subscription: "subscription",
|
|
18183
19139
|
data_type: "data_type",
|
|
18184
|
-
workspace_config: "workspace_config"
|
|
19140
|
+
workspace_config: "workspace_config",
|
|
19141
|
+
data_record: "data_record"
|
|
18185
19142
|
};
|
|
18186
19143
|
|
|
18187
19144
|
// src/scopes.ts
|
|
@@ -18209,6 +19166,7 @@ var ScopeCategory = /* @__PURE__ */ ((ScopeCategory2) => {
|
|
|
18209
19166
|
ScopeCategory2["APPS"] = "apps";
|
|
18210
19167
|
ScopeCategory2["LABELS"] = "labels";
|
|
18211
19168
|
ScopeCategory2["ANALYTICS"] = "analytics";
|
|
19169
|
+
ScopeCategory2["ANONYMOUS_SUBMISSIONS"] = "anonymous_submissions";
|
|
18212
19170
|
ScopeCategory2["OPERATOR"] = "operator";
|
|
18213
19171
|
ScopeCategory2["EXPORT"] = "export";
|
|
18214
19172
|
ScopeCategory2["ORG"] = "org";
|
|
@@ -18671,6 +19629,14 @@ var SCOPES = {
|
|
|
18671
19629
|
description: "View analytics and reports"
|
|
18672
19630
|
},
|
|
18673
19631
|
// =========================================================================
|
|
19632
|
+
// ANONYMOUS FORM SUBMISSIONS (read-only: submissions are immutable)
|
|
19633
|
+
// =========================================================================
|
|
19634
|
+
"anonymous_submissions:read": {
|
|
19635
|
+
name: "anonymous_submissions:read",
|
|
19636
|
+
category: "anonymous_submissions" /* ANONYMOUS_SUBMISSIONS */,
|
|
19637
|
+
description: "View what anonymous visitors submitted on anonymous Forms"
|
|
19638
|
+
},
|
|
19639
|
+
// =========================================================================
|
|
18674
19640
|
// EXPORT
|
|
18675
19641
|
// =========================================================================
|
|
18676
19642
|
"export:read": {
|
|
@@ -18903,6 +19869,49 @@ var ChatInteractionController = class {
|
|
|
18903
19869
|
this.pending = void 0;
|
|
18904
19870
|
}
|
|
18905
19871
|
};
|
|
19872
|
+
|
|
19873
|
+
// src/helpers/member-import.ts
|
|
19874
|
+
function toSafeMemberImportPreview(preview) {
|
|
19875
|
+
return {
|
|
19876
|
+
previewPlanToken: preview.previewPlanToken,
|
|
19877
|
+
totalRows: preview.totalRows,
|
|
19878
|
+
summary: preview.summary,
|
|
19879
|
+
rows: preview.rows.map((row) => ({
|
|
19880
|
+
row: row.row,
|
|
19881
|
+
action: row.action,
|
|
19882
|
+
memberId: row.match?.memberId,
|
|
19883
|
+
matchType: row.match?.matchType,
|
|
19884
|
+
conflict: row.conflict ? { code: row.conflict.code, fields: row.conflict.fields } : void 0,
|
|
19885
|
+
proposedChanges: row.proposedChanges,
|
|
19886
|
+
sharedContacts: row.sharedContacts
|
|
19887
|
+
}))
|
|
19888
|
+
};
|
|
19889
|
+
}
|
|
19890
|
+
function toSafeMemberImportSummary(event) {
|
|
19891
|
+
return {
|
|
19892
|
+
total: event.total,
|
|
19893
|
+
created: event.created,
|
|
19894
|
+
updated: event.updated,
|
|
19895
|
+
unchanged: event.unchanged,
|
|
19896
|
+
failed: event.failed,
|
|
19897
|
+
conflicted: event.conflicted,
|
|
19898
|
+
skipped: event.skipped,
|
|
19899
|
+
failedRows: event.failedRows,
|
|
19900
|
+
conflictRows: event.conflictRows,
|
|
19901
|
+
skippedRows: event.skippedRows,
|
|
19902
|
+
conflicts: event.conflicts?.map(({ row, code, fields, member_id }) => ({
|
|
19903
|
+
row,
|
|
19904
|
+
code,
|
|
19905
|
+
fields,
|
|
19906
|
+
memberId: member_id
|
|
19907
|
+
})),
|
|
19908
|
+
updatedMembers: event.updatedMembers?.map(({ row, memberId, changes }) => ({
|
|
19909
|
+
row,
|
|
19910
|
+
memberId,
|
|
19911
|
+
changes
|
|
19912
|
+
}))
|
|
19913
|
+
};
|
|
19914
|
+
}
|
|
18906
19915
|
// Annotate the CommonJS export names for ESM import in node:
|
|
18907
19916
|
0 && (module.exports = {
|
|
18908
19917
|
AGENT_NOTE_ORIGINS,
|
|
@@ -18933,6 +19942,8 @@ var ChatInteractionController = class {
|
|
|
18933
19942
|
BaseApiClient,
|
|
18934
19943
|
BuildersApi,
|
|
18935
19944
|
BulkMemberResultStatus,
|
|
19945
|
+
BundleGrantRequestGranteeType,
|
|
19946
|
+
BundlesApi,
|
|
18936
19947
|
BusinessIndustry,
|
|
18937
19948
|
BusinessType,
|
|
18938
19949
|
CELApi,
|
|
@@ -18949,7 +19960,11 @@ var ChatInteractionController = class {
|
|
|
18949
19960
|
ChatInteractionController,
|
|
18950
19961
|
ChatMuteReason,
|
|
18951
19962
|
ConsentMethod,
|
|
19963
|
+
CreateMemberContactPointRequestContactType,
|
|
19964
|
+
CreateMemberContactPointRequestPurpose,
|
|
19965
|
+
CreateMemberContactPointRequestSharing,
|
|
18952
19966
|
CriterionType,
|
|
19967
|
+
CrmActivityKind,
|
|
18953
19968
|
DEFAULT_AGENT_CHAT_MODEL,
|
|
18954
19969
|
DEFAULT_AGENT_REALTIME_MODEL,
|
|
18955
19970
|
DEFAULT_AGENT_REALTIME_MODEL_CONFIG,
|
|
@@ -18972,10 +19987,12 @@ var ChatInteractionController = class {
|
|
|
18972
19987
|
EventRuleObjectType,
|
|
18973
19988
|
FeatureCategory,
|
|
18974
19989
|
FeatureVisibility,
|
|
19990
|
+
FeedCursorRejection,
|
|
18975
19991
|
FhirClientType,
|
|
18976
19992
|
FhirConnectionState,
|
|
18977
19993
|
FhirVendor,
|
|
18978
19994
|
FormBuilder,
|
|
19995
|
+
FormBundleItemRecordScope,
|
|
18979
19996
|
GravityRailClient,
|
|
18980
19997
|
ImportSkippedRuleResourceGroupResourceType,
|
|
18981
19998
|
ImportSkippedRuleResponseNeededResourceTypesItem,
|
|
@@ -18984,6 +20001,8 @@ var ChatInteractionController = class {
|
|
|
18984
20001
|
ImportSkippedRuleResponseStatus,
|
|
18985
20002
|
InboundFaxStatusValues,
|
|
18986
20003
|
IndexStatus,
|
|
20004
|
+
InstallationItemChangeChange,
|
|
20005
|
+
InstallationsApi,
|
|
18987
20006
|
InvitationStatus,
|
|
18988
20007
|
JobPosition,
|
|
18989
20008
|
JourneyBuilder,
|
|
@@ -19034,13 +20053,20 @@ var ChatInteractionController = class {
|
|
|
19034
20053
|
REALTIME_MODEL_OPENAI_2,
|
|
19035
20054
|
REALTIME_MODEL_OPENAI_MINI,
|
|
19036
20055
|
RefResolutionStatus,
|
|
20056
|
+
ReferenceTargetInputKind,
|
|
19037
20057
|
Region,
|
|
19038
20058
|
RegistrationIdentifier,
|
|
19039
20059
|
RelatedMemberRole,
|
|
19040
20060
|
RelationshipCardinality,
|
|
19041
20061
|
Resource,
|
|
19042
|
-
|
|
20062
|
+
ResourceWorkflowsApi,
|
|
20063
|
+
RevisionHistorySegment,
|
|
19043
20064
|
RoutineBuilder,
|
|
20065
|
+
RoutingActionType,
|
|
20066
|
+
RoutingAudience,
|
|
20067
|
+
RoutingChannel,
|
|
20068
|
+
RoutingTimeWindow,
|
|
20069
|
+
RunHealthCategory,
|
|
19044
20070
|
SCOPES,
|
|
19045
20071
|
SCOPE_PRESETS,
|
|
19046
20072
|
SMS_DELIVERY_FAILURE_STATUSES,
|
|
@@ -19048,10 +20074,20 @@ var ChatInteractionController = class {
|
|
|
19048
20074
|
STT_MODEL_DEEPGRAM_FLUX_MULTI,
|
|
19049
20075
|
STT_MODEL_DEEPGRAM_FLUX_MULTI_SELFHOST,
|
|
19050
20076
|
STT_MODEL_DEEPGRAM_FLUX_SELFHOST,
|
|
20077
|
+
ScalarTargetInputKind,
|
|
20078
|
+
ScenarioHealthCaption,
|
|
20079
|
+
ScenarioHealthHeadline,
|
|
20080
|
+
ScenarioHealthSampleNote,
|
|
20081
|
+
ScenarioHealthState,
|
|
20082
|
+
ScenarioRunBlocker,
|
|
19051
20083
|
Scope,
|
|
19052
20084
|
ScopeCategory,
|
|
19053
20085
|
ScopeManager,
|
|
20086
|
+
SendingNextStep,
|
|
20087
|
+
SendingStopState,
|
|
20088
|
+
SetInstallationPolicyRequestUpgradePolicy,
|
|
19054
20089
|
SiteDnsRecordType,
|
|
20090
|
+
SolutionReleaseResponseSlug,
|
|
19055
20091
|
SupervisorsApi,
|
|
19056
20092
|
TTS_MODEL_AWS_POLLY_GENERATIVE,
|
|
19057
20093
|
TTS_MODEL_AWS_POLLY_NEURAL,
|
|
@@ -19066,11 +20102,11 @@ var ChatInteractionController = class {
|
|
|
19066
20102
|
UiPromptPresentedKindValues,
|
|
19067
20103
|
UiPromptResponseKindValues,
|
|
19068
20104
|
UiPromptResponseStatusValues,
|
|
20105
|
+
UpdateMemberContactPointRequestContactType,
|
|
20106
|
+
UpdateMemberContactPointRequestPurpose,
|
|
20107
|
+
UpdateMemberContactPointRequestSharing,
|
|
19069
20108
|
WIDGET_SLUGS,
|
|
19070
|
-
WORKFLOW_IMPLICIT_USE_SCOPE,
|
|
19071
|
-
WorkflowAccessWarningResourceType,
|
|
19072
20109
|
WorkflowBuilder,
|
|
19073
|
-
WorkflowResourceType,
|
|
19074
20110
|
WorkflowRoutingMode,
|
|
19075
20111
|
WorkspaceBuilder,
|
|
19076
20112
|
WorkspaceBuilderResource,
|
|
@@ -19110,10 +20146,9 @@ var ChatInteractionController = class {
|
|
|
19110
20146
|
isSMSDeliveryFailureStatus,
|
|
19111
20147
|
parseOrgAuthChallenge,
|
|
19112
20148
|
requiresAssistantParticipant,
|
|
19113
|
-
roleCanUseWorkflow,
|
|
19114
|
-
roleImplicitWorkflowUseScope,
|
|
19115
|
-
roleWorkflowAccess,
|
|
19116
20149
|
runWorkspaceScript,
|
|
20150
|
+
toSafeMemberImportPreview,
|
|
20151
|
+
toSafeMemberImportSummary,
|
|
19117
20152
|
usesBuiltinAssistant,
|
|
19118
20153
|
validateFeatureDependencies
|
|
19119
20154
|
});
|