svix 1.93.0 → 1.95.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.
Files changed (42) hide show
  1. package/dist/api/messageAttempt.js +8 -4
  2. package/dist/api/messageAttempt.js.map +1 -1
  3. package/dist/api_internal/endpoint.d.ts +9 -0
  4. package/dist/api_internal/endpoint.js +23 -0
  5. package/dist/api_internal/endpoint.js.map +1 -0
  6. package/dist/api_internal/endpointAutoConfig.d.ts +8 -0
  7. package/dist/api_internal/endpointAutoConfig.js +20 -0
  8. package/dist/api_internal/endpointAutoConfig.js.map +1 -0
  9. package/dist/api_internal/index.d.ts +5 -0
  10. package/dist/api_internal/index.js +11 -0
  11. package/dist/api_internal/index.js.map +1 -0
  12. package/dist/autoconfig.d.ts +18 -0
  13. package/dist/autoconfig.js +77 -0
  14. package/dist/autoconfig.js.map +1 -0
  15. package/dist/index.d.ts +3 -1
  16. package/dist/index.js +1 -0
  17. package/dist/index.js.map +1 -1
  18. package/dist/models/endpointTransformationOut.d.ts +3 -0
  19. package/dist/models/endpointTransformationOut.js +2 -0
  20. package/dist/models/endpointTransformationOut.js.map +1 -1
  21. package/dist/models/endpointTransformationPatch.d.ts +3 -0
  22. package/dist/models/endpointTransformationPatch.js +2 -0
  23. package/dist/models/endpointTransformationPatch.js.map +1 -1
  24. package/dist/models/subscribeIn.d.ts +8 -0
  25. package/dist/models/subscribeIn.js +17 -0
  26. package/dist/models/subscribeIn.js.map +1 -0
  27. package/dist/request.d.ts +1 -1
  28. package/dist/request.js +1 -1
  29. package/package.json +2 -2
  30. package/src/api/messageAttempt.ts +4 -4
  31. package/src/api_internal/endpoint.ts +40 -0
  32. package/src/api_internal/endpointAutoConfig.ts +27 -0
  33. package/src/api_internal/index.ts +8 -0
  34. package/src/autoconfig.test.ts +51 -0
  35. package/src/autoconfig.ts +115 -0
  36. package/src/index.test.ts +1 -0
  37. package/src/index.ts +4 -1
  38. package/src/mockttp.test.ts +1 -1
  39. package/src/models/endpointTransformationOut.ts +3 -0
  40. package/src/models/endpointTransformationPatch.ts +3 -0
  41. package/src/models/subscribeIn.ts +20 -0
  42. package/src/request.ts +1 -1
@@ -12,6 +12,7 @@ class MessageAttempt {
12
12
  this.requestCtx = requestCtx;
13
13
  }
14
14
  listByEndpoint(appId, endpointId, options) {
15
+ var _a;
15
16
  const request = new request_1.SvixRequest(request_1.HttpMethod.GET, "/api/v1/app/{app_id}/attempt/endpoint/{endpoint_id}");
16
17
  request.setPathParam("app_id", appId);
17
18
  request.setPathParam("endpoint_id", endpointId);
@@ -26,12 +27,13 @@ class MessageAttempt {
26
27
  after: options === null || options === void 0 ? void 0 : options.after,
27
28
  with_content: options === null || options === void 0 ? void 0 : options.withContent,
28
29
  with_msg: options === null || options === void 0 ? void 0 : options.withMsg,
29
- expanded_statuses: options === null || options === void 0 ? void 0 : options.expandedStatuses,
30
+ expanded_statuses: (_a = options === null || options === void 0 ? void 0 : options.expandedStatuses) !== null && _a !== void 0 ? _a : true,
30
31
  event_types: options === null || options === void 0 ? void 0 : options.eventTypes,
31
32
  });
32
33
  return request.send(this.requestCtx, listResponseMessageAttemptOut_1.ListResponseMessageAttemptOutSerializer._fromJsonObject);
33
34
  }
34
35
  listByMsg(appId, msgId, options) {
36
+ var _a;
35
37
  const request = new request_1.SvixRequest(request_1.HttpMethod.GET, "/api/v1/app/{app_id}/attempt/msg/{msg_id}");
36
38
  request.setPathParam("app_id", appId);
37
39
  request.setPathParam("msg_id", msgId);
@@ -46,12 +48,13 @@ class MessageAttempt {
46
48
  before: options === null || options === void 0 ? void 0 : options.before,
47
49
  after: options === null || options === void 0 ? void 0 : options.after,
48
50
  with_content: options === null || options === void 0 ? void 0 : options.withContent,
49
- expanded_statuses: options === null || options === void 0 ? void 0 : options.expandedStatuses,
51
+ expanded_statuses: (_a = options === null || options === void 0 ? void 0 : options.expandedStatuses) !== null && _a !== void 0 ? _a : true,
50
52
  event_types: options === null || options === void 0 ? void 0 : options.eventTypes,
51
53
  });
52
54
  return request.send(this.requestCtx, listResponseMessageAttemptOut_1.ListResponseMessageAttemptOutSerializer._fromJsonObject);
