@inkbox/sdk 0.3.2 → 0.4.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 (74) hide show
  1. package/README.md +30 -25
  2. package/dist/agent_identity.d.ts +28 -31
  3. package/dist/agent_identity.d.ts.map +1 -1
  4. package/dist/agent_identity.js +34 -58
  5. package/dist/agent_identity.js.map +1 -1
  6. package/dist/identities/exceptions.d.ts +35 -0
  7. package/dist/identities/exceptions.d.ts.map +1 -0
  8. package/dist/identities/exceptions.js +49 -0
  9. package/dist/identities/exceptions.js.map +1 -0
  10. package/dist/identities/resources/identities.d.ts +36 -25
  11. package/dist/identities/resources/identities.d.ts.map +1 -1
  12. package/dist/identities/resources/identities.js +61 -31
  13. package/dist/identities/resources/identities.js.map +1 -1
  14. package/dist/identities/types.d.ts +38 -12
  15. package/dist/identities/types.d.ts.map +1 -1
  16. package/dist/identities/types.js +13 -3
  17. package/dist/identities/types.js.map +1 -1
  18. package/dist/index.d.ts +6 -4
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +3 -1
  21. package/dist/index.js.map +1 -1
  22. package/dist/inkbox.d.ts +18 -9
  23. package/dist/inkbox.d.ts.map +1 -1
  24. package/dist/inkbox.js +33 -27
  25. package/dist/inkbox.js.map +1 -1
  26. package/dist/mail/resources/mailboxes.d.ts +4 -28
  27. package/dist/mail/resources/mailboxes.d.ts.map +1 -1
  28. package/dist/mail/resources/mailboxes.js +4 -37
  29. package/dist/mail/resources/mailboxes.js.map +1 -1
  30. package/dist/mail/types.d.ts +4 -7
  31. package/dist/mail/types.d.ts.map +1 -1
  32. package/dist/mail/types.js +0 -1
  33. package/dist/mail/types.js.map +1 -1
  34. package/dist/phone/types.d.ts +6 -0
  35. package/dist/phone/types.d.ts.map +1 -1
  36. package/dist/phone/types.js +1 -0
  37. package/dist/phone/types.js.map +1 -1
  38. package/dist/tunnels/_reserved_names.d.ts +22 -0
  39. package/dist/tunnels/_reserved_names.d.ts.map +1 -0
  40. package/dist/tunnels/_reserved_names.js +149 -0
  41. package/dist/tunnels/_reserved_names.js.map +1 -0
  42. package/dist/tunnels/_validation.d.ts +16 -1
  43. package/dist/tunnels/_validation.d.ts.map +1 -1
  44. package/dist/tunnels/_validation.js +33 -8
  45. package/dist/tunnels/_validation.js.map +1 -1
  46. package/dist/tunnels/client/_protocol.d.ts +1 -1
  47. package/dist/tunnels/client/_protocol.js +1 -1
  48. package/dist/tunnels/client/_protocol.js.map +1 -1
  49. package/dist/tunnels/client/_runtime.d.ts +3 -2
  50. package/dist/tunnels/client/_runtime.d.ts.map +1 -1
  51. package/dist/tunnels/client/_runtime.js +7 -7
  52. package/dist/tunnels/client/_runtime.js.map +1 -1
  53. package/dist/tunnels/client/_state.d.ts +0 -13
  54. package/dist/tunnels/client/_state.d.ts.map +1 -1
  55. package/dist/tunnels/client/_state.js +0 -27
  56. package/dist/tunnels/client/_state.js.map +1 -1
  57. package/dist/tunnels/client/index.d.ts +13 -13
  58. package/dist/tunnels/client/index.d.ts.map +1 -1
  59. package/dist/tunnels/client/index.js +20 -65
  60. package/dist/tunnels/client/index.js.map +1 -1
  61. package/dist/tunnels/exceptions.d.ts +8 -6
  62. package/dist/tunnels/exceptions.d.ts.map +1 -1
  63. package/dist/tunnels/exceptions.js +12 -26
  64. package/dist/tunnels/exceptions.js.map +1 -1
  65. package/dist/tunnels/resources/tunnels.d.ts +9 -38
  66. package/dist/tunnels/resources/tunnels.d.ts.map +1 -1
  67. package/dist/tunnels/resources/tunnels.js +10 -92
  68. package/dist/tunnels/resources/tunnels.js.map +1 -1
  69. package/dist/tunnels/types.d.ts +17 -33
  70. package/dist/tunnels/types.d.ts.map +1 -1
  71. package/dist/tunnels/types.js +13 -23
  72. package/dist/tunnels/types.js.map +1 -1
  73. package/package.json +1 -1
  74. package/protocol/tunnel_protocol_constants.json +1 -1
package/README.md CHANGED
@@ -127,18 +127,27 @@ console.log(status.restrictions.maxSendsPerDay); // 10 (unclaimed) or 500 (cl
127
127
 
