@keystrokehq/segment 0.0.15 → 0.0.16-integration-id-canonicalization.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/README.md +52 -173
  2. package/dist/{client.mjs → client-DQfeZzLR.mjs} +28 -3
  3. package/dist/credential-sets/index.d.mts +2 -0
  4. package/dist/credential-sets/index.mjs +3 -0
  5. package/dist/index.d.mts +4 -1
  6. package/dist/index.mjs +5 -1
  7. package/dist/operations/index.d.mts +2 -0
  8. package/dist/operations/index.mjs +3 -0
  9. package/dist/schemas/index.mjs +1 -1
  10. package/dist/{integration-CliT2xe3.mjs → segment.credential-set-BTTrkHO7.mjs} +16 -9
  11. package/dist/{integration-DWeMeBqQ.d.mts → segment.credential-set-BgROtI_9.d.mts} +28 -27
  12. package/dist/{triggers.d.mts → triggers/index.d.mts} +72 -6
  13. package/dist/{triggers.mjs → triggers/index.mjs} +186 -7
  14. package/dist/workspace-list-spaces.operation-DKWX3vl5.mjs +5200 -0
  15. package/dist/workspace-list-spaces.operation-DNIUfIuv.d.mts +6548 -0
  16. package/package.json +13 -125
  17. package/dist/_official/index.d.mts +0 -2
  18. package/dist/_official/index.mjs +0 -3
  19. package/dist/_runtime/index.d.mts +0 -1
  20. package/dist/_runtime/index.mjs +0 -1
  21. package/dist/audiences.d.mts +0 -193
  22. package/dist/audiences.mjs +0 -205
  23. package/dist/client.d.mts +0 -90
  24. package/dist/computed-traits.d.mts +0 -148
  25. package/dist/computed-traits.mjs +0 -149
  26. package/dist/connection.d.mts +0 -2
  27. package/dist/connection.mjs +0 -3
  28. package/dist/crud-DGM2Ekdr.mjs +0 -140
  29. package/dist/deletion-suppression.d.mts +0 -135
  30. package/dist/deletion-suppression.mjs +0 -103
  31. package/dist/delivery-overview.d.mts +0 -56
  32. package/dist/delivery-overview.mjs +0 -54
  33. package/dist/destination-filters.d.mts +0 -134
  34. package/dist/destination-filters.mjs +0 -115
  35. package/dist/destinations.d.mts +0 -318
  36. package/dist/destinations.mjs +0 -257
  37. package/dist/edge-functions.d.mts +0 -112
  38. package/dist/edge-functions.mjs +0 -72
  39. package/dist/errors-4FGnrowW.mjs +0 -27
  40. package/dist/events-catalog.d.mts +0 -77
  41. package/dist/events-catalog.mjs +0 -65
  42. package/dist/events.d.mts +0 -167
  43. package/dist/events.mjs +0 -134
  44. package/dist/factory-Dqb49Dfj.mjs +0 -8
  45. package/dist/functions.d.mts +0 -236
  46. package/dist/functions.mjs +0 -180
  47. package/dist/iam-groups.d.mts +0 -184
  48. package/dist/iam-groups.mjs +0 -144
  49. package/dist/iam-users.d.mts +0 -138
  50. package/dist/iam-users.mjs +0 -91
  51. package/dist/labels.d.mts +0 -66
  52. package/dist/labels.mjs +0 -58
  53. package/dist/monitoring.d.mts +0 -126
  54. package/dist/monitoring.mjs +0 -88
  55. package/dist/profiles-sync.d.mts +0 -82
  56. package/dist/profiles-sync.mjs +0 -89
  57. package/dist/profiles.d.mts +0 -130
  58. package/dist/profiles.mjs +0 -137
  59. package/dist/reverse-etl.d.mts +0 -315
  60. package/dist/reverse-etl.mjs +0 -228
  61. package/dist/roles.d.mts +0 -36
  62. package/dist/roles.mjs +0 -25
  63. package/dist/sources.d.mts +0 -383
  64. package/dist/sources.mjs +0 -259
  65. package/dist/tracking-plans.d.mts +0 -229
  66. package/dist/tracking-plans.mjs +0 -160
  67. package/dist/tracking.d.mts +0 -410
  68. package/dist/tracking.mjs +0 -255
  69. package/dist/transformations.d.mts +0 -132
  70. package/dist/transformations.mjs +0 -83
  71. package/dist/usage.d.mts +0 -47
  72. package/dist/usage.mjs +0 -55
  73. package/dist/verification.d.mts +0 -17
  74. package/dist/verification.mjs +0 -51
  75. package/dist/warehouses.d.mts +0 -219
  76. package/dist/warehouses.mjs +0 -176
  77. package/dist/workspaces.d.mts +0 -61
  78. package/dist/workspaces.mjs +0 -67
  79. /package/dist/{common-CdGiJbjq.mjs → common-DUU0airJ.mjs} +0 -0