53
55
  }
54
56
  listAttemptedMessages(appId, endpointId, options) {
57
+ var _a;
55
58
  const request = new request_1.SvixRequest(request_1.HttpMethod.GET, "/api/v1/app/{app_id}/endpoint/{endpoint_id}/msg");
56
59
  request.setPathParam("app_id", appId);
57
60
  request.setPathParam("endpoint_id", endpointId);
@@ -64,18 +67,19 @@ class MessageAttempt {
64
67
  before: options === null || options === void 0 ? void 0 : options.before,
65
68
  after: options === null || options === void 0 ? void 0 : options.after,
66
69
  with_content: options === null || options === void 0 ? void 0 : options.withContent,
67
- expanded_statuses: options === null || options === void 0 ? void 0 : options.expandedStatuses,
70
+ expanded_statuses: (_a = options === null || options === void 0 ? void 0 : options.expandedStatuses) !== null && _a !== void 0 ? _a : true,
68
71
  event_types: options === null || options === void 0 ? void 0 : options.eventTypes,
69
72
  });
70
73
  return request.send(this.requestCtx, listResponseEndpointMessageOut_1.ListResponseEndpointMessageOutSerializer._fromJsonObject);
71
74
  }
72
75
  get(appId, msgId, attemptId, options) {
76
+ var _a;
73
77
  const request = new request_1.SvixRequest(request_1.HttpMethod.GET, "/api/v1/app/{app_id}/msg/{msg_id}/attempt/{attempt_id}");
74
78
  request.setPathParam("app_id", appId);
75
79
  request.setPathParam("msg_id", msgId);
76
80
  request.setPathParam("attempt_id", attemptId);
77
81
  request.setQueryParams({
78
- expanded_statuses: options === null || options === void 0 ? void 0 : options.expandedStatuses,
82
+ expanded_statuses: (_a = options === null || options === void 0 ? void 0 : options.expandedStatuses) !== null && _a !== void 0 ? _a : true,
79
83
  });
80
84
  return request.send(this.requestCtx, messageAttemptOut_1.MessageAttemptOutSerializer._fromJsonObject);
81
85
  }