128
128
  ```ts
129
129
  // Create and fully provision an identity
130
- const identity = await inkbox.createIdentity("sales-bot", { displayName: "Sales Bot" });
131
- const phone = await identity.provisionPhoneNumber({ type: "toll_free" }); // provisions + links
130
+ // createIdentity atomically provisions the mailbox AND the tunnel
131
+ // both come back on the response. Phone numbers stay opt-in.
132
+ const identity = await inkbox.createIdentity("sales-bot", {
133
+ displayName: "Sales Bot",
134
+ description: "Sales-outreach agent",
135
+ });
136
+ const phone = await identity.provisionPhoneNumber({ type: "toll_free" });
132
137
 
133
- console.log(identity.emailAddress);
138
+ console.log(identity.emailAddress); // sales-bot@inkboxmail.com
139
+ console.log(identity.tunnel?.publicHost); // sales-bot.inkboxwire.com
134
140
  console.log(phone.number);
135
141
 
136
142
  // Pin the identity's mailbox to a verified custom sending domain
137
143
  // (bare name; see "Custom Sending Domains" below).
138
- await inkbox.createIdentity("sales-bot", { sendingDomain: "mail.acme.com" });
144
+ await inkbox.createIdentity("sales-bot-2", { sendingDomain: "mail.acme.com" });
145
+
146
+ // Provision a passthrough tunnel (tls_mode is fixed at create time)
147
+ await inkbox.createIdentity("sales-bot-pt", { tunnel: { tlsMode: "passthrough" } });
139
148
 
140
- // Link an existing mailbox or phone number instead of creating new ones
141
- await identity.assignMailbox("mailbox-uuid-here");
149
+ // Link an existing phone number to an identity (mailbox + tunnel are
150
+ // 1:1 with their identity and cannot be relinked).
142
151
  await identity.assignPhoneNumber("phone-number-uuid-here");
143
152
 
144
153
  // Get an existing identity (returned with current channel state)
@@ -152,8 +161,8 @@ const allIdentities = await inkbox.listIdentities();
152
161
  await identity.update({ status: "paused" });
153
162
  await identity.update({ newHandle: "sales-bot-v2" });
154
163
 
155
- // Unlink channels (without deleting them)
156
- await identity.unlinkMailbox();
164
+ // Unlink phone number (without releasing it). Mailbox is 1:1 with the
165
+ // identity and cannot be unlinked — delete the identity instead.
157
166
  await identity.unlinkPhoneNumber();
158
167
 
159
168
  // Delete
@@ -553,31 +562,26 @@ for (const t of segments) {
553
562
 
554
563
  ## Org-level Mailboxes
555
564
 
556
- Manage mailboxes directly without going through an identity. Access via `inkbox.mailboxes`.
565
+ Mailboxes are provisioned atomically by `inkbox.createIdentity(...)` and
566
+ removed by `identity.delete()` (cascade). The `inkbox.mailboxes`
567
+ surface is read + update + search only.
557
568
 
558
569
  ```ts
559
570
  // List all mailboxes in the organisation
560
571
  const mailboxes = await inkbox.mailboxes.list();
561
572
 
562
573
  // Get a specific mailbox
563
- const mailbox = await inkbox.mailboxes.get("abc-xyz@inkboxmail.com");
564
-
565
- // Create a mailbox linked to an agent identity
566
- const mb = await inkbox.mailboxes.create({
567
- agentHandle: "support-agent",
568
- displayName: "Support Inbox",
569
- });
574
+ const mb = await inkbox.mailboxes.get("abc-xyz@inkboxmail.com");
570
575
  console.log(mb.emailAddress);
571
576
  console.log(mb.sendingDomain); // bare domain the mailbox sends from
577
+ console.log(mb.agentIdentityId); // non-null for live customer mailboxes (1:1 invariant)
572
578
 
573
- // Pin a new mailbox to a verified custom sending domain (or platform default)
574
- await inkbox.mailboxes.create({ agentHandle: "support-agent", sendingDomainId: "sending_domain_<uuid>" });
575
- await inkbox.mailboxes.create({ agentHandle: "support-agent", sendingDomainId: null }); // force platform
576
-
577
- // Update display name or webhook URL
578
- await inkbox.mailboxes.update(mb.emailAddress, { displayName: "New Name" });
579
+ // Update webhook URL or filter mode. Note: display_name has moved to
580
+ // the agent identity — set it via identity.update({ displayName: ... }).
581
+ // The mailbox PATCH endpoint hard-rejects display_name with a 422.
579
582
  await inkbox.mailboxes.update(mb.emailAddress, { webhookUrl: "https://example.com/hook" });
580
583
  await inkbox.mailboxes.update(mb.emailAddress, { webhookUrl: null }); // remove webhook
584
+ await inkbox.mailboxes.update(mb.emailAddress, { filterMode: "whitelist" }); // admin-scoped key only
581
585
 
582
586
  // Full-text search across messages in a mailbox
583
587
  const results = await inkbox.mailboxes.search(mb.emailAddress, { q: "invoice", limit: 20 });
@@ -585,15 +589,16 @@ for (const msg of results) {
585
589
  console.log(msg.subject, msg.fromAddress);
586
590
  }
587
591
 