@@ -1,132 +0,0 @@
1
- import { z } from "zod";
2
- import * as _keystrokehq_core0 from "@keystrokehq/core";
3
-
4
- //#region src/transformations.d.ts
5
- declare const transformationSchema: z.ZodObject<{
6
- id: z.ZodString;
7
- name: z.ZodOptional<z.ZodString>;
8
- sourceId: z.ZodOptional<z.ZodString>;
9
- destinationId: z.ZodOptional<z.ZodString>;
10
- enabled: z.ZodOptional<z.ZodBoolean>;
11
- if: z.ZodOptional<z.ZodString>;
12
- newEventName: z.ZodOptional<z.ZodString>;
13
- propertyRenames: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
14
- propertyValueTransformations: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
15
- }, z.core.$catchall<z.ZodUnknown>>;
16
- declare const listTransformations: _keystrokehq_core0.Operation<z.ZodIntersection<z.ZodObject<{
17
- pageSize: z.ZodOptional<z.ZodNumber>;
18
- pageToken: z.ZodOptional<z.ZodString>;
19
- }, z.core.$strip>, z.ZodObject<{}, z.core.$strip>>, z.ZodObject<{
20
- items: z.ZodArray<z.ZodObject<{
21
- id: z.ZodString;
22
- name: z.ZodOptional<z.ZodString>;
23
- sourceId: z.ZodOptional<z.ZodString>;
24
- destinationId: z.ZodOptional<z.ZodString>;
25
- enabled: z.ZodOptional<z.ZodBoolean>;
26
- if: z.ZodOptional<z.ZodString>;
27
- newEventName: z.ZodOptional<z.ZodString>;
28
- propertyRenames: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
29
- propertyValueTransformations: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
30
- }, z.core.$catchall<z.ZodUnknown>>>;
31
- nextPageToken: z.ZodOptional<z.ZodString>;
32
- totalEntries: z.ZodOptional<z.ZodNumber>;
33
- }, z.core.$strip>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
34
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
35
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
36
- us: "us";
37
- eu: "eu";
38
- }>>;
39
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
40
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
41
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
42
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
43
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
44
- }, z.core.$strip>>], undefined>;
45
- declare const getTransformation: _keystrokehq_core0.Operation<z.ZodObject<{
46
- [x: string]: z.core.$ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
47
- }, z.core.$strip>, z.ZodObject<{
48
- id: z.ZodString;
49
- name: z.ZodOptional<z.ZodString>;
50
- sourceId: z.ZodOptional<z.ZodString>;
51
- destinationId: z.ZodOptional<z.ZodString>;
52
- enabled: z.ZodOptional<z.ZodBoolean>;
53
- if: z.ZodOptional<z.ZodString>;
54
- newEventName: z.ZodOptional<z.ZodString>;
55
- propertyRenames: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
56
- propertyValueTransformations: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
57
- }, z.core.$catchall<z.ZodUnknown>>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
58
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
59
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
60
- us: "us";
61
- eu: "eu";
62
- }>>;
63
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
64
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
65
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
66
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
67
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
68
- }, z.core.$strip>>], undefined>;
69
- declare const createTransformation: _keystrokehq_core0.Operation<z.ZodObject<{
70
- [x: string]: z.core.$ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
71
- }, z.core.$strip>, z.ZodObject<{
72
- id: z.ZodString;
73
- name: z.ZodOptional<z.ZodString>;
74
- sourceId: z.ZodOptional<z.ZodString>;
75
- destinationId: z.ZodOptional<z.ZodString>;
76
- enabled: z.ZodOptional<z.ZodBoolean>;
77
- if: z.ZodOptional<z.ZodString>;
78
- newEventName: z.ZodOptional<z.ZodString>;
79
- propertyRenames: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
80
- propertyValueTransformations: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
81
- }, z.core.$catchall<z.ZodUnknown>>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
82
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
83
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
84
- us: "us";
85
- eu: "eu";
86
- }>>;
87
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
88
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
89
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
90
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
91
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
92
- }, z.core.$strip>>], undefined>;
93
- declare const updateTransformation: _keystrokehq_core0.Operation<z.ZodObject<{
94
- [x: string]: z.core.$ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
95
- }, z.core.$strip>, z.ZodObject<{
96
- id: z.ZodString;
97
- name: z.ZodOptional<z.ZodString>;
98
- sourceId: z.ZodOptional<z.ZodString>;
99
- destinationId: z.ZodOptional<z.ZodString>;
100
- enabled: z.ZodOptional<z.ZodBoolean>;
101
- if: z.ZodOptional<z.ZodString>;
102
- newEventName: z.ZodOptional<z.ZodString>;
103
- propertyRenames: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
104
- propertyValueTransformations: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
105
- }, z.core.$catchall<z.ZodUnknown>>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
106
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
107
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
108
- us: "us";
109
- eu: "eu";
110
- }>>;
111
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
112
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
113
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
114
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
115
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
116
- }, z.core.$strip>>], undefined>;
117
- declare const deleteTransformation: _keystrokehq_core0.Operation<z.ZodObject<{
118
- [x: string]: z.core.$ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
119
- }, z.core.$strip>, z.ZodObject<{}, z.core.$catchall<z.ZodUnknown>>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
120
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
121
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
122
- us: "us";
123
- eu: "eu";
124
- }>>;
125
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
126
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
127
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
128
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
129
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
130
- }, z.core.$strip>>], undefined>;
131
- //#endregion
132
- export { createTransformation, deleteTransformation, getTransformation, listTransformations, transformationSchema, updateTransformation };
@@ -1,83 +0,0 @@
1
- import { a as segmentLooseObjectSchema, n as segmentIdSchema } from "./common-CdGiJbjq.mjs";
2
- import { n as crudList, r as crudMutate, t as crudGet } from "./crud-DGM2Ekdr.mjs";
3
- import { z } from "zod";
4
-
5
- //#region src/transformations.ts
6
- /**
7
- * segment/transformations.ts — source/destination transformations. 5 actions
8
- * (PLAN § 6.11).
9
- */
10
- const transformationSchema = segmentLooseObjectSchema({
11
- id: segmentIdSchema,
12
- name: z.string().optional(),
13
- sourceId: z.string().optional(),
14
- destinationId: z.string().optional(),
15
- enabled: z.boolean().optional(),
16
- if: z.string().optional(),
17
- newEventName: z.string().optional(),
18
- propertyRenames: z.array(z.record(z.string(), z.unknown())).optional(),
19
- propertyValueTransformations: z.array(z.record(z.string(), z.unknown())).optional()
20
- });
21
- const listTransformations = crudList({
22
- id: "segment.transformations.list",
23
- name: "List transformations",
24
- description: "List source/destination transformations.",
25
- path: "/transformations",
26
- itemsKey: "transformations",
27
- item: transformationSchema
28
- });
29
- const getTransformation = crudGet({
30
- id: "segment.transformations.get",
31
- name: "Get transformation",
32
- description: "Fetch a transformation by id.",
33
- path: "/transformations/{id}",
34
- output: transformationSchema,
35
- unwrapKey: "transformation"
36
- });
37
- const createTransformation = crudMutate({
38
- id: "segment.transformations.create",
39
- name: "Create transformation",
40
- description: "Create a source/destination transformation.",
41
- method: "POST",
42
- path: "/transformations",
43
- bodyShape: {
44
- name: z.string().min(1),
45
- sourceId: z.string().optional(),
46
- destinationId: z.string().optional(),
47
- if: z.string().optional(),
48
- newEventName: z.string().optional(),
49
- propertyRenames: z.array(z.record(z.string(), z.unknown())).optional(),
50
- propertyValueTransformations: z.array(z.record(z.string(), z.unknown())).optional(),
51
- enabled: z.boolean().optional()
52
- },
53
- output: transformationSchema,
54
- unwrapKey: "transformation"
55
- });
56
- const updateTransformation = crudMutate({
57
- id: "segment.transformations.update",
58
- name: "Update transformation",
59
- description: "Patch a transformation.",
60
- method: "PATCH",
61
- path: "/transformations/{id}",
62
- bodyShape: {
63
- name: z.string().optional(),
64
- if: z.string().optional(),
65
- newEventName: z.string().optional(),
66
- propertyRenames: z.array(z.record(z.string(), z.unknown())).optional(),
67
- propertyValueTransformations: z.array(z.record(z.string(), z.unknown())).optional(),
68
- enabled: z.boolean().optional()
69
- },
70
- output: transformationSchema,
71
- unwrapKey: "transformation"
72
- });
73
- const deleteTransformation = crudMutate({
74
- id: "segment.transformations.delete",
75
- name: "Delete transformation",
76
- description: "Delete a transformation.",
77
- method: "DELETE",
78
- path: "/transformations/{id}",
79
- output: z.object({}).catchall(z.unknown())
80
- });
81
-
82
- //#endregion
83
- export { createTransformation, deleteTransformation, getTransformation, listTransformations, transformationSchema, updateTransformation };
package/dist/usage.d.mts DELETED
@@ -1,47 +0,0 @@
1
- import { z } from "zod";
2
- import * as _keystrokehq_core0 from "@keystrokehq/core";
3
-
4
- //#region src/usage.d.ts
5
- declare const getDailyPerSourceUsage: _keystrokehq_core0.Operation<z.ZodObject<{
6
- startDate: z.ZodOptional<z.ZodString>;
7
- endDate: z.ZodOptional<z.ZodString>;
8
- sourceId: z.ZodOptional<z.ZodString>;
9
- }, z.core.$strip>, z.ZodObject<{
10
- items: z.ZodArray<z.ZodObject<{
11
- date: z.ZodOptional<z.ZodString>;
12
- sourceId: z.ZodOptional<z.ZodString>;
13
- callCount: z.ZodOptional<z.ZodNumber>;
14
- }, z.core.$catchall<z.ZodUnknown>>>;
15
- }, z.core.$strip>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
16
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
17
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
18
- us: "us";
19
- eu: "eu";
20
- }>>;
21
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
22
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
23
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
24
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
25
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
26
- }, z.core.$strip>>], undefined>;
27
- declare const getMonthlyWorkspaceUsage: _keystrokehq_core0.Operation<z.ZodObject<{
28
- month: z.ZodOptional<z.ZodString>;
29
- }, z.core.$strip>, z.ZodObject<{
30
- month: z.ZodOptional<z.ZodString>;
31
- mtu: z.ZodOptional<z.ZodNumber>;
32
- events: z.ZodOptional<z.ZodNumber>;
33
- breakdowns: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
34
- }, z.core.$catchall<z.ZodUnknown>>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
35
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
36
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
37
- us: "us";
38
- eu: "eu";
39
- }>>;
40
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
41
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
42
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
43
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
44
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
45
- }, z.core.$strip>>], undefined>;
46
- //#endregion
47
- export { getDailyPerSourceUsage, getMonthlyWorkspaceUsage };
package/dist/usage.mjs DELETED
@@ -1,55 +0,0 @@
1
- import { createSegmentClient } from "./client.mjs";
2
- import { a as segmentLooseObjectSchema } from "./common-CdGiJbjq.mjs";
3
- import { t as segmentOperation } from "./factory-Dqb49Dfj.mjs";
4
- import { z } from "zod";
5
-
6
- //#region src/usage.ts
7
- /**
8
- * segment/usage.ts — API call usage per source + monthly workspace usage.
9
- * 2 actions (PLAN § 6.22).
10
- */
11
- const dailyEntrySchema = segmentLooseObjectSchema({
12
- date: z.string().optional(),
13
- sourceId: z.string().optional(),
14
- callCount: z.number().optional()
15
- });
16
- const monthlyWorkspaceSchema = segmentLooseObjectSchema({
17
- month: z.string().optional(),
18
- mtu: z.number().optional(),
19
- events: z.number().optional(),
20
- breakdowns: z.array(z.record(z.string(), z.unknown())).optional()
21
- });
22
- const getDailyPerSourceUsage = segmentOperation({
23
- id: "segment.usage.getDailyPerSource",
24
- name: "Get daily per-source usage",
25
- description: "Daily API call counts per source.",
26
- input: z.object({
27
- startDate: z.string().optional(),
28
- endDate: z.string().optional(),
29
- sourceId: z.string().optional()
30
- }),
31
- output: z.object({ items: z.array(dailyEntrySchema) }),
32
- run: async (input, credentials) => {
33
- const rec = await createSegmentClient(credentials).publicApi.request("/usage/sources/daily-api-calls", { query: {
34
- startDate: input.startDate,
35
- endDate: input.endDate,
36
- sourceId: input.sourceId
37
- } });
38
- return { items: (rec.data?.usage ?? rec.usage ?? []).map((entry) => dailyEntrySchema.parse(entry)) };
39
- }
40
- });
41
- const getMonthlyWorkspaceUsage = segmentOperation({
42
- id: "segment.usage.getMonthlyWorkspace",
43
- name: "Get monthly workspace usage",
44
- description: "Monthly MTU and event totals for the workspace.",
45
- input: z.object({ month: z.string().optional() }),
46
- output: monthlyWorkspaceSchema,
47
- run: async (input, credentials) => {
48
- const body = await createSegmentClient(credentials).publicApi.request("/usage/workspace/monthly", { query: { month: input.month } });
49
- const rec = body;
50
- return monthlyWorkspaceSchema.parse(rec.data ?? body);
51
- }
52
- });
53
-
54
- //#endregion
55
- export { getDailyPerSourceUsage, getMonthlyWorkspaceUsage };
@@ -1,17 +0,0 @@
1
- import { WebhookRequest } from "@keystrokehq/core";
2
-
3
- //#region src/verification.d.ts
4
- /** Default header name Segment uses for its webhook signature. */
5
- declare const SEGMENT_SIGNATURE_HEADER = "x-signature";
6
- /** Hex-encoded HMAC-SHA1 of `rawBody` using `secret`. */
7
- declare function buildSegmentWebhookSignature(rawBody: string, secret: string): string;
8
- interface VerifySegmentWebhookOptions {
9
- readonly rawBody: string;
10
- readonly signatureHeader: string | undefined;
11
- readonly secret: string;
12
- }
13
- declare function verifySegmentWebhookRequest(options: VerifySegmentWebhookOptions): boolean;
14
- /** Convenience wrapper for the `WebhookRequest` shape the runtime passes. */
15
- declare function verifySegmentWebhookFromRequest(request: Pick<WebhookRequest, 'headers' | 'rawBody'>, secret: string, signatureHeader?: string): boolean;
16
- //#endregion
17
- export { SEGMENT_SIGNATURE_HEADER, VerifySegmentWebhookOptions, buildSegmentWebhookSignature, verifySegmentWebhookFromRequest, verifySegmentWebhookRequest };
@@ -1,51 +0,0 @@
1
- import { createHmac, timingSafeEqual } from "node:crypto";
2
-
3
- //#region src/verification.ts
4
- /**
5
- * segment/verification.ts
6
- *
7
- * HMAC signature verification for Segment Audience webhook destinations,
8
- * Engage computed-trait webhook destinations, Functions webhooks, and
9
- * Monitoring alert webhooks.
10
- *
11
- * Segment signs webhook bodies with HMAC-SHA1 by default when a shared
12
- * secret is configured on the Webhook destination / subscription. The
13
- * signature is sent as a hex string in the `X-Signature` header.
14
- *
15
- * Reference:
16
- * https://segment.com/docs/connections/destinations/catalog/webhooks/#authentication
17
- * https://segment.com/docs/connections/functions/destination-functions/#shared-secret
18
- *
19
- * We expose helpers for:
20
- * - `verifySegmentWebhookRequest({ rawBody, signatureHeader, secret })`
21
- * — constant-time compare against `sha1(secret, rawBody)` in hex.
22
- * - `buildSegmentWebhookSignature(rawBody, secret)` — produce the expected
23
- * hex signature (useful for tests).
24
- */
25
- /** Default header name Segment uses for its webhook signature. */
26
- const SEGMENT_SIGNATURE_HEADER = "x-signature";
27
- /** Hex-encoded HMAC-SHA1 of `rawBody` using `secret`. */
28
- function buildSegmentWebhookSignature(rawBody, secret) {
29
- return createHmac("sha1", secret).update(rawBody, "utf8").digest("hex");
30
- }
31
- function verifySegmentWebhookRequest(options) {
32
- if (!options.signatureHeader || !options.secret) return false;
33
- const expected = buildSegmentWebhookSignature(options.rawBody, options.secret);
34
- const provided = options.signatureHeader.trim().toLowerCase();
35
- const expectedBuf = Buffer.from(expected, "utf8");
36
- const providedBuf = Buffer.from(provided, "utf8");
37
- if (expectedBuf.length !== providedBuf.length) return false;
38
- return timingSafeEqual(expectedBuf, providedBuf);
39
- }
40
- /** Convenience wrapper for the `WebhookRequest` shape the runtime passes. */
41
- function verifySegmentWebhookFromRequest(request, secret, signatureHeader = SEGMENT_SIGNATURE_HEADER) {
42
- const header = request.headers[signatureHeader] ?? request.headers[signatureHeader.toLowerCase()];
43
- return verifySegmentWebhookRequest({
44
- rawBody: request.rawBody,
45
- signatureHeader: header,
46
- secret
47
- });
48
- }
49
-
50
- //#endregion
51
- export { SEGMENT_SIGNATURE_HEADER, buildSegmentWebhookSignature, verifySegmentWebhookFromRequest, verifySegmentWebhookRequest };
@@ -1,219 +0,0 @@
1
- import { z } from "zod";
2
- import * as _keystrokehq_core0 from "@keystrokehq/core";
3
-
4
- //#region src/warehouses.d.ts
5
- declare const warehouseSchema: z.ZodObject<{
6
- id: z.ZodString;
7
- name: z.ZodOptional<z.ZodString>;
8
- enabled: z.ZodOptional<z.ZodBoolean>;
9
- metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
10
- settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
11
- }, z.core.$catchall<z.ZodUnknown>>;
12
- declare const listWarehouses: _keystrokehq_core0.Operation<z.ZodIntersection<z.ZodObject<{
13
- pageSize: z.ZodOptional<z.ZodNumber>;
14
- pageToken: z.ZodOptional<z.ZodString>;
15
- }, z.core.$strip>, z.ZodObject<{}, z.core.$strip>>, z.ZodObject<{
16
- items: z.ZodArray<z.ZodObject<{
17
- id: z.ZodString;
18
- name: z.ZodOptional<z.ZodString>;
19
- enabled: z.ZodOptional<z.ZodBoolean>;
20
- metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
21
- settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
22
- }, z.core.$catchall<z.ZodUnknown>>>;
23
- nextPageToken: z.ZodOptional<z.ZodString>;
24
- totalEntries: z.ZodOptional<z.ZodNumber>;
25
- }, z.core.$strip>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
26
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
27
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
28
- us: "us";
29
- eu: "eu";
30
- }>>;
31
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
32
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
33
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
34
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
35
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
36
- }, z.core.$strip>>], undefined>;
37
- declare const getWarehouse: _keystrokehq_core0.Operation<z.ZodObject<{
38
- [x: string]: z.core.$ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
39
- }, z.core.$strip>, z.ZodObject<{
40
- id: z.ZodString;
41
- name: z.ZodOptional<z.ZodString>;
42
- enabled: z.ZodOptional<z.ZodBoolean>;
43
- metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
44
- settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
45
- }, z.core.$catchall<z.ZodUnknown>>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
46
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
47
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
48
- us: "us";
49
- eu: "eu";
50
- }>>;
51
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
52
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
53
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
54
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
55
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
56
- }, z.core.$strip>>], undefined>;
57
- declare const createWarehouse: _keystrokehq_core0.Operation<z.ZodObject<{
58
- [x: string]: z.core.$ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
59
- }, z.core.$strip>, z.ZodObject<{
60
- id: z.ZodString;
61
- name: z.ZodOptional<z.ZodString>;
62
- enabled: z.ZodOptional<z.ZodBoolean>;
63
- metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
64
- settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
65
- }, z.core.$catchall<z.ZodUnknown>>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
66
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
67
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
68
- us: "us";
69
- eu: "eu";
70
- }>>;
71
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
72
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
73
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
74
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
75
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
76
- }, z.core.$strip>>], undefined>;
77
- declare const updateWarehouse: _keystrokehq_core0.Operation<z.ZodObject<{
78
- [x: string]: z.core.$ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
79
- }, z.core.$strip>, z.ZodObject<{
80
- id: z.ZodString;
81
- name: z.ZodOptional<z.ZodString>;
82
- enabled: z.ZodOptional<z.ZodBoolean>;
83
- metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
84
- settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
85
- }, z.core.$catchall<z.ZodUnknown>>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
86
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
87
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
88
- us: "us";
89
- eu: "eu";
90
- }>>;
91
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
92
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
93
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
94
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
95
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
96
- }, z.core.$strip>>], undefined>;
97
- declare const deleteWarehouse: _keystrokehq_core0.Operation<z.ZodObject<{
98
- [x: string]: z.core.$ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
99
- }, z.core.$strip>, z.ZodObject<{}, z.core.$catchall<z.ZodUnknown>>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
100
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
101
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
102
- us: "us";
103
- eu: "eu";
104
- }>>;
105
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
106
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
107
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
108
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
109
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
110
- }, z.core.$strip>>], undefined>;
111
- declare const listConnectedSources: _keystrokehq_core0.Operation<z.ZodObject<{
112
- id: z.ZodString;
113
- }, z.core.$strip>, z.ZodObject<{
114
- items: z.ZodArray<z.ZodObject<{
115
- id: z.ZodString;
116
- name: z.ZodOptional<z.ZodString>;
117
- enabled: z.ZodOptional<z.ZodBoolean>;
118
- }, z.core.$catchall<z.ZodUnknown>>>;
119
- }, z.core.$strip>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
120
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
121
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
122
- us: "us";
123
- eu: "eu";
124
- }>>;
125
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
126
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
127
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
128
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
129
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
130
- }, z.core.$strip>>], undefined>;
131
- declare const connectSourceToWarehouse: _keystrokehq_core0.Operation<z.ZodObject<{
132
- id: z.ZodString;
133
- sourceId: z.ZodString;
134
- }, z.core.$strip>, z.ZodObject<{
135
- connected: z.ZodLiteral<true>;
136
- }, z.core.$strip>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
137
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
138
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
139
- us: "us";
140
- eu: "eu";
141
- }>>;
142
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
143
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
144
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
145
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
146
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
147
- }, z.core.$strip>>], undefined>;
148
- declare const disconnectSourceFromWarehouse: _keystrokehq_core0.Operation<z.ZodObject<{
149
- id: z.ZodString;
150
- sourceId: z.ZodString;
151
- }, z.core.$strip>, z.ZodObject<{
152
- disconnected: z.ZodLiteral<true>;
153
- }, z.core.$strip>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
154
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
155
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
156
- us: "us";
157
- eu: "eu";
158
- }>>;
159
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
160
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
161
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
162
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
163
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
164
- }, z.core.$strip>>], undefined>;
165
- declare const getSelectiveSync: _keystrokehq_core0.Operation<z.ZodObject<{
166
- id: z.ZodString;
167
- }, z.core.$strip>, z.ZodObject<{
168
- warehouseId: z.ZodOptional<z.ZodString>;
169
- items: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
170
- }, z.core.$catchall<z.ZodUnknown>>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
171
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
172
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
173
- us: "us";
174
- eu: "eu";
175
- }>>;
176
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
177
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
178
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
179
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
180
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
181
- }, z.core.$strip>>], undefined>;
182
- declare const updateSelectiveSync: _keystrokehq_core0.Operation<z.ZodObject<{
183
- id: z.ZodString;
184
- items: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
185
- }, z.core.$strip>, z.ZodObject<{
186
- warehouseId: z.ZodOptional<z.ZodString>;
187
- items: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
188
- }, z.core.$catchall<z.ZodUnknown>>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
189
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
190
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
191
- us: "us";
192
- eu: "eu";
193
- }>>;
194
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
195
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
196
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
197
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
198
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
199
- }, z.core.$strip>>], undefined>;
200
- declare const testWarehouseConnection: _keystrokehq_core0.Operation<z.ZodObject<{
201
- id: z.ZodString;
202
- }, z.core.$strip>, z.ZodObject<{
203
- success: z.ZodOptional<z.ZodBoolean>;
204
- message: z.ZodOptional<z.ZodString>;
205
- details: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
206
- }, z.core.$catchall<z.ZodUnknown>>, readonly [_keystrokehq_core0.CredentialSet<"keystroke:segment", z.ZodObject<{
207
- SEGMENT_PUBLIC_API_TOKEN: z.ZodString;
208
- SEGMENT_REGION: z.ZodDefault<z.ZodEnum<{
209
- us: "us";
210
- eu: "eu";
211
- }>>;
212
- SEGMENT_DEFAULT_WRITE_KEY: z.ZodOptional<z.ZodString>;
213
- SEGMENT_WRITE_KEYS_JSON: z.ZodOptional<z.ZodString>;
214
- SEGMENT_PROFILE_API_TOKEN: z.ZodOptional<z.ZodString>;
215
- SEGMENT_PROFILE_SPACE_ID: z.ZodOptional<z.ZodString>;
216
- SEGMENT_WEBHOOK_SHARED_SECRET: z.ZodOptional<z.ZodString>;
217
- }, z.core.$strip>>], undefined>;
218
- //#endregion
219
- export { connectSourceToWarehouse, createWarehouse, deleteWarehouse, disconnectSourceFromWarehouse, getSelectiveSync, getWarehouse, listConnectedSources, listWarehouses, testWarehouseConnection, updateSelectiveSync, updateWarehouse, warehouseSchema };