@assemblyline-agents/hubspot 4.0.1 → 5.0.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/dist/events.js +8 -8
- package/dist/events.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/package.json +2 -2
package/dist/events.js
CHANGED
|
@@ -2,9 +2,9 @@ import { ConnectionEventError, headerValue, providerJson, requireEnvironmentValu
|
|
|
2
2
|
const API = "https://api.hubapi.com/webhooks/2026-03";
|
|
3
3
|
export const hubspotEvents = {
|
|
4
4
|
async reconcile(context) {
|
|
5
|
-
const appId = requireEnvironmentValue(context.
|
|
6
|
-
const key =
|
|
7
|
-
|
|
5
|
+
const appId = requireEnvironmentValue(context.config, "HUBSPOT_APP_ID");
|
|
6
|
+
const key = await context.credentials.get("HUBSPOT_DEVELOPER_API_KEY", { purpose: "manage HubSpot webhooks", delivery: "http_header" });
|
|
7
|
+
await context.credentials.get("HUBSPOT_CLIENT_SECRET", { purpose: "configure HubSpot webhook verification", delivery: "http_header" });
|
|
8
8
|
for (const id of subscriptionIds(context.state))
|
|
9
9
|
await call(context.fetch, key, `/${appId}/subscriptions/${id}`, { method: "DELETE" }, [200, 204, 404]);
|
|
10
10
|
await call(context.fetch, key, `/${appId}/settings`, { method: "PUT", body: JSON.stringify({ targetUrl: context.callbackUrl, throttling: { maxConcurrentRequests: 10 } }) });
|
|
@@ -21,14 +21,14 @@ export const hubspotEvents = {
|
|
|
21
21
|
}
|
|
22
22
|
return { status: "active", externalId: ids.join(","), state: { subscriptionIds: ids }, detail: `${ids.length} HubSpot subscription${ids.length === 1 ? " is" : "s are"} active.` };
|
|
23
23
|
},
|
|
24
|
-
async remove(context) { const appId = requireEnvironmentValue(context.
|
|
24
|
+
async remove(context) { const appId = requireEnvironmentValue(context.config, "HUBSPOT_APP_ID"); const key = await context.credentials.get("HUBSPOT_DEVELOPER_API_KEY", { purpose: "remove HubSpot webhooks", delivery: "http_header" }); for (const id of subscriptionIds(context.state))
|
|
25
25
|
await call(context.fetch, key, `/${appId}/subscriptions/${id}`, { method: "DELETE" }, [200, 204, 404]); },
|
|
26
26
|
async check(context) {
|
|
27
27
|
const ids = subscriptionIds(context.state);
|
|
28
28
|
if (!ids.length)
|
|
29
29
|
return { status: "needs_setup", detail: "No HubSpot webhook subscriptions are configured." };
|
|
30
|
-
const appId = requireEnvironmentValue(context.
|
|
31
|
-
const key =
|
|
30
|
+
const appId = requireEnvironmentValue(context.config, "HUBSPOT_APP_ID");
|
|
31
|
+
const key = await context.credentials.get("HUBSPOT_DEVELOPER_API_KEY", { purpose: "check HubSpot webhooks", delivery: "http_header" });
|
|
32
32
|
for (const id of ids) {
|
|
33
33
|
const value = await call(context.fetch, key, `/${appId}/subscriptions/${id}`, {}, [200, 404]);
|
|
34
34
|
if (!value.id || value.active === false)
|
|
@@ -36,11 +36,11 @@ export const hubspotEvents = {
|
|
|
36
36
|
}
|
|
37
37
|
return { status: "active", detail: `${ids.length} HubSpot subscription${ids.length === 1 ? " is" : "s are"} active.` };
|
|
38
38
|
},
|
|
39
|
-
ingress(request, context) {
|
|
39
|
+
async ingress(request, context) {
|
|
40
40
|
const timestamp = headerValue(request.headers, "x-hubspot-request-timestamp");
|
|
41
41
|
if (!timestamp || Math.abs(Date.now() - Number(timestamp)) > 300_000)
|
|
42
42
|
throw new ConnectionEventError("HubSpot webhook timestamp is stale.", 401);
|
|
43
|
-
const secret =
|
|
43
|
+
const secret = await context.credentials.get("HUBSPOT_CLIENT_SECRET", { purpose: "verify HubSpot webhook", delivery: "http_header" });
|
|
44
44
|
const signature = headerValue(request.headers, "x-hubspot-signature-v3");
|
|
45
45
|
const signed = `${request.method}${decodeHubSpotUri(context.callbackUrl)}${request.body}${timestamp}`;
|
|
46
46
|
if (!verifyHmacSha256({ secret, body: signed, signature, encoding: "base64" }))
|
package/dist/events.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,WAAW,EACX,YAAY,EACZ,uBAAuB,EACvB,WAAW,EACX,gBAAgB,EAIjB,MAAM,2BAA2B,CAAC;AAEnC,MAAM,GAAG,GAAG,yCAAyC,CAAC;AAEtD,MAAM,CAAC,MAAM,aAAa,GAAiC;IACzD,KAAK,CAAC,SAAS,CAAC,OAAO;QACrB,MAAM,KAAK,GAAG,uBAAuB,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type McpPluginConnectionOptions } from "@assemblyline-agents/core";
|
|
2
2
|
export type HubSpotConnectionOptions = McpPluginConnectionOptions;
|
|
3
|
-
export declare function defineHubSpotConnection(options: HubSpotConnectionOptions): import("@assemblyline-agents/core").McpHttpClientConnectionDefinition
|
|
3
|
+
export declare function defineHubSpotConnection(options: HubSpotConnectionOptions): import("@assemblyline-agents/core").ConnectionDefinitionFactory<import("@assemblyline-agents/core").McpHttpClientConnectionDefinition>;
|
|
4
4
|
export declare const assemblyLinePlugin: import("@assemblyline-agents/core").PluginModule;
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmG,KAAK,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAG7K,MAAM,MAAM,wBAAwB,GAAG,0BAA0B,CAAC;AAClE,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,wBAAwB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmG,KAAK,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAG7K,MAAM,MAAM,wBAAwB,GAAG,0BAA0B,CAAC;AAClE,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,wBAAwB,0IAAmN;AAC5R,eAAO,MAAM,kBAAkB,kDAA0C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@assemblyline-agents/hubspot",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": {
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
}
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@assemblyline-agents/core": "
|
|
12
|
+
"@assemblyline-agents/core": "5.0.0"
|
|
13
13
|
},
|
|
14
14
|
"description": "Official Assembly Line HubSpot connection plugin.",
|
|
15
15
|
"files": [
|