@revfleet/hscli 0.8.10 → 0.8.12

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 (63) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/README.md +31 -2
  3. package/dist/cli.js +27 -0
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/auth/index.js +46 -11
  6. package/dist/commands/auth/index.js.map +1 -1
  7. package/dist/commands/crm/activities.d.ts +3 -0
  8. package/dist/commands/crm/activities.js +186 -0
  9. package/dist/commands/crm/activities.js.map +1 -0
  10. package/dist/commands/crm/index.js +4 -0
  11. package/dist/commands/crm/index.js.map +1 -1
  12. package/dist/commands/crm/migration.d.ts +3 -0
  13. package/dist/commands/crm/migration.js +155 -0
  14. package/dist/commands/crm/migration.js.map +1 -0
  15. package/dist/commands/crm/properties.js +105 -18
  16. package/dist/commands/crm/properties.js.map +1 -1
  17. package/dist/commands/crm/property-batch.d.ts +34 -0
  18. package/dist/commands/crm/property-batch.js +205 -0
  19. package/dist/commands/crm/property-batch.js.map +1 -0
  20. package/dist/commands/doctor/index.js +119 -1
  21. package/dist/commands/doctor/index.js.map +1 -1
  22. package/dist/commands/forms/index.js +47 -6
  23. package/dist/commands/forms/index.js.map +1 -1
  24. package/dist/commands/forms/legacy-v2.d.ts +6 -0
  25. package/dist/commands/forms/legacy-v2.js +350 -0
  26. package/dist/commands/forms/legacy-v2.js.map +1 -0
  27. package/dist/commands/forms/property-preflight.d.ts +20 -0
  28. package/dist/commands/forms/property-preflight.js +99 -0
  29. package/dist/commands/forms/property-preflight.js.map +1 -0
  30. package/dist/commands/guide/index.d.ts +6 -0
  31. package/dist/commands/guide/index.js +257 -0
  32. package/dist/commands/guide/index.js.map +1 -0
  33. package/dist/commands/settings/index.js +238 -2
  34. package/dist/commands/settings/index.js.map +1 -1
  35. package/dist/commands/ui/index.d.ts +3 -0
  36. package/dist/commands/ui/index.js +412 -0
  37. package/dist/commands/ui/index.js.map +1 -0
  38. package/dist/core/auth.d.ts +7 -1
  39. package/dist/core/auth.js +45 -7
  40. package/dist/core/auth.js.map +1 -1
  41. package/dist/core/http.d.ts +16 -0
  42. package/dist/core/http.js +141 -40
  43. package/dist/core/http.js.map +1 -1
  44. package/dist/core/output.d.ts +2 -0
  45. package/dist/core/output.js +1 -1
  46. package/dist/core/output.js.map +1 -1
  47. package/dist/core/scopes.d.ts +29 -0
  48. package/dist/core/scopes.js +415 -0
  49. package/dist/core/scopes.js.map +1 -0
  50. package/dist/mcp/ext-tools.d.ts +1 -1
  51. package/dist/mcp/ext-tools.js +52 -1
  52. package/dist/mcp/ext-tools.js.map +1 -1
  53. package/dist/mcp/server.js +90 -22
  54. package/dist/mcp/server.js.map +1 -1
  55. package/docs/CAPABILITY_LIBRARY.md +4 -3
  56. package/docs/COMMAND_TREE.md +23 -5
  57. package/docs/COOKBOOK.md +99 -0
  58. package/docs/MARKETING_SETUP.md +8 -2
  59. package/docs/MCP.md +1 -0
  60. package/docs/OPERATIONAL_PLAYBOOKS.md +1 -1
  61. package/docs/PORTAL_SETUP.md +3 -2
  62. package/docs/SAFETY_MODEL.md +3 -0
  63. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,69 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.8.12 - 2026-04-24