588
- // Delete a mailbox
589
- await inkbox.mailboxes.delete(mb.emailAddress);
592
+ // To remove a mailbox, delete its owning identity (cascades to the
593
+ // linked mailbox AND tunnel; revokes scoped API keys):
594
+ await (await inkbox.getIdentity("support-agent")).delete();
590
595
  ```
591
596
 
592
597
  ---
593
598
 
594
599
  ## Custom Sending Domains
595
600
 
596
- If your org has registered custom sending domains in the console, list them and (admin-only) set the org default. New mailboxes inherit the org default unless you pass `sendingDomainId` (`mailboxes.create`) or `sendingDomain` (`createIdentity`). Domain registration, DNS records, verification, DKIM rotation, and deletion stay in the console.
601
+ If your org has registered custom sending domains in the console, list them and (admin-only) set the org default. New mailboxes inherit the org default unless you pass `sendingDomain` to `createIdentity`. Domain registration, DNS records, verification, DKIM rotation, and deletion stay in the console.
597
602
 
598
603
  ```ts
599
604
  import { SendingDomainStatus } from "@inkbox/sdk";
@@ -15,23 +15,31 @@ import { ForwardMode, MessageDirection } from "./mail/types.js";
15
15
  import type { Message, MessageDetail, ThreadDetail } from "./mail/types.js";
16
16
  import type { PhoneCall, PhoneCallWithRateLimit, PhoneTranscript, TextConversationSummary, TextMessage } from "./phone/types.js";
17
17
  import type { _AgentIdentityData, IdentityMailbox, IdentityPhoneNumber } from "./identities/types.js";
18
+ import type { Tunnel } from "./tunnels/types.js";
18
19
  import type { Inkbox } from "./inkbox.js";