@@ -1 +1 @@
1
- {"version":3,"file":"messageAttempt.js","sourceRoot":"","sources":["../../src/api/messageAttempt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messageAttempt.js","sourceRoot":"","sources":["../../src/api/messageAttempt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { type EndpointTransformationIn } from "../models/endpointTransformationIn";
2
+ import { EndpointAutoConfig } from "./endpointAutoConfig";
3
+ import { type SvixRequestContext } from "../request";
4
+ export declare class Endpoint {
5
+ private readonly requestCtx;
6
+ constructor(requestCtx: SvixRequestContext);
7
+ get auto_config(): EndpointAutoConfig;
8
+ transformationPartialUpdate(appId: string, endpointId: string, endpointTransformationIn: EndpointTransformationIn): Promise<void>;
9
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Endpoint = void 0;
4
+ const endpointTransformationIn_1 = require("../models/endpointTransformationIn");
5
+ const endpointAutoConfig_1 = require("./endpointAutoConfig");
6
+ const request_1 = require("../request");
7
+ class Endpoint {
8
+ constructor(requestCtx) {
9
+ this.requestCtx = requestCtx;
10
+ }
11
+ get auto_config() {
12
+ return new endpointAutoConfig_1.EndpointAutoConfig(this.requestCtx);
13
+ }
14
+ transformationPartialUpdate(appId, endpointId, endpointTransformationIn) {
15
+ const request = new request_1.SvixRequest(request_1.HttpMethod.PATCH, "/api/v1/app/{app_id}/endpoint/{endpoint_id}/transformation");
16
+ request.setPathParam("app_id", appId);
17
+ request.setPathParam("endpoint_id", endpointId);
18
+ request.setBody(endpointTransformationIn_1.EndpointTransformationInSerializer._toJsonObject(endpointTransformationIn));
19
+ return request.sendNoResponseBody(this.requestCtx);
20
+ }
21
+ }
22
+ exports.Endpoint = Endpoint;
23
+ //# sourceMappingURL=endpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../src/api_internal/endpoint.ts"],"names":[],"mappings":";;;AAEA,iFAG4C;AAC5C,6DAA0D;AAC1D,wCAA8E;AAE9E,MAAa,QAAQ;IACnB,YAAoC,UAA8B;QAA9B,eAAU,GAAV,UAAU,CAAoB;IAAG,CAAC;IAEtE,IAAW,WAAW;QACpB,OAAO,IAAI,uCAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjD,CAAC;IAOM,2BAA2B,CAChC,KAAa,EACb,UAAkB,EAClB,wBAAkD;QAElD,MAAM,OAAO,GAAG,IAAI,qBAAW,CAC7B,oBAAU,CAAC,KAAK,EAChB,4DAA4D,CAC7D,CAAC;QAEF,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACtC,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QAChD,OAAO,CAAC,OAAO,CACb,6DAAkC,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAC3E,CAAC;QAEF,OAAO,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrD,CAAC;CACF;AA9BD,4BA8BC"}
@@ -0,0 +1,8 @@
1
+ import { type EndpointOut } from "../models/endpointOut";
2
+ import { type SubscribeIn } from "../models/subscribeIn";
3
+ import { type SvixRequestContext } from "../request";
4
+ export declare class EndpointAutoConfig {
5
+ private readonly requestCtx;
6
+ constructor(requestCtx: SvixRequestContext);
7
+ update(appId: string, endpointId: string, subscribeIn: SubscribeIn): Promise<EndpointOut>;
8
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EndpointAutoConfig = void 0;
4
+ const endpointOut_1 = require("../models/endpointOut");
5
+ const subscribeIn_1 = require("../models/subscribeIn");
6
+ const request_1 = require("../request");
7
+ class EndpointAutoConfig {
8
+ constructor(requestCtx) {
9
+ this.requestCtx = requestCtx;
10
+ }
11
+ update(appId, endpointId, subscribeIn) {
12
+ const request = new request_1.SvixRequest(request_1.HttpMethod.PUT, "/api/v1/app/{app_id}/endpoint/{endpoint_id}/auto-config");
13
+ request.setPathParam("app_id", appId);
14
+ request.setPathParam("endpoint_id", endpointId);
15
+ request.setBody(subscribeIn_1.SubscribeInSerializer._toJsonObject(subscribeIn));
16
+ return request.send(this.requestCtx, endpointOut_1.EndpointOutSerializer._fromJsonObject);
17
+ }
18
+ }
19
+ exports.EndpointAutoConfig = EndpointAutoConfig;
20
+ //# sourceMappingURL=endpointAutoConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpointAutoConfig.js","sourceRoot":"","sources":["../../src/api_internal/endpointAutoConfig.ts"],"names":[],"mappings":";;;AAEA,uDAAgF;AAChF,uDAAgF;AAChF,wCAA8E;AAE9E,MAAa,kBAAkB;IAC7B,YAAoC,UAA8B;QAA9B,eAAU,GAAV,UAAU,CAAoB;IAAG,CAAC;IAG/D,MAAM,CACX,KAAa,EACb,UAAkB,EAClB,WAAwB;QAExB,MAAM,OAAO,GAAG,IAAI,qBAAW,CAC7B,oBAAU,CAAC,GAAG,EACd,yDAAyD,CAC1D,CAAC;QAEF,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACtC,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QAChD,OAAO,CAAC,OAAO,CAAC,mCAAqB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC;QAElE,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,mCAAqB,CAAC,eAAe,CAAC,CAAC;IAC9E,CAAC;CACF;AApBD,gDAoBC"}
@@ -0,0 +1,5 @@
1
+ import { Svix } from "..";
2
+ import type { SvixRequestContext } from "../request";
3
+ export declare class SvixInternal extends Svix {
4
+ getRequestCtx(): SvixRequestContext;
5
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SvixInternal = void 0;
4
+ const __1 = require("..");
5
+ class SvixInternal extends __1.Svix {
6
+ getRequestCtx() {
7
+ return this.requestCtx;
8
+ }
9
+ }
10
+ exports.SvixInternal = SvixInternal;
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api_internal/index.ts"],"names":[],"mappings":";;;AAAA,0BAA0B;AAG1B,MAAa,YAAa,SAAQ,QAAI;IAC7B,aAAa;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;CACF;AAJD,oCAIC"}
@@ -0,0 +1,18 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import type { EndpointIn } from "./models/endpointIn";
4
+ import type { EndpointOut } from "./models/endpointOut";
5
+ import { type WebhookRequiredHeaders, type WebhookUnbrandedRequiredHeaders } from "./webhook";
6
+ export declare class AutoConfigError extends Error {
7
+ constructor(message?: string);
8
+ }
9
+ export declare class AutoConfig {
10
+ private readonly appId;
11
+ private readonly endpointId;
12
+ private readonly endpointIn;
13
+ private readonly webhook;
14
+ private readonly requestCtx;
15
+ constructor(token: string, endpoint: EndpointIn);
16
+ subscribe(): Promise<EndpointOut>;
17
+ verify(payload: string | Buffer, headers: WebhookRequiredHeaders | WebhookUnbrandedRequiredHeaders | Record<string, string>): unknown;
18
+ }
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AutoConfig = exports.AutoConfigError = void 0;
4
+ const api_internal_1 = require("./api_internal");
5
+ const endpoint_1 = require("./api_internal/endpoint");
6
+ const webhook_1 = require("./webhook");
7
+ const AUTOCONFIG_TOKEN_PREFIX_V1 = "auto_v1_";
8
+ class AutoConfigError extends Error {
9
+ constructor(message = "invalid token") {
10
+ super(message);
11
+ this.name = "AutoConfigError";
12
+ }
13
+ }
14
+ exports.AutoConfigError = AutoConfigError;
15
+ function isAutoConfigTokenContentV1(value) {
16
+ if (typeof value !== "object" || value === null) {
17
+ return false;
18
+ }
19
+ const { aid, eid, surl, esec, tok } = value;
20
+ return (typeof aid === "string" &&
21
+ typeof eid === "string" &&
22
+ typeof surl === "string" &&
23
+ typeof esec === "string" &&
24
+ typeof tok === "string");
25
+ }
26
+ function decodeAutoconfigTokenV1(token) {
27
+ if (!token.startsWith(AUTOCONFIG_TOKEN_PREFIX_V1)) {
28
+ throw new AutoConfigError();
29
+ }
30
+ const b64 = token.slice(AUTOCONFIG_TOKEN_PREFIX_V1.length);
31
+ let json;
32
+ try {
33
+ json = Buffer.from(b64, "base64").toString("utf8");
34
+ }
35
+ catch (_a) {
36
+ throw new AutoConfigError();
37
+ }
38
+ let parsed;
39
+ try {
40
+ parsed = JSON.parse(json);
41
+ }
42
+ catch (_b) {
43
+ throw new AutoConfigError();
44
+ }
45
+ if (!isAutoConfigTokenContentV1(parsed)) {
46
+ throw new AutoConfigError();
47
+ }
48
+ return parsed;
49
+ }
50
+ class AutoConfig {
51
+ constructor(token, endpoint) {
52
+ const content = decodeAutoconfigTokenV1(token);
53
+ let webhook;
54
+ try {
55
+ webhook = new webhook_1.Webhook(content.esec);
56
+ }
57
+ catch (_a) {
58
+ throw new AutoConfigError();
59
+ }
60
+ this.appId = content.aid;
61
+ this.endpointId = content.eid;
62
+ this.endpointIn = endpoint;
63
+ this.webhook = webhook;
64
+ const svix = new api_internal_1.SvixInternal(content.tok, { serverUrl: content.surl });
65
+ this.requestCtx = svix.getRequestCtx();
66
+ }
67
+ subscribe() {
68
+ return new endpoint_1.Endpoint(this.requestCtx).auto_config.update(this.appId, this.endpointId, {
69
+ endpoint: this.endpointIn,
70
+ });
71
+ }
72
+ verify(payload, headers) {
73
+ return this.webhook.verify(payload, headers);
74
+ }
75
+ }
76
+ exports.AutoConfig = AutoConfig;
77
+ //# sourceMappingURL=autoconfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autoconfig.js","sourceRoot":"","sources":["../src/autoconfig.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -14,6 +14,7 @@ import { OperationalWebhook } from "./api/operationalWebhook";
14
14
  import { Statistics } from "./api/statistics";
15
15
  import { Streaming } from "./api/streaming";
16
16
  import { OperationalWebhookEndpoint } from "./api/operationalWebhookEndpoint";
17
+ import type { SvixRequestContext } from "./request";
17
18
  export { type PostOptions, ApiException } from "./util";
18
19
  export { HTTPValidationError, HttpErrorOut, ValidationError } from "./HttpErrors";
19
20
  export * from "./webhook";
@@ -38,7 +39,7 @@ export type SvixOptions = {
38
39
  numRetries?: number;
39
40
  }>;
40
41
  export declare class Svix {
41
- private readonly requestCtx;
42
+ protected readonly requestCtx: SvixRequestContext;
42
43
  constructor(token: string, options?: SvixOptions);
43
44
  get application(): Application;
44
45
  get authentication(): Authentication;
@@ -57,3 +58,4 @@ export declare class Svix {
57
58
  get streaming(): Streaming;
58
59
  get operationalWebhookEndpoint(): OperationalWebhookEndpoint;
59
60
  }
61
+ export * from "./autoconfig";
package/dist/index.js CHANGED
@@ -130,4 +130,5 @@ class Svix {
130
130
  }
131
131
  }
132
132
  exports.Svix = Svix;
133
+ __exportStar(require("./autoconfig"), exports);
133
134
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,9 @@ export interface EndpointTransformationOut {
2
2
  code?: string | null;
3
3
  enabled?: boolean;
4
4
  updatedAt?: Date | null;
5
+ variables?: {
6
+ [key: string]: string;
7
+ } | null;
5
8
  }
6
9
  export declare const EndpointTransformationOutSerializer: {
7
10
  _fromJsonObject(object: any): EndpointTransformationOut;
@@ -7,6 +7,7 @@ exports.EndpointTransformationOutSerializer = {
7
7
  code: object["code"],
8
8
  enabled: object["enabled"],
9
9
  updatedAt: object["updatedAt"] ? new Date(object["updatedAt"]) : null,
10
+ variables: object["variables"],
10
11
  };
11
12
  },
12
13
  _toJsonObject(self) {
@@ -14,6 +15,7 @@ exports.EndpointTransformationOutSerializer = {
14
15
  code: self.code,
15
16
  enabled: self.enabled,
16
17
  updatedAt: self.updatedAt,
18
+ variables: self.variables,
17
19
  };
18
20
  },
19
21
  };
@@ -1 +1 @@
1
- {"version":3,"file":"endpointTransformationOut.js","sourceRoot":"","sources":["../../src/models/endpointTransformationOut.ts"],"names":[],"mappings":";;;AAQa,QAAA,mCAAmC,GAAG;IACjD,eAAe,CAAC,MAAW;QACzB,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC;YAC1B,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SACtE,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,IAA+B;QAC3C,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"endpointTransformationOut.js","sourceRoot":"","sources":["../../src/models/endpointTransformationOut.ts"],"names":[],"mappings":";;;AASa,QAAA,mCAAmC,GAAG;IACjD,eAAe,CAAC,MAAW;QACzB,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC;YAC1B,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YACrE,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC;SAC/B,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,IAA+B;QAC3C,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -1,6 +1,9 @@
1
1
  export interface EndpointTransformationPatch {
2
2
  code?: string | null;
3
3
  enabled?: boolean;
4
+ variables?: {
5
+ [key: string]: string;
6
+ } | null;
4
7
  }
5
8
  export declare const EndpointTransformationPatchSerializer: {
6
9
  _fromJsonObject(object: any): EndpointTransformationPatch;
@@ -6,12 +6,14 @@ exports.EndpointTransformationPatchSerializer = {
6
6
  return {
7
7
  code: object["code"],
8
8
  enabled: object["enabled"],
9
+ variables: object["variables"],
9
10
  };
10
11
  },
11
12
  _toJsonObject(self) {
12
13
  return {
13
14
  code: self.code,
14
15
  enabled: self.enabled,
16
+ variables: self.variables,
15
17
  };
16
18
  },
17
19
  };
@@ -1 +1 @@
1
- {"version":3,"file":"endpointTransformationPatch.js","sourceRoot":"","sources":["../../src/models/endpointTransformationPatch.ts"],"names":[],"mappings":";;;AAOa,QAAA,qCAAqC,GAAG;IACnD,eAAe,CAAC,MAAW;QACzB,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC;SAC3B,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,IAAiC;QAC7C,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;IACJ,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"endpointTransformationPatch.js","sourceRoot":"","sources":["../../src/models/endpointTransformationPatch.ts"],"names":[],"mappings":";;;AAQa,QAAA,qCAAqC,GAAG;IACnD,eAAe,CAAC,MAAW;QACzB,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC;YAC1B,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC;SAC/B,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,IAAiC;QAC7C,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { type EndpointIn } from "./endpointIn";
2
+ export interface SubscribeIn {
3
+ endpoint: EndpointIn;
4
+ }
5
+ export declare const SubscribeInSerializer: {
6
+ _fromJsonObject(object: any): SubscribeIn;
7
+ _toJsonObject(self: SubscribeIn): any;
8
+ };
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SubscribeInSerializer = void 0;
4
+ const endpointIn_1 = require("./endpointIn");
5
+ exports.SubscribeInSerializer = {
6
+ _fromJsonObject(object) {
7
+ return {
8
+ endpoint: endpointIn_1.EndpointInSerializer._fromJsonObject(object["endpoint"]),
9
+ };
10
+ },
11
+ _toJsonObject(self) {
12
+ return {
13
+ endpoint: endpointIn_1.EndpointInSerializer._toJsonObject(self.endpoint),
14
+ };
15
+ },
16
+ };
17
+ //# sourceMappingURL=subscribeIn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscribeIn.js","sourceRoot":"","sources":["../../src/models/subscribeIn.ts"],"names":[],"mappings":";;;AACA,6CAAqE;AAMxD,QAAA,qBAAqB,GAAG;IACnC,eAAe,CAAC,MAAW;QACzB,OAAO;YACL,QAAQ,EAAE,iCAAoB,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SACnE,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,IAAiB;QAC7B,OAAO;YACL,QAAQ,EAAE,iCAAoB,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC;SAC5D,CAAC;IACJ,CAAC;CACF,CAAC"}
package/dist/request.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { type XOR } from "./util";
2
- export declare const LIB_VERSION = "1.93.0";
2
+ export declare const LIB_VERSION = "1.95.0";
3
3
  export declare enum HttpMethod {
4
4
  GET = "GET",
5
5
  HEAD = "HEAD",
package/dist/request.js CHANGED
@@ -11,7 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.SvixRequest = exports.HttpMethod = exports.LIB_VERSION = void 0;
13
13
  const util_1 = require("./util");
14
- exports.LIB_VERSION = "1.93.0";
14
+ exports.LIB_VERSION = "1.95.0";
15
15
  const USER_AGENT = `svix-libs/${exports.LIB_VERSION}/javascript`;
16
16
  var HttpMethod;
17
17
  (function (HttpMethod) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svix",
3
- "version": "1.93.0",
3
+ "version": "1.95.0",
4
4
  "description": "Svix webhooks API client and webhook verification library",
5
5
  "author": "svix",
6
6
  "repository": "https://github.com/svix/svix-webhooks",
@@ -33,7 +33,7 @@
33
33
  "devDependencies": {
34
34
  "@biomejs/biome": "2.2.4",
35
35
  "@stablelib/utf8": "^2.0.0",
36
- "mockttp": "^3.15.5",
36
+ "mockttp": "^4.4.1",
37
37
  "typescript": "^4.0"
38
38
  }
39
39
  }
@@ -152,7 +152,7 @@ export class MessageAttempt {
152
152
  after: options?.after,
153
153
  with_content: options?.withContent,
154
154
  with_msg: options?.withMsg,
155
- expanded_statuses: options?.expandedStatuses,
155
+ expanded_statuses: options?.expandedStatuses ?? true,
156
156
  event_types: options?.eventTypes,
157
157
  });
158
158
 
@@ -193,7 +193,7 @@ export class MessageAttempt {
193
193
  before: options?.before,
194
194
  after: options?.after,
195
195
  with_content: options?.withContent,
196
- expanded_statuses: options?.expandedStatuses,
196
+ expanded_statuses: options?.expandedStatuses ?? true,
197
197
  event_types: options?.eventTypes,
198
198
  });
199
199
 
@@ -234,7 +234,7 @@ export class MessageAttempt {
234
234
  before: options?.before,
235
235
  after: options?.after,
236
236
  with_content: options?.withContent,
237
- expanded_statuses: options?.expandedStatuses,
237
+ expanded_statuses: options?.expandedStatuses ?? true,
238
238
  event_types: options?.eventTypes,
239
239
  });
240
240
 
@@ -260,7 +260,7 @@ export class MessageAttempt {
260
260
  request.setPathParam("msg_id", msgId);
261
261
  request.setPathParam("attempt_id", attemptId);
262
262
  request.setQueryParams({
263
- expanded_statuses: options?.expandedStatuses,
263
+ expanded_statuses: options?.expandedStatuses ?? true,
264
264
  });
265
265
 
266
266
  return request.send(this.requestCtx, MessageAttemptOutSerializer._fromJsonObject);
@@ -0,0 +1,40 @@
1
+ // this file is @generated
2
+
3
+ import {
4
+ type EndpointTransformationIn,
5
+ EndpointTransformationInSerializer,
6
+ } from "../models/endpointTransformationIn";
7
+ import { EndpointAutoConfig } from "./endpointAutoConfig";
8
+ import { HttpMethod, SvixRequest, type SvixRequestContext } from "../request";
9
+
10
+ export class Endpoint {
11
+ public constructor(private readonly requestCtx: SvixRequestContext) {}
12
+
13
+ public get auto_config() {
14
+ return new EndpointAutoConfig(this.requestCtx);
15
+ }
16
+
17
+ /**
18
+ * This operation was renamed to `set-transformation`.
19
+ *
20
+ * @deprecated
21
+ */
22
+ public transformationPartialUpdate(
23
+ appId: string,
24
+ endpointId: string,
25
+ endpointTransformationIn: EndpointTransformationIn
26
+ ): Promise<void> {
27
+ const request = new SvixRequest(
28
+ HttpMethod.PATCH,
29
+ "/api/v1/app/{app_id}/endpoint/{endpoint_id}/transformation"
30
+ );
31
+
32
+ request.setPathParam("app_id", appId);
33
+ request.setPathParam("endpoint_id", endpointId);
34
+ request.setBody(
35
+ EndpointTransformationInSerializer._toJsonObject(endpointTransformationIn)
36
+ );
37
+
38
+ return request.sendNoResponseBody(this.requestCtx);
39
+ }
40
+ }
@@ -0,0 +1,27 @@
1
+ // this file is @generated
2
+
3
+ import { type EndpointOut, EndpointOutSerializer } from "../models/endpointOut";
4
+ import { type SubscribeIn, SubscribeInSerializer } from "../models/subscribeIn";
5
+ import { HttpMethod, SvixRequest, type SvixRequestContext } from "../request";
6
+
7
+ export class EndpointAutoConfig {
8
+ public constructor(private readonly requestCtx: SvixRequestContext) {}
9
+
10
+ /** Update an auto-config endpoint by providing endpoint details. */
11
+ public update(
12
+ appId: string,
13
+ endpointId: string,
14
+ subscribeIn: SubscribeIn
15
+ ): Promise<EndpointOut> {
16
+ const request = new SvixRequest(
17
+ HttpMethod.PUT,
18
+ "/api/v1/app/{app_id}/endpoint/{endpoint_id}/auto-config"
19
+ );
20
+
21
+ request.setPathParam("app_id", appId);
22
+ request.setPathParam("endpoint_id", endpointId);
23
+ request.setBody(SubscribeInSerializer._toJsonObject(subscribeIn));
24
+
25
+ return request.send(this.requestCtx, EndpointOutSerializer._fromJsonObject);
26
+ }
27
+ }
@@ -0,0 +1,8 @@
1
+ import { Svix } from "..";
2
+ import type { SvixRequestContext } from "../request";
3
+
4
+ export class SvixInternal extends Svix {
5
+ public getRequestCtx(): SvixRequestContext {
6
+ return this.requestCtx;
7
+ }
8
+ }
@@ -0,0 +1,51 @@
1
+ import { test } from "node:test";
2
+ import { strict as assert } from "node:assert/strict";
3
+
4
+ import { AutoConfig, AutoConfigError, Webhook } from "./index";
5
+
6
+ function makeTokenV1(payload: Record<string, string>): string {
7
+ const json = JSON.stringify(payload);
8
+ return `auto_v1_${Buffer.from(json, "utf8").toString("base64")}`;
9
+ }
10
+
11
+ test("AutoConfig accepts valid auto_v1 token and verify matches Webhook", () => {
12
+ const esec = "whsec_Zm9v";
13
+ const token = makeTokenV1({
14
+ aid: "app_1",
15
+ eid: "ep_2",
16
+ surl: "https://api.example.test",
17
+ esec,
18
+ tok: "sk_test_xyz",
19
+ });
20
+ const ac = new AutoConfig(token, { url: "https://consumer.example/webhook" });
21
+
22
+ const payload = '{"hello":"world"}';
23
+ const id = "msg_test_autoconfig";
24
+ const ts = new Date();
25
+ const wh = new Webhook(esec);
26
+ const sig = wh.sign(id, ts, payload);
27
+ const headers = {
28
+ "svix-id": id,
29
+ "svix-timestamp": Math.floor(ts.getTime() / 1000).toString(),
30
+ "svix-signature": sig,
31
+ };
32
+
33
+ ac.verify(payload, headers);
34
+ });
35
+
36
+ test("AutoConfig rejects wrong prefix", () => {
37
+ const json = JSON.stringify({
38
+ aid: "a",
39
+ eid: "e",
40
+ surl: "https://x",
41
+ esec: "whsec_Zm9v",
42
+ tok: "t",
43
+ });
44
+ const token = `wrong_${Buffer.from(json, "utf8").toString("base64")}`;
45
+ assert.throws(() => new AutoConfig(token, { url: "https://x" }), AutoConfigError);
46
+ });
47
+
48
+ test("AutoConfig rejects invalid JSON payload", () => {
49
+ const token = `auto_v1_${Buffer.from("not json", "utf8").toString("base64")}`;
50
+ assert.throws(() => new AutoConfig(token, { url: "https://x" }), AutoConfigError);
51
+ });
@@ -0,0 +1,115 @@
1
+ import { SvixInternal } from "./api_internal";
2
+ import { Endpoint as InternalEndpoint } from "./api_internal/endpoint";
3
+ import type { EndpointIn } from "./models/endpointIn";
4
+ import type { EndpointOut } from "./models/endpointOut";
5
+ import type { SvixRequestContext } from "./request";
6
+ import {
7
+ Webhook,
8
+ type WebhookRequiredHeaders,
9
+ type WebhookUnbrandedRequiredHeaders,
10
+ } from "./webhook";
11
+
12
+ const AUTOCONFIG_TOKEN_PREFIX_V1 = "auto_v1_";
13
+
14
+ interface AutoConfigTokenContentV1 {
15
+ aid: string;
16
+ eid: string;
17
+ surl: string;
18
+ esec: string;
19
+ tok: string;
20
+ }
21
+
22
+ export class AutoConfigError extends Error {
23
+ public constructor(message = "invalid token") {
24
+ super(message);
25
+ this.name = "AutoConfigError";
26
+ }
27
+ }
28
+
29
+ function isAutoConfigTokenContentV1(value: unknown): value is AutoConfigTokenContentV1 {
30
+ if (typeof value !== "object" || value === null) {
31
+ return false;
32
+ }
33
+
34
+ const { aid, eid, surl, esec, tok } = value as AutoConfigTokenContentV1;
35
+ return (
36
+ typeof aid === "string" &&
37
+ typeof eid === "string" &&
38
+ typeof surl === "string" &&
39
+ typeof esec === "string" &&
40
+ typeof tok === "string"
41
+ );
42
+ }
43
+
44
+ function decodeAutoconfigTokenV1(token: string): AutoConfigTokenContentV1 {
45
+ if (!token.startsWith(AUTOCONFIG_TOKEN_PREFIX_V1)) {
46
+ throw new AutoConfigError();
47
+ }
48
+ const b64 = token.slice(AUTOCONFIG_TOKEN_PREFIX_V1.length);
49
+ let json: string;
50
+
51
+ try {
52
+ json = Buffer.from(b64, "base64").toString("utf8");
53
+ } catch {
54
+ throw new AutoConfigError();
55
+ }
56
+
57
+ let parsed: unknown;
58
+ try {
59
+ parsed = JSON.parse(json);
60
+ } catch {
61
+ throw new AutoConfigError();
62
+ }
63
+
64
+ if (!isAutoConfigTokenContentV1(parsed)) {
65
+ throw new AutoConfigError();
66
+ }
67
+
68
+ return parsed;
69
+ }
70
+
71
+ export class AutoConfig {
72
+ private readonly appId: string;
73
+ private readonly endpointId: string;
74
+ private readonly endpointIn: EndpointIn;
75
+ private readonly webhook: Webhook;
76
+ private readonly requestCtx: SvixRequestContext;
77
+
78
+ public constructor(token: string, endpoint: EndpointIn) {
79
+ const content = decodeAutoconfigTokenV1(token);
80
+ let webhook: Webhook;
81
+ try {
82
+ webhook = new Webhook(content.esec);
83
+ } catch {
84
+ throw new AutoConfigError();
85
+ }
86
+
87
+ this.appId = content.aid;
88
+ this.endpointId = content.eid;
89
+ this.endpointIn = endpoint;
90
+ this.webhook = webhook;
91
+
92
+ const svix = new SvixInternal(content.tok, { serverUrl: content.surl });
93
+ this.requestCtx = svix.getRequestCtx();
94
+ }
95
+
96
+ public subscribe(): Promise<EndpointOut> {
97
+ return new InternalEndpoint(this.requestCtx).auto_config.update(
98
+ this.appId,
99
+ this.endpointId,
100
+ {
101
+ endpoint: this.endpointIn,
102
+ }
103
+ );
104
+ }
105
+
106
+ public verify(
107
+ payload: string | Buffer,
108
+ headers:
109
+ | WebhookRequiredHeaders
110
+ | WebhookUnbrandedRequiredHeaders
111
+ | Record<string, string>
112
+ ): unknown {
113
+ return this.webhook.verify(payload, headers);
114
+ }
115
+ }
package/src/index.test.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import "./autoconfig.test";
1
2
  import "./mockttp.test";
2
3
  import "./KitchenSink.test";
3
4
  import "./webhook.test";
package/src/index.ts CHANGED
@@ -65,7 +65,7 @@ const REGIONS = [
65
65
  ];
66
66
 
67
67
  export class Svix {
68
- private readonly requestCtx: SvixRequestContext;
68
+ protected readonly requestCtx: SvixRequestContext;
69
69
 
70
70
  public constructor(token: string, options: SvixOptions = {}) {
71
71
  const regionalUrl = REGIONS.find((x) => x.region === token.split(".")[1])?.url;
@@ -163,3 +163,6 @@ export class Svix {
163
163
  return new OperationalWebhookEndpoint(this.requestCtx);
164
164
  }
165
165
  }
166
+
167
+ // Last to avoid circular dependency
168
+ export * from "./autoconfig";
@@ -36,7 +36,7 @@ test("mockttp tests", async (t) => {
36
36
  });
37
37
  const requests = await endpointMock.getSeenRequests();
38
38
  assert.equal(requests.length, 1);
39
- assert(requests[0].url.endsWith("before=2025-02-16T21%3A38%3A21.977Z"));
39
+ assert(requests[0].url.includes("before=2025-02-16T21%3A38%3A21.977Z"));
40
40
  });
41
41
 
42
42
  await t.test("test Date request body", async () => {
@@ -4,6 +4,7 @@ export interface EndpointTransformationOut {
4
4
  code?: string | null;
5
5
  enabled?: boolean;
6
6
  updatedAt?: Date | null;
7
+ variables?: { [key: string]: string } | null;
7
8
  }
8
9
 
9
10
  export const EndpointTransformationOutSerializer = {
@@ -12,6 +13,7 @@ export const EndpointTransformationOutSerializer = {
12
13
  code: object["code"],
13
14
  enabled: object["enabled"],
14
15
  updatedAt: object["updatedAt"] ? new Date(object["updatedAt"]) : null,
16
+ variables: object["variables"],
15
17
  };
16
18
  },
17
19
 
@@ -20,6 +22,7 @@ export const EndpointTransformationOutSerializer = {
20
22
  code: self.code,
21
23
  enabled: self.enabled,
22
24
  updatedAt: self.updatedAt,
25
+ variables: self.variables,
23
26
  };
24
27
  },
25
28
  };
@@ -3,6 +3,7 @@
3
3
  export interface EndpointTransformationPatch {
4
4
  code?: string | null;
5
5
  enabled?: boolean;
6
+ variables?: { [key: string]: string } | null;
6
7
  }
7
8
 
8
9
  export const EndpointTransformationPatchSerializer = {
@@ -10,6 +11,7 @@ export const EndpointTransformationPatchSerializer = {
10
11
  return {
11
12
  code: object["code"],
12
13
  enabled: object["enabled"],
14
+ variables: object["variables"],
13
15
  };
14
16
  },
15
17
 
@@ -17,6 +19,7 @@ export const EndpointTransformationPatchSerializer = {
17
19
  return {
18
20
  code: self.code,
19
21
  enabled: self.enabled,
22
+ variables: self.variables,
20
23
  };
21
24
  },
22
25
  };
@@ -0,0 +1,20 @@
1
+ // this file is @generated
2
+ import { type EndpointIn, EndpointInSerializer } from "./endpointIn";
3
+
4
+ export interface SubscribeIn {
5
+ endpoint: EndpointIn;
6
+ }
7
+
8
+ export const SubscribeInSerializer = {
9
+ _fromJsonObject(object: any): SubscribeIn {
10
+ return {
11
+ endpoint: EndpointInSerializer._fromJsonObject(object["endpoint"]),
12
+ };
13
+ },
14
+
15
+ _toJsonObject(self: SubscribeIn): any {
16
+ return {
17
+ endpoint: EndpointInSerializer._toJsonObject(self.endpoint),
18
+ };
19
+ },
20
+ };
package/src/request.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { ApiException, type XOR } from "./util";
2
2
  import type { HttpErrorOut, HTTPValidationError } from "./HttpErrors";
3
3
 
4
- export const LIB_VERSION = "1.93.0";
4
+ export const LIB_VERSION = "1.95.0";
5
5
  const USER_AGENT = `svix-libs/${LIB_VERSION}/javascript`;
6
6
 
7
7
  export enum HttpMethod {