4
+
5
+ **Terminal operator home + `/fetch` alias.** Two incremental adds on
6
+ top of 0.8.11's operator surface.
7
+
8
+ ### Added — terminal operator home
9
+
10
+ - `hscli ui` / `hscli home` — opens a terminal home screen showing
11
+ the current profile's role, read/write safety state, policy + trace
12
+ status, API-usage guidance, and a recommended next command. Works
13
+ as a landing surface for "what should I do next on this portal?".
14
+
15
+ ### Added — `/fetch` (`/get`) slash command
16
+
17
+ - Added to the Claude-style operator set (now `/setup`, `/migration`,
18
+ `/read`, `/fetch` / `/get`, `/write`, `/guardrails`). Thin alias
19
+ over read-shaped commands so agents can pick up HubSpot records
20
+ with the same grammar they use to read vault state.
21
+
22
+ One new test (308 total passing).
23
+
24
+ ## 0.8.11 - 2026-04-24
25
+
26
+ **Migration operator surface + shared rate-limit enforcement.** Ships
27
+ the Claude-style `/setup` → `/migration` → `/read` → `/write` →
28
+ `/guardrails` operator flow, fleshes out migration-replay coverage
29
+ (batch properties, custom-object property routing, legacy v2 forms
30
+ translator, session-auth permission sets), and tightens the HTTP
31
+ layer so multiple clients in one process no longer overrun a shared
32
+ HubSpot rate budget.
33
+
34
+ 38 new tests land alongside the features (307 total passing).
35
+
36
+ ### Added — migration/operator workflows
37
+
38
+ - Claude-style operator entrypoints: `hscli /setup`, `/migration`,
39
+ `/read`, `/write`, and `/guardrails`, with non-slash aliases for
40
+ shell environments that prefer plain command names.
41
+ - `auth set-hublet <profile> <hublet>` plus global `--hublet` /
42
+ `--api-base-url` routing overrides for explicit EU/AP/NA hublet
43
+ control.
44
+ - `doctor scopes list|presets|explain|diff`, backed by a local
45
+ HubSpot scope catalog and `real-mirror-read` / `real-mirror-write`
46
+ presets.
47
+
48
+ ### Added — migration replay coverage
49
+
50
+ - Batch property create support and custom-object property/group
51
+ endpoint routing for object type IDs.
52
+ - Legacy v2 forms translator/replay hardening: required v3 metadata,
53
+ property preflight, and group-size splitting.
54
+ - Session-auth permission-set commands for internal HubSpot permission
55
+ set migration paths.
56
+
57
+ ### Fixed — HubSpot rate-limit enforcement
58
+
59
+ - Rate-limit state is now shared by `profile + API base URL + auth kind`
60
+ within the process, so multiple clients do not overrun the same
61
+ observed budget.
62
+ - The HTTP layer enforces HubSpot `Secondly`, rolling window, daily
63
+ remaining, and `Retry-After` headers before subsequent calls.
64
+ - Daily hard-limit responses now stop immediately with
65
+ `RATE_LIMIT_DAILY_EXHAUSTED` instead of retrying and wasting calls.
66
+
3
67
  ## 0.8.10 - 2026-04-24
4
68
 
5
69
  **Polish follow-up to 0.8.9.** Five small fixes from the PR #43 review —
package/README.md CHANGED
@@ -38,6 +38,35 @@ hscli crm contacts list --limit 5
38
38
 
39
39
  Create a Private App token at **Settings → Integrations → Private Apps → Create private app** in your HubSpot portal.
40
40
 
41
+ For EU/AP/NA hublet routing, hscli auto-detects from token/account metadata. You can also pin it explicitly:
42
+
43
+ ```bash
44
+ printf '%s' "$HUBSPOT_TOKEN" | hscli auth login --profile live --token-stdin --hublet eu1
45
+ hscli auth set-hublet live eu1
46
+ ```
47
+
48
+ ## Operator workflows
49
+
50
+ Start from intent instead of memorizing the whole command tree:
51
+
52
+ ```bash
53
+ hscli ui # terminal home: profiles, safety, next action, workflows
54
+ hscli /setup # auth, hublet routing, scopes, capabilities
55
+ hscli /migration # portal/schema migration sequence
56
+ hscli /read # source-portal read workflow
57
+ hscli /fetch # get records or metadata without mutation
58
+ hscli /get # alias for /fetch
59
+ hscli /write # target-portal write workflow
60
+ hscli /guardrails # read-only, policy, trace, scope checks
61
+ ```
62
+
63
+ Scope checks are built in:
64
+
65
+ ```bash
66
+ hscli doctor scopes diff --required real-mirror-read
67
+ hscli doctor scopes explain sales-email-read
68
+ ```
69
+
41
70
  ## Write safely
42
71
 