19
20
  export declare class AgentIdentity {
20
21
  private _data;
21
22
  private readonly _inkbox;
22
23
  private _mailbox;
23
24
  private _phoneNumber;
25
+ private _tunnel;
24
26
  private _credentials;
25
27
  private _credentialsVaultRef;
26
28
  constructor(data: _AgentIdentityData, inkbox: Inkbox);
27
29
  get agentHandle(): string;
28
30
  get id(): string;
31
+ /** Human-readable display name. Defaults server-side to `agentHandle` if unset. */
32
+ get displayName(): string | null;
33
+ /** Free-form org-internal description, or `null` if unset. Never surfaces in outbound mail. */
34
+ get description(): string | null;
29
35
  /** Email address assigned at creation time. Always trust this value — do not derive it from `agentHandle`. */
30
36
  get emailAddress(): string | null;
31
- /** The mailbox currently assigned to this identity, or `null` if none. */
37
+ /** The mailbox currently assigned to this identity. Non-null for live identities (1:1 invariant). */
32
38
  get mailbox(): IdentityMailbox | null;
33
39
  /** The phone number currently assigned to this identity, or `null` if none. */
34
40
  get phoneNumber(): IdentityPhoneNumber | null;
41
+ /** The tunnel currently assigned to this identity. Non-null for live identities (1:1 invariant). */
42
+ get tunnel(): Tunnel | null;
35
43
  /**
36
44
  * Identity-scoped credential access.
37
45
  *
@@ -106,34 +114,6 @@ export declare class AgentIdentity {
106
114
  * @param secretId - UUID of the secret to delete.
107
115
  */
108
116
  deleteSecret(secretId: string): Promise<void>;
109
- /**
110
- * Create a new mailbox and link it to this identity.
111
- *
112
- * @param options.displayName - Optional human-readable sender name.
113
- * @param options.emailLocalPart - Optional requested mailbox local part.
114
- * @param options.sendingDomainId - Optional sending-domain selector by row id
115
- * (e.g. `"sending_domain_<uuid>"`). Omit to inherit the org's default
116
- * custom domain (or fall through to the platform default if none).
117
- * Pass `null` to force the platform default. Pass a verified domain's id
118
- * to bind this mailbox to it.
119
- */
120
- createMailbox(options?: {
121
- displayName?: string;
122
- emailLocalPart?: string;
123
- sendingDomainId?: string | null;
124
- }): Promise<IdentityMailbox>;
125
- /**
126
- * Link an existing mailbox to this identity.
127
- *
128
- * @param mailboxId - UUID of the mailbox to link. Obtain via
129
- * `inkbox.mailboxes.list()` or `inkbox.mailboxes.get()`.
130
- * @returns The linked {@link IdentityMailbox}.
131
- */
132
- assignMailbox(mailboxId: string): Promise<IdentityMailbox>;
133
- /**
134
- * Unlink this identity's mailbox (does not delete the mailbox).
135
- */
136
- unlinkMailbox(): Promise<void>;
137
117
  /**
138
118
  * Provision a new phone number and link it to this identity.
139
119
  *
@@ -385,12 +365,23 @@ export declare class AgentIdentity {
385
365
  updatedCount: number;
386
366
  }>;
387
367
  /**
388
- * Update this identity's handle.
368
+ * Update this identity's handle, display name, description, and/or status.
369
+ *
370
+ * Only provided fields are applied; omitted fields are left unchanged.
371
+ * For `displayName` and `description`, explicit `null` clears the column;
372
+ * omitting the key leaves it untouched.
389
373
  *
390
374
  * @param options.newHandle - New agent handle.
375
+ * @param options.displayName - New display name, or `null` to clear.
376
+ * @param options.description - New description, or `null` to clear.
377
+ * @param options.status - `"active"` or `"paused"`. Call `delete()`
378
+ * to remove the identity; `"deleted"` is rejected here.
391
379
  */
392
380
  update(options: {
393
381
  newHandle?: string;
382
+ displayName?: string | null;
383
+ description?: string | null;
384
+ status?: "active" | "paused";
394
385
  }): Promise<void>;
395
386
  /**
396
387
  * Re-fetch this identity from the API and update cached channels.
@@ -402,7 +393,13 @@ export declare class AgentIdentity {
402
393
  * @returns `this` for chaining.
403
394
  */
404
395
  refresh(): Promise<AgentIdentity>;
405
- /** Delete this identity (unlinks channels without deleting them). */
396
+ /**
397
+ * Delete this identity.
398
+ *
399
+ * Cascades: flips the linked mailbox to `deleted`, force-finalizes the
400
+ * linked tunnel to `deleted`, revokes any identity-scoped API keys, and
401
+ * unassigns (but does not delete) any linked phone number.
402
+ */
406
403
  delete(): Promise<void>;
407
404
  private _requireVaultUnlocked;
408
405
  private _requireMailbox;
@@ -1 +1 @@
1
- {"version":3,"file":"agent_identity.d.ts","sourceRoot":"","sources":["../src/agent_identity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent_identity.d.ts","sourceRoot":"","sources":["../src/agent_identity.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export class AgentIdentity {
15
15
  _inkbox;
16
16
  _mailbox;
17
17
  _phoneNumber;
18
+ _tunnel;
18
19
  _credentials = null;
19
20
  _credentialsVaultRef = null; // tracks which _unlocked built the cache
20
21
  constructor(data, inkbox) {
@@ -22,18 +23,25 @@ export class AgentIdentity {
22
23
  this._inkbox = inkbox;
23
24
  this._mailbox = data.mailbox;
24
25
  this._phoneNumber = data.phoneNumber;
26
+ this._tunnel = data.tunnel;
25
27
  }
26
28
  // ------------------------------------------------------------------
27
29
  // Identity properties
28
30
  // ------------------------------------------------------------------
29
31
  get agentHandle() { return this._data.agentHandle; }
30
32
  get id() { return this._data.id; }
33
+ /** Human-readable display name. Defaults server-side to `agentHandle` if unset. */
34
+ get displayName() { return this._data.displayName; }
35
+ /** Free-form org-internal description, or `null` if unset. Never surfaces in outbound mail. */
36
+ get description() { return this._data.description; }
31
37
  /** Email address assigned at creation time. Always trust this value — do not derive it from `agentHandle`. */
32
38
  get emailAddress() { return this._data.emailAddress; }
33
- /** The mailbox currently assigned to this identity, or `null` if none. */
39
+ /** The mailbox currently assigned to this identity. Non-null for live identities (1:1 invariant). */
34
40
  get mailbox() { return this._mailbox; }
35
41
  /** The phone number currently assigned to this identity, or `null` if none. */
36
42
  get phoneNumber() { return this._phoneNumber; }
43
+ /** The tunnel currently assigned to this identity. Non-null for live identities (1:1 invariant). */
44
+ get tunnel() { return this._tunnel; }
37
45
  /**
38
46
  * Identity-scoped credential access.
39
47
  *
@@ -155,60 +163,6 @@ export class AgentIdentity {
155
163
  // ------------------------------------------------------------------
156
164
  // Channel management
157
165
  // ------------------------------------------------------------------
158
- /**
159
- * Create a new mailbox and link it to this identity.
160
- *
161
- * @param options.displayName - Optional human-readable sender name.
162
- * @param options.emailLocalPart - Optional requested mailbox local part.
163
- * @param options.sendingDomainId - Optional sending-domain selector by row id
164
- * (e.g. `"sending_domain_<uuid>"`). Omit to inherit the org's default
165
- * custom domain (or fall through to the platform default if none).
166
- * Pass `null` to force the platform default. Pass a verified domain's id
167
- * to bind this mailbox to it.
168
- */
169
- async createMailbox(options = {}) {
170
- const mailbox = await this._inkbox._mailboxes.create({
171
- agentHandle: this.agentHandle,
172
- ...options,
173
- });
174
- const linked = {
175
- id: mailbox.id,
176
- emailAddress: mailbox.emailAddress,
177
- sendingDomain: mailbox.sendingDomain,
178
- displayName: mailbox.displayName,
179
- filterMode: mailbox.filterMode,
180
- agentIdentityId: mailbox.agentIdentityId,
181
- createdAt: mailbox.createdAt,
182
- updatedAt: mailbox.updatedAt,
183
- filterModeChangeNotice: mailbox.filterModeChangeNotice,
184
- };
185
- this._mailbox = linked;
186
- this._data.emailAddress = mailbox.emailAddress;
187
- return linked;
188
- }
189
- /**
190
- * Link an existing mailbox to this identity.
191
- *
192
- * @param mailboxId - UUID of the mailbox to link. Obtain via
193
- * `inkbox.mailboxes.list()` or `inkbox.mailboxes.get()`.
194
- * @returns The linked {@link IdentityMailbox}.
195
- */
196
- async assignMailbox(mailboxId) {
197
- const data = await this._inkbox._idsResource.assignMailbox(this.agentHandle, {
198
- mailboxId,
199
- });
200
- this._mailbox = data.mailbox;
201
- this._data = data;
202
- return this._mailbox;
203
- }
204
- /**
205
- * Unlink this identity's mailbox (does not delete the mailbox).
206
- */
207
- async unlinkMailbox() {
208
- this._requireMailbox();
209
- await this._inkbox._idsResource.unlinkMailbox(this.agentHandle);
210
- this._mailbox = null;
211
- }
212
166
  /**
213
167
  * Provision a new phone number and link it to this identity.
214
168
  *
@@ -487,9 +441,17 @@ export class AgentIdentity {
487
441
  // Identity management
488
442
  // ------------------------------------------------------------------
489
443
  /**
490
- * Update this identity's handle.
444
+ * Update this identity's handle, display name, description, and/or status.
445
+ *
446
+ * Only provided fields are applied; omitted fields are left unchanged.
447
+ * For `displayName` and `description`, explicit `null` clears the column;
448
+ * omitting the key leaves it untouched.
491
449
  *
492
450
  * @param options.newHandle - New agent handle.
451
+ * @param options.displayName - New display name, or `null` to clear.
452
+ * @param options.description - New description, or `null` to clear.
453
+ * @param options.status - `"active"` or `"paused"`. Call `delete()`
454
+ * to remove the identity; `"deleted"` is rejected here.
493
455
  */
494
456
  async update(options) {
495
457
  const result = await this._inkbox._idsResource.update(this.agentHandle, options);
@@ -497,7 +459,14 @@ export class AgentIdentity {
497
459
  ...result,
498
460
  mailbox: this._mailbox,
499
461
  phoneNumber: this._phoneNumber,
462
+ tunnel: this._tunnel,
500
463
  };
464
+ if (options.newHandle !== undefined && this._tunnel != null) {
465
+ // The server renames the linked tunnel in the same transaction
466
+ // under the unified handle namespace; refresh to pick up the
467
+ // new tunnelName / publicHost on the cached tunnel.
468
+ await this.refresh();
469
+ }
501
470
  }
502
471
  /**
503
472
  * Re-fetch this identity from the API and update cached channels.
@@ -513,10 +482,17 @@ export class AgentIdentity {
513
482
  this._data = data;
514
483
  this._mailbox = data.mailbox;
515
484
  this._phoneNumber = data.phoneNumber;
485
+ this._tunnel = data.tunnel;
516
486
  this._credentials = null;
517
487
  return this;
518
488
  }
519
- /** Delete this identity (unlinks channels without deleting them). */
489
+ /**
490
+ * Delete this identity.
491
+ *
492
+ * Cascades: flips the linked mailbox to `deleted`, force-finalizes the
493
+ * linked tunnel to `deleted`, revokes any identity-scoped API keys, and
494
+ * unassigns (but does not delete) any linked phone number.
495
+ */
520
496
  async delete() {
521
497
  await this._inkbox._idsResource.delete(this.agentHandle);
522
498
  }
@@ -530,7 +506,7 @@ export class AgentIdentity {
530
506
  }
531
507
  _requireMailbox() {
532
508
  if (!this._mailbox) {
533
- throw new InkboxError(`Identity '${this.agentHandle}' has no mailbox assigned. Call identity.createMailbox() or identity.assignMailbox() first.`);
509
+ throw new InkboxError(`Identity '${this.agentHandle}' has no mailbox this should only be reachable on a deleted identity.`);
534
510
  }
535
511
  }
536
512
  _requirePhone() {
@@ -1 +1 @@
1
- {"version":3,"file":"agent_identity.js","sourceRoot":"","sources":["../src/agent_identity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent_identity.js","sourceRoot":"","sources":["../src/agent_identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAkB,WAAW,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAoB/C,MAAM,OAAO,aAAa;IAChB,KAAK,CAAqB;IACjB,OAAO,CAAS;IACzB,QAAQ,CAAyB;IACjC,YAAY,CAA6B;IACzC,OAAO,CAAgB;IACvB,YAAY,GAAuB,IAAI,CAAC;IACxC,oBAAoB,GAAkB,IAAI,CAAC,CAAC,yCAAyC;IAE7F,YAAY,IAAwB,EAAE,MAAc;QAClD,IAAI,CAAC,KAAK,GAAgB,IAAI,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAc,MAAM,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAa,IAAI,CAAC,OAAO,CAAC;QACvC,IAAI,CAAC,YAAY,GAAS,IAAI,CAAC,WAAW,CAAC;QAC3C,IAAI,CAAC,OAAO,GAAc,IAAI,CAAC,MAAM,CAAC;IACxC,CAAC;IAED,qEAAqE;IACrE,sBAAsB;IACtB,qEAAqE;IAErE,IAAI,WAAW,KAAa,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;IAC5D,IAAI,EAAE,KAAuB,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAEpD,mFAAmF;IACnF,IAAI,WAAW,KAAoB,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;IAEnE,+FAA+F;IAC/F,IAAI,WAAW,KAAoB,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;IAEnE,8GAA8G;IAC9G,IAAI,YAAY,KAAoB,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;IAErE,qGAAqG;IACrG,IAAI,OAAO,KAA6B,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE/D,+EAA+E;IAC/E,IAAI,WAAW,KAAiC,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAE3E,oGAAoG;IACpG,IAAI,MAAM,KAAoB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAEpD;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,cAAc;QAClB,mEAAmE;QACnE,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,KAAK,IAAI,EAAE,CAAC;YAC9C,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;QACzC,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAC1C,wEAAwE;QACxE,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAChF,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAU,CAAC;QAClC,IAAI,CAAC,YAAY,GAAG,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,CAAC,oBAAoB,GAAG,QAAQ,CAAC;QACrC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,sBAAsB,CAAC,QAAgB;QAC3C,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,qEAAqE;IACrE,0BAA0B;IAC1B,qEAAqE;IAErE;;;;;;;;;OASG;IACH,KAAK,CAAC,YAAY,CAAC,OAIlB;QACC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAU,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS,CAAC,QAAgB;QAC9B,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,IAAyB;QACvD,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACpF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,QAAgB;QAC/B,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACjF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,WAAW,CAAC,QAAgB;QAChC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACtE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QACpE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,qEAAqE;IACrE,qBAAqB;IACrB,qEAAqE;IAErE;;;;;;OAMG;IACH,KAAK,CAAC,oBAAoB,CACxB,UAA6C,EAAE;QAE/C,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;QACrF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACnE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,IAAI,CAAC,KAAK,GAAU,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC,YAAa,CAAC;IAC5B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,iBAAiB,CAAC,aAAqB;QAC3C,MAAM,IAAI,GAAK,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE;YACjF,aAAa;SACd,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,IAAI,CAAC,KAAK,GAAU,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC,YAAa,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,qEAAqE;IACrE,eAAe;IACf,qEAAqE;IAErE;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,SAAS,CAAC,OASf;QACC,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,QAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,YAAY,CAChB,SAAiB,EACjB,OAeC;QAED,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CACnC,IAAI,CAAC,QAAS,CAAC,YAAY,EAC3B,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,UAAU,CAAC,UAA+D,EAAE;QAC1E,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,QAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,CAAC,gBAAgB,CAAC,UAA+D,EAAE;QACvF,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACjD,IAAI,CAAC,GAAG,CAAC,MAAM;gBAAE,MAAM,GAAG,CAAC;QAC7B,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAAC,UAAoB;QACvC,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAS,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,SAAiB;QAChC,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,QAAS,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC5E,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CAAC,QAAgB;QAC9B,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAS,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC1E,CAAC;IAED,qEAAqE;IACrE,gBAAgB;IAChB,qEAAqE;IAErE;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CAAC,OAGf;QACC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAC/B,UAAU,EAAW,IAAI,CAAC,YAAa,CAAC,MAAM;YAC9C,QAAQ,EAAa,OAAO,CAAC,QAAQ;YACrC,kBAAkB,EAAG,OAAO,CAAC,kBAAkB;SAChD,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,SAAS,CACb,UAAoE,EAAE;QAEtE,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAa,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe,CAAC,MAAc;QAClC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,YAAa,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC;IAED,qEAAqE;IACrE,uBAAuB;IACvB,qEAAqE;IAErE;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAqC;QAClD,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAa,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,SAAS,CACb,OAKC;QAED,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAa,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,OAAO,CAAC,MAAc;QAC1B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,YAAa,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAChE,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,qBAAqB,CACzB,OAAkE;QAElE,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAa,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,mBAAmB,CACvB,YAAoB,EACpB,OAA6C;QAE7C,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,YAAa,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IAC3F,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,MAAc;QAC/B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAa,CAAC,EAAE,EAAE,MAAM,EAAE;YAC/D,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,wBAAwB,CAC5B,YAAoB;QAEpB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAC3C,IAAI,CAAC,YAAa,CAAC,EAAE,EACrB,YAAY,EACZ,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAC;IACJ,CAAC;IAED,qEAAqE;IACrE,sBAAsB;IACtB,qEAAqE;IAErE;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,MAAM,CAAC,OAKZ;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACjF,IAAI,CAAC,KAAK,GAAG;YACX,GAAG,MAAM;YACT,OAAO,EAAW,IAAI,CAAC,QAAQ;YAC/B,WAAW,EAAO,IAAI,CAAC,YAAY;YACnC,MAAM,EAAY,IAAI,CAAC,OAAO;SAC/B,CAAC;QACF,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YAC5D,+DAA+D;YAC/D,6DAA6D;YAC7D,oDAAoD;YACpD,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,GAAe,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/E,IAAI,CAAC,KAAK,GAAe,IAAI,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAY,IAAI,CAAC,OAAO,CAAC;QACtC,IAAI,CAAC,YAAY,GAAQ,IAAI,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAa,IAAI,CAAC,MAAM,CAAC;QACrC,IAAI,CAAC,YAAY,GAAQ,IAAI,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3D,CAAC;IAED,qEAAqE;IACrE,kBAAkB;IAClB,qEAAqE;IAE7D,qBAAqB;QAC3B,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YACnD,MAAM,IAAI,WAAW,CACnB,gGAAgG,CACjG,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,WAAW,CACnB,aAAa,IAAI,CAAC,WAAW,yEAAyE,CACvG,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,WAAW,CACnB,aAAa,IAAI,CAAC,WAAW,6GAA6G,CAC3I,CAAC;QACJ,CAAC;IACH,CAAC;CAEF"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * inkbox-identities/exceptions.ts
3
+ *
4
+ * Typed exceptions for the identities surface.
5
+ */
6
+ import { InkboxAPIError, type InkboxAPIErrorDetail } from "../_http.js";
7
+ /** Which namespace blocked the handle on a 409 from create / rename. */
8
+ export type BlockingNamespace = "identities" | "tunnels" | "mail" | null;
9
+ /**
10
+ * Raised by `identities.create()` / `identities.update()` (and the
11
+ * `inkbox.createIdentity` / `identity.update` wrappers) when the
12
+ * requested agent_handle collides with the global handle namespace.
13
+ *
14
+ * The unified namespace check runs across identities, tunnels, and the
15
+ * platform-mailbox local part; `blockingNamespace` reports which side
16
+ * rejected so callers can render an appropriate message.
17
+ */
18
+ export declare class HandleUnavailableError extends InkboxAPIError {
19
+ readonly blockingNamespace: BlockingNamespace;
20
+ constructor(statusCode: number, detail: InkboxAPIErrorDetail, blockingNamespace: BlockingNamespace);
21
+ }
22
+ /**
23
+ * Inspect a 409 error detail for a `blocking_namespace` field. Returns
24
+ * the parsed value when present, else `null`. (Servers running 1.0+ set
25
+ * this on every `agent_handle_unavailable` 409 from identity-create or
26
+ * identity-rename.)
27
+ */
28
+ export declare function readBlockingNamespace(detail: InkboxAPIErrorDetail): BlockingNamespace;
29
+ /**
30
+ * If `err` is a 409 collision error from the identities endpoints,
31
+ * return a `HandleUnavailableError`; otherwise return the original
32
+ * error untouched so it propagates as-is.
33
+ */
34
+ export declare function mapIdentityConflictError(err: InkboxAPIError): Error;
35
+ //# sourceMappingURL=exceptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exceptions.d.ts","sourceRoot":"","sources":["../../src/identities/exceptions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExE,wEAAwE;AACxE,MAAM,MAAM,iBAAiB,GAAG,YAAY,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAAC;AAEzE;;;;;;;;GAQG;AACH,qBAAa,sBAAuB,SAAQ,cAAc;IACxD,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;gBAG5C,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,oBAAoB,EAC5B,iBAAiB,EAAE,iBAAiB;CAMvC;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,oBAAoB,GAAG,iBAAiB,CAMrF;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,cAAc,GAAG,KAAK,CASnE"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * inkbox-identities/exceptions.ts
3
+ *
4
+ * Typed exceptions for the identities surface.
5
+ */
6
+ import { InkboxAPIError } from "../_http.js";
7
+ /**
8
+ * Raised by `identities.create()` / `identities.update()` (and the
9
+ * `inkbox.createIdentity` / `identity.update` wrappers) when the
10
+ * requested agent_handle collides with the global handle namespace.
11
+ *
12
+ * The unified namespace check runs across identities, tunnels, and the
13
+ * platform-mailbox local part; `blockingNamespace` reports which side
14
+ * rejected so callers can render an appropriate message.
15
+ */
16
+ export class HandleUnavailableError extends InkboxAPIError {
17
+ blockingNamespace;
18
+ constructor(statusCode, detail, blockingNamespace) {
19
+ super(statusCode, detail);
20
+ this.name = "HandleUnavailableError";
21
+ this.blockingNamespace = blockingNamespace;
22
+ }
23
+ }
24
+ /**
25
+ * Inspect a 409 error detail for a `blocking_namespace` field. Returns
26
+ * the parsed value when present, else `null`. (Servers running 1.0+ set
27
+ * this on every `agent_handle_unavailable` 409 from identity-create or
28
+ * identity-rename.)
29
+ */
30
+ export function readBlockingNamespace(detail) {
31
+ if (detail && typeof detail === "object" && !Array.isArray(detail)) {
32
+ const v = detail["blocking_namespace"];
33
+ if (v === "identities" || v === "tunnels" || v === "mail")
34
+ return v;
35
+ }
36
+ return null;
37
+ }
38
+ /**
39
+ * If `err` is a 409 collision error from the identities endpoints,
40
+ * return a `HandleUnavailableError`; otherwise return the original
41
+ * error untouched so it propagates as-is.
42
+ */
43
+ export function mapIdentityConflictError(err) {
44
+ if (err.statusCode === 409) {
45
+ return new HandleUnavailableError(err.statusCode, err.detail, readBlockingNamespace(err.detail));
46
+ }
47
+ return err;
48
+ }
49
+ //# sourceMappingURL=exceptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exceptions.js","sourceRoot":"","sources":["../../src/identities/exceptions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAA6B,MAAM,aAAa,CAAC;AAKxE;;;;;;;;GAQG;AACH,MAAM,OAAO,sBAAuB,SAAQ,cAAc;IAC/C,iBAAiB,CAAoB;IAE9C,YACE,UAAkB,EAClB,MAA4B,EAC5B,iBAAoC;QAEpC,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAA4B;IAChE,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACnE,MAAM,CAAC,GAAI,MAAkC,CAAC,oBAAoB,CAAC,CAAC;QACpE,IAAI,CAAC,KAAK,YAAY,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,MAAM;YAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CAAC,GAAmB;IAC1D,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;QAC3B,OAAO,IAAI,sBAAsB,CAC/B,GAAG,CAAC,UAAU,EACd,GAAG,CAAC,MAAM,EACV,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,CAClC,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,70 +1,81 @@
1
1
  /**
2
2
  * inkbox-identities/resources/identities.ts
3
3
  *
4
- * Identity CRUD and channel assignment.
4
+ * Identity create / list / get / update / delete, plus phone-number
5
+ * assign / unlink. Mailbox and tunnel are provisioned atomically by
6
+ * `create()` and removed by `delete()` (cascade); there is no
7
+ * standalone mailbox or tunnel create / link surface.
5
8
  */
6
9
  import { HttpTransport } from "../../_http.js";
7
- import { AgentIdentitySummary, IdentityMailboxCreateOptions, IdentityPhoneNumberCreateOptions, _AgentIdentityData } from "../types.js";
10
+ import { AgentIdentitySummary, IdentityMailboxCreateOptions, IdentityPhoneNumberCreateOptions, IdentityTunnelCreateOptions, _AgentIdentityData } from "../types.js";
8
11
  export declare class IdentitiesResource {
9
12
  private readonly http;
10
13
  constructor(http: HttpTransport);
11
14
  /**
12
- * Create a new agent identity.
15
+ * Create a new agent identity. Atomically provisions the identity's
16
+ * mailbox and tunnel; both are returned nested on the response.
13
17
  *
14
- * @param options.agentHandle - Unique handle for this identity within your organisation
15
- * (e.g. `"sales-agent"` or `"@sales-agent"`).
16
- * @param options.mailbox - Optional mailbox payload to create and link a mailbox.
18
+ * @param options.agentHandle - Unique handle for this identity, globally
19
+ * unique across all orgs (the handle shares its namespace with tunnel
20
+ * names). May be passed with or without a leading `@`.
21
+ * @param options.displayName - Human-readable identity name. Defaults
22
+ * server-side to `agentHandle`.
23
+ * @param options.description - Free-form org-internal description.
24
+ * `null` leaves the column null; omit to defer to server default.
25
+ * @param options.mailbox - Optional nested mailbox spec. Mailbox is
26
+ * always provisioned; this just lets the caller customize.
27
+ * @param options.tunnel - Optional nested tunnel spec (tlsMode only).
28
+ * Tunnel is always provisioned; defaults to edge TLS.
17
29
  * @param options.phoneNumber - Optional phone-number provisioning payload.
18
30
  * @param options.vaultSecretIds - Optional vault secret selection to attach to the identity.
19
31
  */
20
32
  create(options: {
21
33
  agentHandle: string;
34
+ displayName?: string;
35
+ description?: string | null;
22
36
  mailbox?: IdentityMailboxCreateOptions;
37
+ tunnel?: IdentityTunnelCreateOptions;
23
38
  phoneNumber?: IdentityPhoneNumberCreateOptions;
24
39
  vaultSecretIds?: string | string[] | "*" | "all";
25
- }): Promise<AgentIdentitySummary>;
40
+ }): Promise<_AgentIdentityData>;
26
41
  /** List all identities for your organisation. */
27
42
  list(): Promise<AgentIdentitySummary[]>;
28
43
  /**
29
- * Get an identity with its linked channels (mailbox, phone number).
44
+ * Get an identity with its linked channels (mailbox, phone number, tunnel).
30
45
  *
31
46
  * @param agentHandle - Handle of the identity to fetch.
32
47
  */
33
48
  get(agentHandle: string): Promise<_AgentIdentityData>;
34
49
  /**
35
- * Update an identity's handle.
50
+ * Update an identity's handle, display name, description, and/or status.
36
51
  *
37
52
  * Only provided fields are applied; omitted fields are left unchanged.
53
+ * For `displayName` and `description`, explicit `null` clears the value
54
+ * (sets the row column to NULL); omitting the key leaves it untouched.
38
55
  *
39
56
  * @param agentHandle - Current handle of the identity to update.
40
57
  * @param options.newHandle - New handle value.
58
+ * @param options.displayName - New display name, or `null` to clear.
59
+ * @param options.description - New description, or `null` to clear.
60
+ * @param options.status - `"active"` or `"paused"`. Call `delete()` to
61
+ * remove an identity; `"deleted"` is rejected here.
41
62
  */
42
63
  update(agentHandle: string, options: {
43
64
  newHandle?: string;
65
+ displayName?: string | null;
66
+ description?: string | null;
67
+ status?: "active" | "paused";
44
68
  }): Promise<AgentIdentitySummary>;
45
69
  /**
46
70
  * Delete an identity.
47
71
  *
48
- * Unlinks any assigned channels without deleting them.
72
+ * Cascades: flips the linked mailbox to `deleted`, force-finalizes the
73
+ * linked tunnel to `deleted`, revokes any identity-scoped API keys, and
74
+ * unassigns (but does not delete) any linked phone number.
49
75
  *
50
76
  * @param agentHandle - Handle of the identity to delete.
51
77
  */
52
78
  delete(agentHandle: string): Promise<void>;
53
- /**
54
- * Assign a mailbox to an identity.
55
- *
56
- * @param agentHandle - Handle of the identity.
57
- * @param options.mailboxId - UUID of the mailbox to assign.
58
- */
59
- assignMailbox(agentHandle: string, options: {
60
- mailboxId: string;
61
- }): Promise<_AgentIdentityData>;
62
- /**
63
- * Unlink the mailbox from an identity (does not delete the mailbox).
64
- *
65
- * @param agentHandle - Handle of the identity.
66
- */
67
- unlinkMailbox(agentHandle: string): Promise<void>;
68
79
  /**
69
80
  * Assign a phone number to an identity.
70
81
  *