@apex-inc/sdk 0.1.1 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -20,6 +20,28 @@ export interface AssignVariantResult {
20
20
  export declare function createManagementClient(cfg: ManagementConfig): {
21
21
  listExperiments(): Promise<unknown[]>;
22
22
  assignVariant(experimentId: string, visitorId: string): Promise<AssignVariantResult>;
23
+ /** Fetch a single experiment (unified shape). */
24
+ getExperiment(id: string): Promise<unknown>;
25
+ /**
26
+ * Computed results + the shared readiness verdict
27
+ * (collecting | decisive | inconclusive | guardrail) for any surface.
28
+ */
29
+ getExperimentResults(id: string): Promise<unknown>;
30
+ /**
31
+ * Promote the experiment's winner (re-verifies the readiness gate
32
+ * server-side; pass `force` to override). Winner content is written into
33
+ * the canonical communication as a new version.
34
+ */
35
+ promoteExperiment(id: string, opts?: {
36
+ force?: boolean;
37
+ winnerKey?: string;
38
+ }): Promise<unknown>;
39
+ /** Append a content variant to a communication (composer-columns model; an experiment arm). */
40
+ createCommVariant(commId: string, opts?: {
41
+ label?: string;
42
+ }): Promise<unknown>;
43
+ /** List the content variants (`content.variants[]`) of a communication. */
44
+ listCommVariants(commId: string): Promise<unknown>;
23
45
  recommendCommunications(): Promise<unknown>;
24
46
  generateCommunications(catalogEntryIds: string[]): Promise<unknown[]>;
25
47
  listCommunications(): Promise<unknown[]>;
@@ -46,5 +68,266 @@ export declare function createManagementClient(cfg: ManagementConfig): {
46
68
  promoteCommExperimentWinner(id: string): Promise<void>;
47
69
  getEventTaxonomy(): Promise<unknown[]>;
48
70
  getEventIntegrationStatus(): Promise<unknown[]>;
71
+ listPrograms(): Promise<unknown[]>;
72
+ createProgram(params: {
73
+ name: string;
74
+ description?: string;
75
+ vertical: string;
76
+ commissionStructure: {
77
+ type: "cpa" | "revshare";
78
+ amountUsd?: number;
79
+ percentage?: number;
80
+ appliesTo: string;
81
+ };
82
+ visibility?: "public" | "private";
83
+ approvalMode?: "auto" | "manual";
84
+ }): Promise<unknown>;
85
+ updateProgram(programId: string, updates: Record<string, unknown>): Promise<unknown>;
86
+ listProgramMembers(programId: string): Promise<unknown[]>;
87
+ /** Apply program default commission to every existing member (respects overrides). */
88
+ applyProgramDefaultToMembers(programId: string): Promise<{
89
+ updated: number;
90
+ }>;
91
+ /** Override a single membership's commission (sticky — survives program default updates). */
92
+ updateMembershipRate(profileId: string, params: {
93
+ commissionStructure: {
94
+ type: "cpa" | "revshare";
95
+ amountUsd?: number;
96
+ percentage?: number;
97
+ appliesTo: string;
98
+ };
99
+ reason?: string;
100
+ }): Promise<unknown>;
101
+ /** Reset a membership back to its program's default commission. */
102
+ resetMembershipRate(profileId: string, reason?: string): Promise<unknown>;
103
+ /** Send a magic-link invite to a partner (email resolves to existing profile or creates pending). */
104
+ invitePartner(params: {
105
+ email: string;
106
+ programId: string;
107
+ inviterName?: string;
108
+ inviterMessage?: string;
109
+ customRate?: {
110
+ commissionStructure: {
111
+ type: "cpa" | "revshare";
112
+ amountUsd?: number;
113
+ percentage?: number;
114
+ appliesTo: string;
115
+ };
116
+ };
117
+ }): Promise<unknown>;
118
+ /** Pending payouts grouped into aging buckets (0-30, 30-60, 60+). */
119
+ listPendingPayouts(): Promise<unknown>;
120
+ /** Approve one or more pending payouts (creates HoldbackEntry per approved conversion). */
121
+ approvePayouts(conversionIds: string[]): Promise<{
122
+ approved: Array<{
123
+ id: string;
124
+ heldbackAmountUsd: number;
125
+ }>;
126
+ skipped: Array<{
127
+ id: string;
128
+ reason: string;
129
+ }>;
130
+ failed: Array<{
131
+ id: string;
132
+ error: string;
133
+ }>;
134
+ }>;
135
+ /** Reject pending payouts (opens an audit FraudCase severity=low). */
136
+ rejectPayouts(conversionIds: string[], reason?: string): Promise<unknown>;
137
+ /** Merchant-facing fee disclosure. Returns every fee kind Apex charges this merchant. */
138
+ getEffectiveFees(): Promise<{
139
+ projectKey: string;
140
+ fees: Record<string, {
141
+ bps?: number;
142
+ flatUsd?: number;
143
+ source: string;
144
+ isCustom: boolean;
145
+ }>;
146
+ }>;
147
+ /**
148
+ * Vouch for a partner — one-tier bump for 60 days. Requires indemnity
149
+ * acknowledgment. Fails if the partner is already verified.
150
+ */
151
+ vouchForPartner(profileId: string, params: {
152
+ indemnityAcknowledged: true;
153
+ reason?: string;
154
+ vouchDays?: number;
155
+ }): Promise<unknown>;
156
+ preferences: {
157
+ get(endUserId: string): Promise<EndUserCommPreferences>;
158
+ update(endUserId: string, patch: Partial<EndUserCommPreferences>): Promise<EndUserCommPreferences>;
159
+ };
160
+ notifications: {
161
+ list(endUserId: string, opts?: {
162
+ limit?: number;
163
+ unreadOnly?: boolean;
164
+ }): Promise<{
165
+ notifications: InboxNotification[];
166
+ unreadCount: number;
167
+ total: number;
168
+ }>;
169
+ markRead(notificationId: string): Promise<void>;
170
+ markAllRead(endUserId: string): Promise<void>;
171
+ };
172
+ /**
173
+ * Set up Apex — programmatic access to per-workspace setup state.
174
+ *
175
+ * `get()` returns the current hub signal + per-step overrides
176
+ * (read-only). `complete(stepId)` / `skip(stepId, reason)` mirror
177
+ * the dashboard's write contract at
178
+ * POST /api/workspaces/<projectKey>/setup-state/<stepId>.
179
+ *
180
+ * Allowed step IDs are enforced server-side via the SetupRegistry
181
+ * allowlist. Unknown IDs return 400.
182
+ */
183
+ workspace: {
184
+ setupState: {
185
+ get(): Promise<{
186
+ overrides: Array<{
187
+ stepId: string;
188
+ action: "complete" | "skipped";
189
+ by: string;
190
+ at: string;
191
+ reason?: string;
192
+ }>;
193
+ signal: {
194
+ snippetInstalled?: boolean;
195
+ mobileLive?: boolean;
196
+ revenueConnected?: boolean;
197
+ adPlatformConnected?: boolean;
198
+ identityConnected?: boolean;
199
+ mcpDetected?: boolean;
200
+ workspaceNamed?: boolean;
201
+ conversionModelPicked?: boolean;
202
+ goalsPicked?: boolean;
203
+ teamPicked?: boolean;
204
+ };
205
+ }>;
206
+ complete(stepId: string): Promise<void>;
207
+ skip(stepId: string, reason?: string): Promise<void>;
208
+ };
209
+ };
210
+ /**
211
+ * Data Sources registry — the producers that send events into this
212
+ * workspace (Website, iOS / Android apps, Backend). Mirrors
213
+ * /api/workspaces/<projectKey>/data-sources. `dataSourceId` is
214
+ * reporting-only; these methods manage the registry, not access control.
215
+ */
216
+ dataSources: {
217
+ list(opts?: {
218
+ includeArchived?: boolean;
219
+ }): Promise<ApexDataSource[]>;
220
+ get(id: string): Promise<ApexDataSource>;
221
+ create(params: {
222
+ kind: ApexDataSourceKind;
223
+ name: string;
224
+ mobileAppId?: string;
225
+ primaryHostname?: string;
226
+ }): Promise<ApexDataSource>;
227
+ update(id: string, patch: {
228
+ name?: string;
229
+ primaryHostname?: string;
230
+ mobileAppId?: string;
231
+ }): Promise<ApexDataSource>;
232
+ archive(id: string): Promise<void>;
233
+ health(id: string): Promise<ApexDataSourceHealth>;
234
+ };
235
+ /**
236
+ * Unified analytics reads — per-source / per-platform / per-hostname
237
+ * breakdowns from the ingest-maintained rollups. Honors the source/
238
+ * platform/hostname/range filters the dashboard exposes.
239
+ */
240
+ analytics: {
241
+ sources(opts?: {
242
+ days?: number;
243
+ source?: string;
244
+ }): Promise<ApexAnalyticsSources>;
245
+ hostnames(opts?: {
246
+ limit?: number;
247
+ }): Promise<ApexHostSeen[]>;
248
+ };
249
+ signEndUserToken(params: {
250
+ endUserId: string;
251
+ /** Seconds. Default 3600 (1 hour). Capped server-side at 7 days. */
252
+ expiresIn?: number;
253
+ }): Promise<{
254
+ token: string;
255
+ endUserId: string;
256
+ projectKey: string;
257
+ expiresAt: string;
258
+ expiresInSeconds: number;
259
+ }>;
49
260
  };
261
+ export type ApexDataSourceKind = "website" | "ios" | "android" | "server" | "pos" | "kiosk" | "extension" | "other";
262
+ export type ApexDataSourceStatus = "not-started" | "listening" | "live" | "stalled";
263
+ export interface ApexDataSource {
264
+ id: string;
265
+ projectKey: string;
266
+ kind: ApexDataSourceKind;
267
+ name: string;
268
+ mobileAppId?: string;
269
+ primaryHostname?: string;
270
+ createdAt: string;
271
+ updatedAt: string;
272
+ archivedAt?: string;
273
+ firstSeenAt?: string;
274
+ lastSeenAt?: string;
275
+ /** Present on list/get responses — derived live status. */
276
+ status?: ApexDataSourceStatus;
277
+ }
278
+ export interface ApexDataSourceHealth {
279
+ id: string;
280
+ kind: ApexDataSourceKind;
281
+ status: ApexDataSourceStatus;
282
+ firstSeenAt: string | null;
283
+ lastSeenAt: string | null;
284
+ }
285
+ export interface ApexHostSeen {
286
+ hostname: string;
287
+ count: number;
288
+ lastSeen: string;
289
+ dataSourceId?: string;
290
+ }
291
+ export interface ApexAnalyticsSources {
292
+ sources: Array<{
293
+ id: string;
294
+ kind: ApexDataSourceKind;
295
+ name: string;
296
+ status: ApexDataSourceStatus;
297
+ eventCount: number;
298
+ lastSeenAt: string | null;
299
+ }>;
300
+ platforms: Array<{
301
+ platform: string;
302
+ count: number;
303
+ }>;
304
+ hostnames: ApexHostSeen[];
305
+ }
306
+ export type CommChannel = "email" | "inbox" | "web_push" | "mobile_push" | "in_app_push";
307
+ export interface EndUserCommPreferences {
308
+ endUserId: string;
309
+ projectKey: string;
310
+ globalOptOut: boolean;
311
+ channelPreferences: Partial<Record<CommChannel, boolean>>;
312
+ communicationOverrides: Record<string, {
313
+ optedOut: boolean;
314
+ }>;
315
+ journeyOverrides?: Record<string, {
316
+ optedOut: boolean;
317
+ }>;
318
+ updatedAt: string;
319
+ }
320
+ export interface InboxNotification {
321
+ id: string;
322
+ endUserId: string;
323
+ projectKey: string;
324
+ title: string;
325
+ body?: string;
326
+ iconUrl?: string;
327
+ ctaUrl?: string;
328
+ read: boolean;
329
+ createdAt: string;
330
+ readAt?: string;
331
+ communicationId?: string;
332
+ }
50
333
  //# sourceMappingURL=management.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"management.d.ts","sourceRoot":"","sources":["../src/management.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAcD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,gBAAgB;uBAK/B,OAAO,CAAC,OAAO,EAAE,CAAC;gCAST,MAAM,aAAa,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;+BAoBzD,OAAO,CAAC,OAAO,CAAC;4CAMH,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;0BAQ/C,OAAO,CAAC,OAAO,EAAE,CAAC;yBAMnB,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;4BAMtB,MAAM,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;4BAQ3D,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;6BAOrB,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;8BAQlD,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;6BAOvB,MAAM,QAAQ;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;2BAS9F,OAAO,CAAC,OAAO,EAAE,CAAC;iCAMZ;QACjC,eAAe,EAAE,MAAM,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,OAAO,EAAE,CAAC;KACrB,GAAG,OAAO,CAAC,OAAO,CAAC;4BAQU,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;oCAOd,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;wBASlC,OAAO,CAAC,OAAO,EAAE,CAAC;iCAMT,OAAO,CAAC,OAAO,EAAE,CAAC;EAMxD"}
1
+ {"version":3,"file":"management.d.ts","sourceRoot":"","sources":["../src/management.ts"],"names":[],"mappings":"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"}