43
72
  ```bash
@@ -121,7 +150,7 @@ Every request hscli makes is append-only JSONL. Pair `trace` with `audit` for fu
121
150
  - **Legacy v1/v2** — every pre-v3 surface preserved for portals that still need them
122
151
  - **Raw API** command with path-scope controls + full OAuth flow support
123
152
 
124
- Enterprise defaults: `--dry-run`, `--force`, policy files, change tickets, capability probing, rate-limit intelligence, token redaction, path scope allowlisting, idempotency keys on every write.
153
+ Enterprise defaults: `--dry-run`, `--force`, policy files, change tickets, capability probing, shared rate-limit enforcement, token redaction, path scope allowlisting, idempotency keys on every write.
125
154
 
126
155
  </details>
127
156
 
@@ -153,7 +182,7 @@ Exact endpoint → tier mapping in [docs/TIERS.md](docs/TIERS.md).
153
182
  1. **CLI-first, MCP as a peer.** Every MCP tool has a matching `hscli` command — same write gates, same redaction, same capability probing in both.
154
183
  2. **Self-hosted, token-sovereign.** Your HubSpot private app token stays on your machine. No telemetry, no phone-home.
155
184
  3. **Safe by default.** Mutations are blocked unless `--force` is explicit. `--dry-run` previews every write. Idempotency-Key on every mutation.
156
- 4. **HubSpot-native.** Reads `X-HubSpot-RateLimit-*` headers, throttles proactively, caches capabilities by `portalId + scopes`, validates payloads offline.
185
+ 4. **HubSpot-native.** Reads `X-HubSpot-RateLimit-*` headers, throttles proactively across clients, stops on daily hard-limit exhaustion, caches capabilities by `portalId + scopes`, validates payloads offline.
157
186
 
158
187
  ## Output modes
159
188
 
package/dist/cli.js CHANGED
@@ -32,6 +32,8 @@ import { registerEvents } from "./commands/events/index.js";
32
32
  import { registerEmailEvents } from "./commands/email-events/index.js";
33
33
  import { registerMediaBridge } from "./commands/media-bridge/index.js";
34
34
  import { registerFeatureFlags } from "./commands/feature-flags/index.js";
35
+ import { registerGuide } from "./commands/guide/index.js";
36
+ import { registerUi } from "./commands/ui/index.js";
35
37
  import { registerMarketingEmailsV1 } from "./commands/marketing-emails-v1/index.js";
36
38
  import { registerIntegrators } from "./commands/integrators/index.js";
37
39
  import { registerIntegrations } from "./commands/integrations/index.js";
@@ -40,6 +42,7 @@ import { registerBroadcast, registerVisitorIdentification, registerSubmissions,
40
42
  import { registerContactsV1, registerCompaniesV2, registerDealsV1, registerOwnersV2, registerEngagementsV1, registerPropertiesLegacy, registerReportsV2, registerPaymentsSubscriptions, registerContentV2, registerSalesExtensions, registerComments, registerCallingV1, registerChannels, } from "./commands/legacy-v1/index.js";
41
43
  import { CliError, printError } from "./core/output.js";
42
44
  import { loadPlugins } from "./core/plugins.js";
45
+ import { normalizeApiBaseUrl, normalizeStoredHublet, resolveApiDomain } from "./core/auth.js";
43
46
  import pkg from "../package.json" with { type: "json" };
44
47
  export function createProgram() {
45
48
  const program = new Command();
@@ -64,9 +67,13 @@ export function createProgram() {
64
67
  .option("--policy-file <path>", "Policy file controlling write/delete permissions")
65
68
  .option("--change-ticket <id>", "Change ticket reference for guarded writes")
66
69
  .option("--telemetry-file <path>", "Append request telemetry JSON lines to a local file")
70
+ .option("--hublet <id>", "Override HubSpot hublet routing for this invocation (eu1, na1, na2, ap1)")
71
+ .option("--api-base-url <url>", "Advanced: override HubSpot API base URL (must be api*.hubapi.com)")
67
72
  .hook("preAction", (cmd) => {
68
73
  const opts = cmd.optsWithGlobals();
69
74
  const telemetryFile = opts.telemetryFile ? String(opts.telemetryFile).trim() : undefined;
75
+ const hublet = opts.hublet ? normalizeStoredHublet(String(opts.hublet)) : undefined;
76
+ const apiBaseUrl = resolveApiBaseUrlOverride(hublet, opts.apiBaseUrl ? String(opts.apiBaseUrl) : undefined);
70
77
  ctx = {
71
78
  profile: opts.profile ?? "default",
72
79
  json: Boolean(opts.json),
@@ -78,12 +85,18 @@ export function createProgram() {
78
85
  changeTicket: opts.changeTicket ? String(opts.changeTicket).trim() : undefined,
79
86
  runId,
80
87
  telemetryFile,
88
+ hublet,
89
+ apiBaseUrl,
81
90
  };
82
91
  process.env.HSCLI_PROFILE = ctx.profile;
83
92
  process.env.HSCLI_STRICT_CAPABILITIES = ctx.strictCapabilities ? "1" : "0";
84
93
  process.env.HSCLI_REQUEST_ID = runId;
85
94
  if (telemetryFile)
86
95
  process.env.HSCLI_TELEMETRY_FILE = telemetryFile;
96
+ if (apiBaseUrl)
97
+ process.env.HSCLI_API_BASE_URL = apiBaseUrl;
98
+ else
99
+ delete process.env.HSCLI_API_BASE_URL;
87
100
  // CLI is single-invocation per process, so env is safe here (no
88
101
  // concurrency). emitTelemetry() reads this as a fallback when the
89
102
  // AsyncLocalStorage changeTicket isn't set — which is the CLI case,
@@ -125,6 +138,8 @@ export function createProgram() {
125
138
  registerEmailEvents(program, () => ctx);
126
139
  registerMediaBridge(program, () => ctx);
127
140
  registerFeatureFlags(program, () => ctx);
141
+ registerUi(program, () => ctx);
142
+ registerGuide(program, () => ctx);
128
143
  registerMarketingEmailsV1(program, () => ctx);
129
144
  registerIntegrators(program, () => ctx);
130
145
  registerIntegrations(program, () => ctx);
@@ -189,6 +204,8 @@ export async function run(argv = process.argv) {
189
204
  changeTicket: opts.changeTicket ? String(opts.changeTicket).trim() : undefined,
190
205
  runId: process.env.HSCLI_REQUEST_ID,
191
206
  telemetryFile: opts.telemetryFile ? String(opts.telemetryFile).trim() : undefined,
207
+ hublet: opts.hublet ? String(opts.hublet).trim() : undefined,
208
+ apiBaseUrl: opts.apiBaseUrl ? String(opts.apiBaseUrl).trim() : undefined,
192
209
  };
193
210
  printError(ctx, err);
194
211
  process.exitCode = 1;
@@ -213,6 +230,16 @@ try {
213
230
  catch {
214
231
  // If realpath fails (e.g. imported as ESM for testing), silently skip.
215
232
  }
233
+ function resolveApiBaseUrlOverride(hublet, rawApiBaseUrl) {
234
+ if (hublet && rawApiBaseUrl?.trim()) {
235
+ throw new CliError("API_ROUTING_CONFLICT", "Use either --hublet or --api-base-url, not both.");
236
+ }
237
+ if (rawApiBaseUrl?.trim())
238
+ return normalizeApiBaseUrl(rawApiBaseUrl);
239
+ if (hublet)
240
+ return `https://${resolveApiDomain(hublet)}`;
241
+ return undefined;
242
+ }
216
243
  function resolveOutputFormat(raw, jsonFlag) {
217
244
  const fallback = "table";
218
245
  const value = (raw === undefined || raw === null) ? fallback : String(raw).trim().toLowerCase();
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,gCAAgC,EAAE,MAAM,+CAA+C,CAAC;AACjG,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EACL,iBAAiB,EACjB,6BAA6B,EAC7B,mBAAmB,EACnB,iBAAiB,EACjB,WAAW,EACX,mBAAmB,EACnB,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACrB,wBAAwB,EACxB,iBAAiB,EACjB,6BAA6B,EAC7B,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAmB,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9F,OAAO,GAAG,MAAM,iBAAiB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAExD,MAAM,UAAU,aAAa;IAC3B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,IAAI,GAAG,GAAe,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IACnI,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAE3B,OAAO;SACJ,IAAI,CAAC,OAAO,CAAC;SACb,WAAW;IACV,kEAAkE;IAClE,mEAAmE;IACnE,4DAA4D;IAC5D,UAAU;UACR,oDAAoD;UACpD,2DAA2D,CAC9D;SACA,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;SACpB,MAAM,CAAC,kBAAkB,EAAE,cAAc,EAAE,SAAS,CAAC;SACrD,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC;SAC/B,MAAM,CAAC,iBAAiB,EAAE,oCAAoC,CAAC;SAC/D,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC;SACtC,MAAM,CAAC,SAAS,EAAE,0BAA0B,CAAC;SAC7C,MAAM,CAAC,uBAAuB,EAAE,sDAAsD,CAAC;SACvF,MAAM,CAAC,sBAAsB,EAAE,kDAAkD,CAAC;SAClF,MAAM,CAAC,sBAAsB,EAAE,4CAA4C,CAAC;SAC5E,MAAM,CAAC,yBAAyB,EAAE,qDAAqD,CAAC;SACxF,MAAM,CAAC,eAAe,EAAE,0EAA0E,CAAC;SACnG,MAAM,CAAC,sBAAsB,EAAE,mEAAmE,CAAC;SACnG,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE;QACzB,MAAM,IAAI,GAAG,GAAG,CAAC,eAAe,EAAE,CAAC;QACnC,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACzF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACpF,MAAM,UAAU,GAAG,yBAAyB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC5G,GAAG,GAAG;YACJ,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,SAAS;YAClC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YACxB,MAAM,EAAE,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5D,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YAC5B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YAC1B,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC;YACpD,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;YACxE,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;YAC9E,KAAK;YACL,aAAa;YACb,MAAM;YACN,UAAU;SACX,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,yBAAyB,GAAG,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,KAAK,CAAC;QACrC,IAAI,aAAa;YAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,GAAG,aAAa,CAAC;QACpE,IAAI,UAAU;YAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,UAAU,CAAC;;YACvD,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;QAC3C,gEAAgE;QAChE,kEAAkE;QAClE,oEAAoE;QACpE,sDAAsD;QACtD,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,GAAG,CAAC,YAAY,CAAC;QACrD,CAAC;aAAM,CAAC;YACN,OAAO,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACzC,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,YAAY,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACjC,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACnC,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAChC,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACtC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAClC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAClC,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAChC,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACtC,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACpC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACrC,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAChC,YAAY,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACjC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAClC,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACnC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAClC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAClC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAClC,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACtC,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACpC,kBAAkB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACvC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACrC,qBAAqB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC1C,kBAAkB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACvC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACrC,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACpC,gCAAgC,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACrD,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACnC,mBAAmB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACxC,mBAAmB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACxC,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACzC,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC/B,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAClC,yBAAyB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC9C,mBAAmB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACxC,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACzC,kBAAkB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACvC,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACtC,6BAA6B,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAClD,mBAAmB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACxC,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACtC,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAChC,mBAAmB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACxC,uBAAuB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC5C,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACzC,kBAAkB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACvC,mBAAmB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACxC,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACpC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACrC,qBAAqB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC1C,wBAAwB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC7C,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACtC,6BAA6B,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAClD,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACtC,uBAAuB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC5C,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACrC,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACtC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IACrC,qBAAqB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC1C,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC3C,wBAAwB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC7C,WAAW,CAAC,OAAO,CAAC,CAAC;IAErB,OAAO,CAAC,eAAe,CAAC;QACtB,WAAW,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC1B,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACvB,UAAU,CAAC,GAAG,EAAE,IAAI,QAAQ,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC,CAAC;YACtD,KAAK,CAAC,EAAE,CAAC,CAAC;QACZ,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;AACxC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI;IAC3C,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;IAC5C,MAAM,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,MAAyC,CAAC;QAC9C,IAAI,CAAC;YACH,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAChE,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QACxC,CAAC;QACD,MAAM,GAAG,GAAe;YACtB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,SAAS;YAClC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YACxB,MAAM;YACN,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YAC5B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YAC1B,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC;YACpD,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;YACxE,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;YAC9E,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;YACnC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;YACjF,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;YAC5D,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;SACzE,CAAC;QACF,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACrB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;AAED,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,2EAA2E;AAC3E,wEAAwE;AACxE,uEAAuE;AACvE,6DAA6D;AAC7D,0EAA0E;AAC1E,sEAAsE;AACtE,8CAA8C;AAC9C,IAAI,CAAC;IACH,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChD,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC3B,KAAK,GAAG,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAAC,MAAM,CAAC;IACP,uEAAuE;AACzE,CAAC;AAED,SAAS,yBAAyB,CAAC,MAA0B,EAAE,aAAiC;IAC9F,IAAI,MAAM,IAAI,aAAa,EAAE,IAAI,EAAE,EAAE,CAAC;QACpC,MAAM,IAAI,QAAQ,CAAC,sBAAsB,EAAE,kDAAkD,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,aAAa,EAAE,IAAI,EAAE;QAAE,OAAO,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACrE,IAAI,MAAM;QAAE,OAAO,WAAW,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;IACzD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAY,EAAE,QAAiB;IAC1D,MAAM,QAAQ,GAAG,OAAO,CAAC;IACzB,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAChG,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,QAAQ,CAAC,gBAAgB,EAAE,+CAA+C,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,QAAQ,IAAI,KAAK,KAAK,MAAM,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACtE,MAAM,IAAI,QAAQ,CAAC,gBAAgB,EAAE,iDAAiD,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAE,KAA2C,CAAC;AAC1E,CAAC"}
@@ -1,21 +1,23 @@
1
1
  import { readFileSync } from "node:fs";
2
2
  import { createClient } from "../../core/http.js";
3
- import { getProfile, getToken, hasProfile, listProfiles, removeToken, saveProfile, saveToken, detectHublet, resolveApiDomain, getHscliHomeDir } from "../../core/auth.js";
3
+ import { getProfile, getToken, hasProfile, listProfiles, removeToken, saveProfile, saveToken, detectHublet, resolveApiDomain, getHscliHomeDir, normalizeApiDomain, normalizeStoredHublet, } from "../../core/auth.js";
4
4
  /**
5
5
  * Derive an API base URL from what we can see *before* the profile exists
6
6
  * — used during `auth login` to verify the token against the right hublet
7
7
  * on the first call, so EU/AP portals don't first 4xx against na1 and
8
8
  * then succeed on retry.
9
9
  */
10
- function resolveVerifyBaseUrl(token) {
11
- const hublet = detectHublet({ token });
10
+ function resolveVerifyBaseUrl(token, hubletOverride, apiDomainOverride) {
11
+ if (apiDomainOverride?.trim())
12
+ return `https://${normalizeApiDomain(apiDomainOverride)}`;
13
+ const hublet = hubletOverride ? normalizeStoredHublet(hubletOverride) : detectHublet({ token });
12
14
  return `https://${resolveApiDomain(hublet)}`;
13
15
  }
14
16
  import { CliError, printResult } from "../../core/output.js";
15
17
  import { encryptExistingVault, decryptExistingVault, getVaultPassphrase, isVaultEncrypted } from "../../core/vault.js";
16
- async function fetchPortalDetails(token) {
18
+ async function fetchPortalDetails(token, routing = {}) {
17
19
  const result = {};
18
- const baseUrl = resolveVerifyBaseUrl(token);
20
+ const baseUrl = resolveVerifyBaseUrl(token, routing.hublet, routing.apiDomain);
19
21
  try {
20
22
  const res = await fetch(`${baseUrl}/account-info/v3/details`, {
21
23
  headers: { Authorization: `Bearer ${token}`, "Content-Type": "application/json" },
@@ -27,6 +29,8 @@ async function fetchPortalDetails(token) {
27
29
  result.portalId = String(data.portalId);
28
30
  if (data.uiDomain)
29
31
  result.uiDomain = String(data.uiDomain);
32
+ if (data.dataHostingLocation)
33
+ result.dataHostingLocation = String(data.dataHostingLocation);
30
34
  }
31
35
  }
32
36
  catch {
@@ -78,13 +82,20 @@ export function registerAuth(program, getCtx) {
78
82
  .option("--token <token>", "HubSpot private app token")
79
83
  .option("--token-stdin", "Read HubSpot private app token from stdin")
80
84
  .option("--profile <name>", "Profile name override")
85
+ .option("--hublet <id>", "Force hublet routing during verification and persist it (eu1, na1, na2, ap1)")
86
+ .option("--api-domain <domain>", "Advanced: force and persist API domain (api.hubapi.com or api-<hublet>.hubapi.com)")
81
87
  .option("--no-verify", "Skip portal verification (token is saved without contacting HubSpot)")
82
88
  .action(async (opts) => {
83
89
  const ctx = getCtx();
84
90
  const profile = opts.profile ?? ctx.profile;
85
91
  const token = resolveLoginToken(opts);
92
+ const hubletOverride = opts.hublet ?? ctx.hublet;
93
+ const apiDomainOverride = opts.apiDomain ?? (!hubletOverride ? ctx.apiBaseUrl : undefined);
94
+ if (hubletOverride && apiDomainOverride) {
95
+ throw new CliError("API_ROUTING_CONFLICT", "Use either --hublet or --api-domain, not both.");
96
+ }
86
97
  const shouldVerify = opts.verify !== false;
87
- const details = shouldVerify ? await fetchPortalDetails(token) : {};
98
+ const details = shouldVerify ? await fetchPortalDetails(token, { hublet: hubletOverride, apiDomain: apiDomainOverride }) : {};
88
99
  const verificationFailed = shouldVerify && !details.portalId && !details.uiDomain;
89
100
  if (verificationFailed) {
90
101
  // Emit a loud warning but don't abort: the user may be on a
@@ -96,16 +107,21 @@ export function registerAuth(program, getCtx) {
96
107
  `once the portal is reachable, or pass --no-verify to silence.`);
97
108
  }
98
109
  saveToken(profile, token);
99
- const hublet = detectHublet({ token, uiDomain: details.uiDomain });
100
- const apiDomain = resolveApiDomain(hublet);
101
- if (details.portalId || details.uiDomain) {
102
- saveProfile(profile, { token, ...details, hublet, apiDomain });
110
+ const storedHublet = hubletOverride
111
+ ? normalizeStoredHublet(hubletOverride)
112
+ : details.dataHostingLocation
113
+ ? normalizeStoredHublet(details.dataHostingLocation)
114
+ : detectHublet({ token, uiDomain: details.uiDomain }) ?? undefined;
115
+ const apiDomain = apiDomainOverride ? normalizeApiDomain(apiDomainOverride) : resolveApiDomain(storedHublet);
116
+ if (details.portalId || details.uiDomain || storedHublet || apiDomainOverride) {
117
+ saveProfile(profile, { token, ...details, hublet: storedHublet, apiDomain });
103
118
  }
104
119
  printResult(ctx, {
105
120
  message: `Token saved for profile '${profile}'`,
106
121
  portalId: details.portalId ?? null,
107
122
  uiDomain: details.uiDomain ?? null,
108
- hublet: hublet ?? "na",
123
+ dataHostingLocation: details.dataHostingLocation ?? null,
124
+ hublet: storedHublet ?? "na",
109
125
  apiDomain,
110
126
  verified: shouldVerify && !verificationFailed,
111
127
  });
@@ -156,6 +172,25 @@ export function registerAuth(program, getCtx) {
156
172
  saveProfile(profile, { ...data, mode });
157
173
  printResult(ctx, { profile, mode, message: `Profile '${profile}' set to ${mode}` });
158
174
  });
175
+ auth.command("set-hublet")
176
+ .argument("<profile>", "Profile name")
177
+ .argument("<hublet>", "Hublet id: eu1, na1, na2, ap1, etc.")
178
+ .description("Set hublet-aware API routing on a stored profile")
179
+ .action((profileArg, hubletArg) => {
180
+ const ctx = getCtx();
181
+ const profile = String(profileArg).trim();
182
+ const hublet = normalizeStoredHublet(String(hubletArg));
183
+ const data = getProfile(profile);
184
+ const apiDomain = resolveApiDomain(hublet);
185
+ saveProfile(profile, { ...data, hublet, apiDomain });
186
+ printResult(ctx, {
187
+ profile,
188
+ hublet,
189
+ apiDomain,
190
+ apiBaseUrl: `https://${apiDomain}`,
191
+ message: `Profile '${profile}' routes through ${apiDomain}`,
192
+ });
193
+ });
159
194
  auth.command("oauth-url")
160
195
  .requiredOption("--client-id <id>", "OAuth app client id")
161
196
  .requiredOption("--redirect-uri <uri>", "OAuth redirect URI")
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/auth/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/auth/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from "commander";
2
+ import type { CliContext } from "../../core/output.js";
3
+ export declare function registerActivities(crm: Command, getCtx: () => CliContext): void;
@@ -0,0 +1,186 @@
1
+ import { writeFileSync } from "node:fs";
2
+ import { createClient } from "../../core/http.js";
3
+ import { printResult } from "../../core/output.js";
4
+ import { encodePathSegment, parseNumberFlag } from "./shared.js";
5
+ const DEFAULT_ENGAGEMENT_TYPES = ["notes", "emails", "calls", "tasks", "meetings"];
6
+ const DEFAULT_HISTORY_PROPERTIES = [
7
+ "createdate",
8
+ "lifecyclestage",
9
+ "hubspot_owner_id",
10
+ "hs_analytics_source",
11
+ "hs_analytics_source_data_1",
12
+ "hs_analytics_source_data_2",
13
+ "hs_latest_source",
14
+ "hs_latest_source_data_1",
15
+ "hs_latest_source_data_2",
16
+ "hs_object_source",
17
+ "hs_object_source_label",
18
+ ];
19
+ const OBJECT_TYPE_IDS = {
20
+ contacts: "0-1",
21
+ contact: "0-1",
22
+ companies: "0-2",
23
+ company: "0-2",
24
+ deals: "0-3",
25
+ deal: "0-3",
26
+ tickets: "0-5",
27
+ ticket: "0-5",
28
+ };
29
+ const ENGAGEMENT_PROPERTIES = {
30
+ notes: ["hs_timestamp", "hs_note_body", "hs_attachment_ids", "hubspot_owner_id", "hs_createdate", "hs_lastmodifieddate"],
31
+ emails: ["hs_timestamp", "hs_email_subject", "hs_email_text", "hs_email_html", "hs_email_direction", "hs_email_status", "hubspot_owner_id", "hs_createdate", "hs_lastmodifieddate"],
32
+ calls: ["hs_timestamp", "hs_call_title", "hs_call_body", "hs_call_duration", "hs_call_direction", "hs_call_disposition", "hs_call_recording_url", "hubspot_owner_id", "hs_createdate", "hs_lastmodifieddate"],
33
+ tasks: ["hs_timestamp", "hs_task_subject", "hs_task_body", "hs_task_status", "hs_task_priority", "hs_task_type", "hubspot_owner_id", "hs_createdate", "hs_lastmodifieddate"],
34
+ meetings: ["hs_timestamp", "hs_meeting_title", "hs_meeting_body", "hs_meeting_start_time", "hs_meeting_end_time", "hs_meeting_outcome", "hubspot_owner_id", "hs_createdate", "hs_lastmodifieddate"],
35
+ };
36
+ function parseCsv(raw, fallback) {
37
+ const source = raw?.trim() ? raw : fallback.join(",");
38
+ return source
39
+ .split(",")
40
+ .map((part) => part.trim())
41
+ .filter(Boolean);
42
+ }
43
+ function serializeError(err) {
44
+ if (err && typeof err === "object") {
45
+ const record = err;
46
+ return {
47
+ code: typeof record.code === "string" ? record.code : "REQUEST_FAILED",
48
+ message: typeof record.message === "string" ? record.message : String(err),
49
+ ...(typeof record.status === "number" ? { status: record.status } : {}),
50
+ };
51
+ }
52
+ return { code: "REQUEST_FAILED", message: String(err) };
53
+ }
54
+ async function capture(client, path, options) {
55
+ try {
56
+ return { ok: true, data: await client.request(path, options) };
57
+ }
58
+ catch (err) {
59
+ return { ok: false, error: serializeError(err) };
60
+ }
61
+ }
62
+ function responseResults(value) {
63
+ if (!value.ok || !value.data || typeof value.data !== "object" || Array.isArray(value.data))
64
+ return [];
65
+ const results = value.data.results;
66
+ if (!Array.isArray(results))
67
+ return [];
68
+ return results.filter((item) => item !== null && typeof item === "object" && !Array.isArray(item));
69
+ }
70
+ function associationIds(value) {
71
+ return responseResults(value)
72
+ .map((item) => item.toObjectId ?? item.id)
73
+ .filter((id) => typeof id === "string" || typeof id === "number")
74
+ .map(String);
75
+ }
76
+ function chunk(items, size) {
77
+ const chunks = [];
78
+ for (let i = 0; i < items.length; i += size)
79
+ chunks.push(items.slice(i, i + size));
80
+ return chunks;
81
+ }
82
+ function objectTypeIdFor(objectType, override) {
83
+ if (override?.trim())
84
+ return override.trim();
85
+ return OBJECT_TYPE_IDS[objectType.trim().toLowerCase()] ?? objectType;
86
+ }
87
+ async function exportEngagementType(client, objectTypeSegment, recordIdSegment, engagementType, limit) {
88
+ const engagementTypeSegment = encodePathSegment(engagementType, "engagementType");
89
+ const associations = await capture(client, `/crm/v4/objects/${objectTypeSegment}/${recordIdSegment}/associations/${engagementTypeSegment}?limit=${limit}`);
90
+ const ids = associationIds(associations);
91
+ const batches = [];
92
+ const properties = ENGAGEMENT_PROPERTIES[engagementType] ?? ["hs_timestamp", "hubspot_owner_id", "hs_createdate", "hs_lastmodifieddate"];
93
+ for (const idChunk of chunk(ids, 100)) {
94
+ batches.push(await capture(client, `/crm/v3/objects/${engagementTypeSegment}/batch/read`, {
95
+ method: "POST",
96
+ body: {
97
+ properties,
98
+ inputs: idChunk.map((id) => ({ id })),
99
+ },
100
+ }));
101
+ }
102
+ return { associations, ids, batches };
103
+ }
104
+ async function exportMemberships(client, objectTypeId, recordIdSegment, hydrateLists) {
105
+ const memberships = await capture(client, `/crm/v3/lists/records/${encodePathSegment(objectTypeId, "objectTypeId")}/${recordIdSegment}/memberships`);
106
+ if (!hydrateLists)
107
+ return { memberships };
108
+ const lists = {};
109
+ for (const membership of responseResults(memberships)) {
110
+ const listId = membership.listId;
111
+ if (typeof listId !== "string" && typeof listId !== "number")
112
+ continue;
113
+ const key = String(listId);
114
+ if (lists[key])
115
+ continue;
116
+ lists[key] = await capture(client, `/crm/v3/lists/${encodePathSegment(key, "listId")}`);
117
+ }
118
+ return { memberships, lists };
119
+ }
120
+ export function registerActivities(crm, getCtx) {
121
+ const activities = crm.command("activities").description("Recoverable CRM activity export helpers");
122
+ activities
123
+ .command("export")
124
+ .description("Export recoverable activities for one CRM record: engagements, segment memberships, and selected property history")
125
+ .argument("<objectType>")
126
+ .argument("<recordId>")
127
+ .option("--engagement-types <csv>", "Engagement object types to include", DEFAULT_ENGAGEMENT_TYPES.join(","))
128
+ .option("--history-properties <csv>", "Properties to request with history", DEFAULT_HISTORY_PROPERTIES.join(","))
129
+ .option("--membership-object-type-id <id>", "Override Lists API objectTypeId, e.g. 0-1 for contacts")
130
+ .option("--limit <n>", "Max association records per engagement type", "100")
131
+ .option("--no-engagements", "Do not export associated notes/emails/calls/tasks/meetings")
132
+ .option("--no-memberships", "Do not export segment/list memberships")
133
+ .option("--no-list-details", "Do not hydrate list names/details for memberships")
134
+ .option("--no-property-history", "Do not request propertiesWithHistory")
135
+ .option("--out <file>", "Write the activity bundle to a JSON file")
136
+ .action(async (objectType, recordId, opts) => {
137
+ const ctx = getCtx();
138
+ const client = createClient(ctx.profile);
139
+ const objectTypeSegment = encodePathSegment(objectType, "objectType");
140
+ const recordIdSegment = encodePathSegment(recordId, "recordId");
141
+ const limit = parseNumberFlag(opts.limit, "--limit");
142
+ const historyProperties = parseCsv(opts.historyProperties, DEFAULT_HISTORY_PROPERTIES);
143
+ const recordParams = new URLSearchParams();
144
+ if (opts.propertyHistory) {
145
+ recordParams.set("properties", historyProperties.join(","));
146
+ recordParams.set("propertiesWithHistory", historyProperties.join(","));
147
+ }
148
+ const recordPath = `/crm/v3/objects/${objectTypeSegment}/${recordIdSegment}${recordParams.size ? `?${recordParams.toString()}` : ""}`;
149
+ const engagements = {};
150
+ if (opts.engagements) {
151
+ for (const engagementType of parseCsv(opts.engagementTypes, DEFAULT_ENGAGEMENT_TYPES)) {
152
+ engagements[engagementType] = await exportEngagementType(client, objectTypeSegment, recordIdSegment, engagementType, limit);
153
+ }
154
+ }
155
+ const memberships = opts.memberships
156
+ ? await exportMemberships(client, objectTypeIdFor(objectType, opts.membershipObjectTypeId), recordIdSegment, Boolean(opts.listDetails))
157
+ : undefined;
158
+ const bundle = {
159
+ manifestVersion: 1,
160
+ generatedAt: new Date().toISOString(),
161
+ profile: ctx.profile,
162
+ objectType,
163
+ recordId,
164
+ coverage: {
165
+ recovered: [
166
+ ...(opts.engagements ? ["notes", "emails", "calls", "tasks", "meetings"] : []),
167
+ ...(opts.memberships ? ["current segment/list memberships with first/last added timestamps"] : []),
168
+ ...(opts.propertyHistory ? ["selected property history such as lifecycle stage, owner, source, createdate"] : []),
169
+ ],
170
+ limits: [
171
+ "HubSpot does not expose the full CRM record activity feed as one public replay endpoint.",
172
+ "Segment/list membership export captures membership state/timestamps available from the Lists API; removed historical memberships may not be present.",
173
+ "Created-from and moved-to-stage UI cards are reconstructed from object properties/history where available, not copied as native activity cards.",
174
+ ],
175
+ },
176
+ record: await capture(client, recordPath),
177
+ memberships,
178
+ engagements,
179
+ };
180
+ if (opts.out) {
181
+ writeFileSync(String(opts.out), `${JSON.stringify(bundle, null, 2)}\n`, "utf8");
182
+ }
183
+ printResult(ctx, opts.out ? { written: opts.out, ...bundle } : bundle);
184
+ });
185
+ }
186
+ //# sourceMappingURL=activities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activities.js","sourceRoot":"","sources":["../../../src/commands/crm/activities.ts"],"names":[],"mappings":"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"}