@helmdesk/sdk 0.8.0 → 0.10.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/README.md +97 -0
- package/dist/client.d.ts +59 -7
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +82 -7
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/types/customers.d.ts +86 -0
- package/dist/types/customers.d.ts.map +1 -0
- package/dist/types/customers.js +2 -0
- package/dist/types/customers.js.map +1 -0
- package/dist/types/emails.d.ts +29 -8
- package/dist/types/emails.d.ts.map +1 -1
- package/dist/types/feedback.d.ts +22 -1
- package/dist/types/feedback.d.ts.map +1 -1
- package/dist/types/webhooks.d.ts +1 -1
- package/dist/types/webhooks.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -286,6 +286,68 @@ const conversation = await helmdesk.feedback.conversations.create({
|
|
|
286
286
|
});
|
|
287
287
|
```
|
|
288
288
|
|
|
289
|
+
### Customers
|
|
290
|
+
|
|
291
|
+
A directory of everyone who has interacted with your project — built automatically from tickets and feedback, and manageable explicitly via the API. Requires the `customers:read` / `customers:write` scopes.
|
|
292
|
+
|
|
293
|
+
**Look up a customer from your own app**
|
|
294
|
+
|
|
295
|
+
Set `externalId` to your app's user id once, then resolve users to Helmdesk customers without knowing their email.
|
|
296
|
+
|
|
297
|
+
```ts
|
|
298
|
+
// Enrich (or pre-create) the customer record from your app
|
|
299
|
+
const customer = await helmdesk.customers.create({
|
|
300
|
+
email: "jane@example.com",
|
|
301
|
+
name: "Jane Doe",
|
|
302
|
+
company: "Acme",
|
|
303
|
+
externalId: "user_42", // YOUR app's id for this user
|
|
304
|
+
internalNote: "Beta cohort", // staff-only, never shown to the customer
|
|
305
|
+
metadata: { plan: "pro" },
|
|
306
|
+
});
|
|
307
|
+
|
|
308
|
+
// Later, from your app: who is user_42 in Helmdesk?
|
|
309
|
+
const { customers } = await helmdesk.customers.list({ externalId: "user_42" });
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
`create` throws a `409 conflict` if the email already exists in the environment — customers are unique per project + environment + email.
|
|
313
|
+
|
|
314
|
+
**Get a customer with their full history**
|
|
315
|
+
|
|
316
|
+
`get` includes the customer's interaction history (tickets and feedback conversations, joined by email, recent-first, capped at 50 each) — everything you need for a "who is this person?" view.
|
|
317
|
+
|
|
318
|
+
```ts
|
|
319
|
+
const detail = await helmdesk.customers.get(customer.id);
|
|
320
|
+
// detail.history.tickets[0] -> { id, number, subject, status, createdAt }
|
|
321
|
+
// detail.history.feedbackConversations[0] -> { id, title, rating, status, createdAt }
|
|
322
|
+
```
|
|
323
|
+
|
|
324
|
+
**Update and delete**
|
|
325
|
+
|
|
326
|
+
Email is immutable (it is the join key back to tickets and feedback). Pass `null` to clear a field.
|
|
327
|
+
|
|
328
|
+
```ts
|
|
329
|
+
await helmdesk.customers.update(customer.id, {
|
|
330
|
+
company: "Acme Corp",
|
|
331
|
+
internalNote: "Churn risk — pricing complaint in March",
|
|
332
|
+
metadata: null, // clears
|
|
333
|
+
});
|
|
334
|
+
|
|
335
|
+
await helmdesk.customers.delete(customer.id);
|
|
336
|
+
// Tickets/feedback are untouched; a new interaction re-creates the customer.
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
**Search the directory**
|
|
340
|
+
|
|
341
|
+
```ts
|
|
342
|
+
const { customers, total } = await helmdesk.customers.list({
|
|
343
|
+
search: "acme", // matches email, name, or company
|
|
344
|
+
page: 1,
|
|
345
|
+
limit: 25,
|
|
346
|
+
});
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
The `customer.created` and `customer.updated` webhook events fire when customers are created (explicitly or automatically from an interaction) or updated.
|
|
350
|
+
|
|
289
351
|
## Error Handling
|
|
290
352
|
|
|
291
353
|
All API errors throw a `HelmdeskError` with structured fields for programmatic handling.
|
|
@@ -349,6 +411,40 @@ await helmdesk.emails.templates.import(
|
|
|
349
411
|
);
|
|
350
412
|
```
|
|
351
413
|
|
|
414
|
+
**Wrapping a template in a layout**
|
|
415
|
+
|
|
416
|
+
A layout is the branded shell (header, footer, styling) that a template body is
|
|
417
|
+
injected into via `{{{content}}}`. Import the layout first, then reference its
|
|
418
|
+
key — the layout has to exist before the template that points at it.
|
|
419
|
+
|
|
420
|
+
```ts
|
|
421
|
+
// 1. The shell
|
|
422
|
+
await helmdesk.emails.templates.import(
|
|
423
|
+
'<div class="wrap"><img src="{{brandLogoUrl}}">{{{content}}}</div>',
|
|
424
|
+
"branded.hbs",
|
|
425
|
+
{ type: "layout" }
|
|
426
|
+
);
|
|
427
|
+
|
|
428
|
+
// 2. A template that uses it
|
|
429
|
+
const result = await helmdesk.emails.templates.import(
|
|
430
|
+
"<h1>Welcome, {{name}}</h1>",
|
|
431
|
+
"welcome.hbs",
|
|
432
|
+
{ type: "template", subject: "Welcome!", layout: "branded" }
|
|
433
|
+
);
|
|
434
|
+
|
|
435
|
+
result.layoutLinked; // true — sends will be wrapped
|
|
436
|
+
result.warnings; // [] — non-empty if the layout could not be resolved
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
The layout can also be declared in the file itself with a
|
|
440
|
+
`{{!-- layout: branded --}}` comment; the `layout` option wins if both are given.
|
|
441
|
+
Either way the import **links** the template to the layout, so it shows up in the
|
|
442
|
+
dashboard's Layout dropdown and is applied on every send.
|
|
443
|
+
|
|
444
|
+
> If `layoutLinked` comes back `false`, the layout key did not resolve (usually
|
|
445
|
+
> because it has not been imported yet). The template is still saved, but emails
|
|
446
|
+
> render unwrapped until you import the layout and re-import the template.
|
|
447
|
+
|
|
352
448
|
Import options:
|
|
353
449
|
|
|
354
450
|
| Option | Type | Description |
|
|
@@ -358,6 +454,7 @@ Import options:
|
|
|
358
454
|
| `key` | `string` | Override the template key. Defaults to the filename without `.hbs`. |
|
|
359
455
|
| `name` | `string` | Override the display name. |
|
|
360
456
|
| `subject` | `string` | Subject line. Can also be set via a `{{!-- subject: ... --}}` comment in the template. |
|
|
457
|
+
| `layout` | `string` | Key of an existing layout to wrap the template in. Overrides a `{{!-- layout: ... --}}` comment. Omit to keep the current layout; pass `''` or `'none'` to remove it. Templates only. |
|
|
361
458
|
|
|
362
459
|
## Runtime Support
|
|
363
460
|
|
package/dist/client.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import type { TeamMemberListResult } from './types/team.js';
|
|
|
5
5
|
import type { WebhookListResult, CreateWebhookInput, CreateWebhookResult, DeleteWebhookResult } from './types/webhooks.js';
|
|
6
6
|
import type { LogEventInput, WriteLogsResult, LogListFilters, LogListResult, LogIssueListFilters, LogIssueListResult } from './types/logs.js';
|
|
7
7
|
import type { FeedbackConversation, FeedbackConversationDetail, FeedbackConversationListFilters, FeedbackConversationListResult, CreateFeedbackConversationInput, CreateFeedbackConversationResult, UpdateFeedbackConversationInput, FeedbackReplyResult, FeedbackRequest, FeedbackRequestListFilters, FeedbackRequestListResult, CreateFeedbackRequestInput } from './types/feedback.js';
|
|
8
|
+
import type { Customer, CustomerDetail, CustomerListFilters, CustomerListResult, CreateCustomerInput, UpdateCustomerInput, DeleteCustomerResult } from './types/customers.js';
|
|
8
9
|
export interface HelmdeskClientOptions {
|
|
9
10
|
apiKey: string;
|
|
10
11
|
baseUrl?: string;
|
|
@@ -19,6 +20,7 @@ export declare class HelmdeskClient {
|
|
|
19
20
|
readonly team: TeamResource;
|
|
20
21
|
readonly webhooks: WebhooksResource;
|
|
21
22
|
readonly feedback: FeedbackResource;
|
|
23
|
+
readonly customers: CustomersResource;
|
|
22
24
|
constructor(options: HelmdeskClientOptions);
|
|
23
25
|
/** Make a JSON API request. Used internally by resource classes. */
|
|
24
26
|
request<T>(method: string, path: string, options?: {
|
|
@@ -96,14 +98,25 @@ declare class TemplatesResource {
|
|
|
96
98
|
*/
|
|
97
99
|
list(): Promise<TemplateListResult>;
|
|
98
100
|
/**
|
|
99
|
-
* Import a .hbs file as a template, layout, or partial.
|
|
101
|
+
* Import a .hbs file as a template, layout, or partial. Re-importing an
|
|
102
|
+
* existing key updates it in place (templates get a new version).
|
|
103
|
+
*
|
|
104
|
+
* To wrap a template in a layout, import the layout first, then reference it
|
|
105
|
+
* with `layout` (or a `{{!-- layout: key --}}` comment in the body). Check
|
|
106
|
+
* `layoutLinked` on the result — if it is `false`, the layout did not resolve
|
|
107
|
+
* and the email will render unwrapped.
|
|
100
108
|
*
|
|
101
109
|
* @example
|
|
102
|
-
* // Import
|
|
103
|
-
* await client.emails.templates.import(
|
|
110
|
+
* // 1. Import the layout
|
|
111
|
+
* await client.emails.templates.import(layoutHtml, 'branded.hbs', { type: 'layout' })
|
|
112
|
+
*
|
|
113
|
+
* // 2. Import a template wrapped in it
|
|
114
|
+
* const result = await client.emails.templates.import(fileContent, 'welcome.hbs', {
|
|
104
115
|
* type: 'template',
|
|
105
116
|
* subject: 'Welcome to {{brandName}}!',
|
|
117
|
+
* layout: 'branded',
|
|
106
118
|
* })
|
|
119
|
+
* if (!result.layoutLinked) console.warn(result.warnings)
|
|
107
120
|
*
|
|
108
121
|
* // Import to account (shared across all projects)
|
|
109
122
|
* await client.emails.templates.import(fileContent, 'footer.hbs', {
|
|
@@ -182,18 +195,57 @@ declare class FeedbackConversationsResource {
|
|
|
182
195
|
*/
|
|
183
196
|
reply(conversationId: string, body: string): Promise<FeedbackReplyResult>;
|
|
184
197
|
}
|
|
198
|
+
declare class CustomersResource {
|
|
199
|
+
private client;
|
|
200
|
+
constructor(client: HelmdeskClient);
|
|
201
|
+
/**
|
|
202
|
+
* List customers, most recently seen first. `search` matches email, name,
|
|
203
|
+
* or company; `externalId` is an exact match on your app's id for the
|
|
204
|
+
* customer. Requires the `customers:read` scope.
|
|
205
|
+
*/
|
|
206
|
+
list(filters?: CustomerListFilters): Promise<CustomerListResult>;
|
|
207
|
+
/**
|
|
208
|
+
* Get a customer including their interaction history — tickets and feedback
|
|
209
|
+
* conversations joined by email, recent-first, capped at 50 each.
|
|
210
|
+
* Requires the `customers:read` scope.
|
|
211
|
+
*/
|
|
212
|
+
get(customerId: string): Promise<CustomerDetail>;
|
|
213
|
+
/**
|
|
214
|
+
* Create a customer explicitly (customers are also created automatically
|
|
215
|
+
* from tickets and feedback). Returns 409 when the email already exists in
|
|
216
|
+
* this environment. Requires the `customers:write` scope.
|
|
217
|
+
*/
|
|
218
|
+
create(input: CreateCustomerInput): Promise<Customer>;
|
|
219
|
+
/**
|
|
220
|
+
* Partially update a customer. Email is immutable (it's the join key back
|
|
221
|
+
* to tickets and feedback); pass `null` to clear a field. Requires the
|
|
222
|
+
* `customers:write` scope.
|
|
223
|
+
*/
|
|
224
|
+
update(customerId: string, input: UpdateCustomerInput): Promise<Customer>;
|
|
225
|
+
/**
|
|
226
|
+
* Delete a customer. Tickets and feedback conversations are untouched —
|
|
227
|
+
* linkage is by email, not foreign key — and a new interaction simply
|
|
228
|
+
* re-creates the row. Requires the `customers:write` scope.
|
|
229
|
+
*/
|
|
230
|
+
delete(customerId: string): Promise<DeleteCustomerResult>;
|
|
231
|
+
}
|
|
185
232
|
declare class FeedbackRequestsResource {
|
|
186
233
|
private client;
|
|
187
234
|
constructor(client: HelmdeskClient);
|
|
188
235
|
/**
|
|
189
236
|
* List feedback requests, newest first. `status` accepts a comma-separated
|
|
190
|
-
* list (`sent`, `opened`, `responded`).
|
|
237
|
+
* list (`created`, `sent`, `opened`, `responded`). Link-channel rows include
|
|
238
|
+
* `respondUrl`. Requires the `feedback:read` scope.
|
|
191
239
|
*/
|
|
192
240
|
list(filters?: FeedbackRequestListFilters): Promise<FeedbackRequestListResult>;
|
|
193
241
|
/**
|
|
194
|
-
* Create a feedback request
|
|
195
|
-
*
|
|
196
|
-
*
|
|
242
|
+
* Create a feedback request. With the default `channel: 'email'` Helmdesk
|
|
243
|
+
* sends the built-in branded email asking the customer to respond (with an
|
|
244
|
+
* `sk_sandbox_` key the email is captured, not delivered). With
|
|
245
|
+
* `channel: 'link'` no email is sent — the returned request carries
|
|
246
|
+
* `respondUrl` for you to deliver yourself (e.g. inside your own coupon
|
|
247
|
+
* email); the funnel still tracks opened/responded. Requires the
|
|
248
|
+
* `feedback:write` scope.
|
|
197
249
|
*/
|
|
198
250
|
create(input: CreateFeedbackRequestInput): Promise<FeedbackRequest>;
|
|
199
251
|
/** Get a single feedback request by id. Requires the `feedback:read` scope. */
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACd,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACd,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACpB,OAAO,EACP,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,yBAAyB,EAC1B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,EAC9B,+BAA+B,EAC/B,gCAAgC,EAChC,+BAA+B,EAC/B,mBAAmB,EACnB,eAAe,EACf,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC3B,MAAM,qBAAqB,CAAA;AAC5B,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAEhC,SAAgB,OAAO,EAAE,eAAe,CAAA;IACxC,SAAgB,MAAM,EAAE,cAAc,CAAA;IACtC,SAAgB,QAAQ,EAAE,gBAAgB,CAAA;IAC1C,SAAgB,IAAI,EAAE,YAAY,CAAA;IAClC,SAAgB,IAAI,EAAE,YAAY,CAAA;IAClC,SAAgB,QAAQ,EAAE,gBAAgB,CAAA;IAC1C,SAAgB,QAAQ,EAAE,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -9,6 +9,7 @@ export class HelmdeskClient {
|
|
|
9
9
|
team;
|
|
10
10
|
webhooks;
|
|
11
11
|
feedback;
|
|
12
|
+
customers;
|
|
12
13
|
constructor(options) {
|
|
13
14
|
if (!options.apiKey)
|
|
14
15
|
throw new Error('apiKey is required');
|
|
@@ -21,6 +22,7 @@ export class HelmdeskClient {
|
|
|
21
22
|
this.team = new TeamResource(this);
|
|
22
23
|
this.webhooks = new WebhooksResource(this);
|
|
23
24
|
this.feedback = new FeedbackResource(this);
|
|
25
|
+
this.customers = new CustomersResource(this);
|
|
24
26
|
}
|
|
25
27
|
/** Make a JSON API request. Used internally by resource classes. */
|
|
26
28
|
async request(method, path, options) {
|
|
@@ -209,14 +211,25 @@ class TemplatesResource {
|
|
|
209
211
|
return this.client.request('GET', '/email-templates');
|
|
210
212
|
}
|
|
211
213
|
/**
|
|
212
|
-
* Import a .hbs file as a template, layout, or partial.
|
|
214
|
+
* Import a .hbs file as a template, layout, or partial. Re-importing an
|
|
215
|
+
* existing key updates it in place (templates get a new version).
|
|
216
|
+
*
|
|
217
|
+
* To wrap a template in a layout, import the layout first, then reference it
|
|
218
|
+
* with `layout` (or a `{{!-- layout: key --}}` comment in the body). Check
|
|
219
|
+
* `layoutLinked` on the result — if it is `false`, the layout did not resolve
|
|
220
|
+
* and the email will render unwrapped.
|
|
213
221
|
*
|
|
214
222
|
* @example
|
|
215
|
-
* // Import
|
|
216
|
-
* await client.emails.templates.import(
|
|
223
|
+
* // 1. Import the layout
|
|
224
|
+
* await client.emails.templates.import(layoutHtml, 'branded.hbs', { type: 'layout' })
|
|
225
|
+
*
|
|
226
|
+
* // 2. Import a template wrapped in it
|
|
227
|
+
* const result = await client.emails.templates.import(fileContent, 'welcome.hbs', {
|
|
217
228
|
* type: 'template',
|
|
218
229
|
* subject: 'Welcome to {{brandName}}!',
|
|
230
|
+
* layout: 'branded',
|
|
219
231
|
* })
|
|
232
|
+
* if (!result.layoutLinked) console.warn(result.warnings)
|
|
220
233
|
*
|
|
221
234
|
* // Import to account (shared across all projects)
|
|
222
235
|
* await client.emails.templates.import(fileContent, 'footer.hbs', {
|
|
@@ -240,6 +253,10 @@ class TemplatesResource {
|
|
|
240
253
|
formData.append('name', options.name);
|
|
241
254
|
if (options?.subject)
|
|
242
255
|
formData.append('subject', options.subject);
|
|
256
|
+
// Sent even when empty — an empty `layout` field means "detach", while an
|
|
257
|
+
// absent one means "leave the current layout alone".
|
|
258
|
+
if (options?.layout !== undefined)
|
|
259
|
+
formData.append('layout', options.layout);
|
|
243
260
|
const path = options?.scope === 'account'
|
|
244
261
|
? '/account/email-templates/import'
|
|
245
262
|
: '/email-templates/import';
|
|
@@ -390,6 +407,59 @@ class FeedbackConversationsResource {
|
|
|
390
407
|
return this.client.request('POST', `/feedback/conversations/${conversationId}/messages`, { body: { body } });
|
|
391
408
|
}
|
|
392
409
|
}
|
|
410
|
+
class CustomersResource {
|
|
411
|
+
client;
|
|
412
|
+
constructor(client) {
|
|
413
|
+
this.client = client;
|
|
414
|
+
}
|
|
415
|
+
/**
|
|
416
|
+
* List customers, most recently seen first. `search` matches email, name,
|
|
417
|
+
* or company; `externalId` is an exact match on your app's id for the
|
|
418
|
+
* customer. Requires the `customers:read` scope.
|
|
419
|
+
*/
|
|
420
|
+
async list(filters) {
|
|
421
|
+
return this.client.request('GET', '/customers', {
|
|
422
|
+
params: {
|
|
423
|
+
search: filters?.search,
|
|
424
|
+
externalId: filters?.externalId,
|
|
425
|
+
page: filters?.page?.toString(),
|
|
426
|
+
limit: filters?.limit?.toString(),
|
|
427
|
+
},
|
|
428
|
+
});
|
|
429
|
+
}
|
|
430
|
+
/**
|
|
431
|
+
* Get a customer including their interaction history — tickets and feedback
|
|
432
|
+
* conversations joined by email, recent-first, capped at 50 each.
|
|
433
|
+
* Requires the `customers:read` scope.
|
|
434
|
+
*/
|
|
435
|
+
async get(customerId) {
|
|
436
|
+
return this.client.request('GET', `/customers/${customerId}`);
|
|
437
|
+
}
|
|
438
|
+
/**
|
|
439
|
+
* Create a customer explicitly (customers are also created automatically
|
|
440
|
+
* from tickets and feedback). Returns 409 when the email already exists in
|
|
441
|
+
* this environment. Requires the `customers:write` scope.
|
|
442
|
+
*/
|
|
443
|
+
async create(input) {
|
|
444
|
+
return this.client.request('POST', '/customers', { body: input });
|
|
445
|
+
}
|
|
446
|
+
/**
|
|
447
|
+
* Partially update a customer. Email is immutable (it's the join key back
|
|
448
|
+
* to tickets and feedback); pass `null` to clear a field. Requires the
|
|
449
|
+
* `customers:write` scope.
|
|
450
|
+
*/
|
|
451
|
+
async update(customerId, input) {
|
|
452
|
+
return this.client.request('PATCH', `/customers/${customerId}`, { body: input });
|
|
453
|
+
}
|
|
454
|
+
/**
|
|
455
|
+
* Delete a customer. Tickets and feedback conversations are untouched —
|
|
456
|
+
* linkage is by email, not foreign key — and a new interaction simply
|
|
457
|
+
* re-creates the row. Requires the `customers:write` scope.
|
|
458
|
+
*/
|
|
459
|
+
async delete(customerId) {
|
|
460
|
+
return this.client.request('DELETE', `/customers/${customerId}`);
|
|
461
|
+
}
|
|
462
|
+
}
|
|
393
463
|
class FeedbackRequestsResource {
|
|
394
464
|
client;
|
|
395
465
|
constructor(client) {
|
|
@@ -397,7 +467,8 @@ class FeedbackRequestsResource {
|
|
|
397
467
|
}
|
|
398
468
|
/**
|
|
399
469
|
* List feedback requests, newest first. `status` accepts a comma-separated
|
|
400
|
-
* list (`sent`, `opened`, `responded`).
|
|
470
|
+
* list (`created`, `sent`, `opened`, `responded`). Link-channel rows include
|
|
471
|
+
* `respondUrl`. Requires the `feedback:read` scope.
|
|
401
472
|
*/
|
|
402
473
|
async list(filters) {
|
|
403
474
|
return this.client.request('GET', '/feedback/requests', {
|
|
@@ -413,9 +484,13 @@ class FeedbackRequestsResource {
|
|
|
413
484
|
});
|
|
414
485
|
}
|
|
415
486
|
/**
|
|
416
|
-
* Create a feedback request
|
|
417
|
-
*
|
|
418
|
-
*
|
|
487
|
+
* Create a feedback request. With the default `channel: 'email'` Helmdesk
|
|
488
|
+
* sends the built-in branded email asking the customer to respond (with an
|
|
489
|
+
* `sk_sandbox_` key the email is captured, not delivered). With
|
|
490
|
+
* `channel: 'link'` no email is sent — the returned request carries
|
|
491
|
+
* `respondUrl` for you to deliver yourself (e.g. inside your own coupon
|
|
492
|
+
* email); the funnel still tracks opened/responded. Requires the
|
|
493
|
+
* `feedback:write` scope.
|
|
419
494
|
*/
|
|
420
495
|
async create(input) {
|
|
421
496
|
return this.client.request('POST', '/feedback/requests', { body: input });
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
export { HelmdeskClient } from './client.js';
|
|
2
2
|
export type { HelmdeskClientOptions } from './client.js';
|
|
3
3
|
export type { Ticket, TicketDetail, TicketMessage, TicketListResult, TicketListFilters, TicketTagsResult, CreateTicketInput, UpdateTicketInput, CreateMessageInput, } from './types/tickets.js';
|
|
4
|
-
export type { SendEmailInput, SendEmailResult, BatchEmailInput, BatchEmailResult, SendEmailBatchInput, SendEmailBatchResult, PreviewEmailInput, PreviewEmailResult, TemplateSchema,
|
|
4
|
+
export type { SendEmailInput, SendEmailResult, BatchEmailInput, BatchEmailResult, SendEmailBatchInput, SendEmailBatchResult, PreviewEmailInput, PreviewEmailResult, TemplateSchema, TemplateListItem, TemplateListResult, ImportOptions, ImportResult, } from './types/emails.js';
|
|
5
5
|
export type { ArticleSearchResult, ArticleSearchFilters, Article, ArticleDetail, CreateArticleInput, UpdateArticleInput, ArticleCategory, ArticleCategoryListResult, } from './types/articles.js';
|
|
6
6
|
export type { TeamMember, TeamMemberListResult } from './types/team.js';
|
|
7
7
|
export type { WebhookEventType, Webhook, WebhookListResult, CreateWebhookInput, CreateWebhookResult, DeleteWebhookResult, } from './types/webhooks.js';
|
|
8
8
|
export type { LogLevel, LogIssueStatus, LogEventInput, WriteLogsResult, LogEvent, LogListFilters, LogListResult, LogIssue, LogIssueListFilters, LogIssueListResult, } from './types/logs.js';
|
|
9
|
-
export type { FeedbackConversationStatus, FeedbackConversationSource, FeedbackRequestStatus, FeedbackSenderType, FeedbackConversation, FeedbackConversationDetail, FeedbackConversationListFilters, FeedbackConversationListResult, CreateFeedbackConversationInput, CreateFeedbackConversationResult, UpdateFeedbackConversationInput, FeedbackAttachment, FeedbackMessage, FeedbackReplyResult, FeedbackRequest, FeedbackRequestListFilters, FeedbackRequestListResult, CreateFeedbackRequestInput, } from './types/feedback.js';
|
|
9
|
+
export type { FeedbackConversationStatus, FeedbackConversationSource, FeedbackRequestStatus, FeedbackRequestChannel, FeedbackSenderType, FeedbackConversation, FeedbackConversationDetail, FeedbackConversationListFilters, FeedbackConversationListResult, CreateFeedbackConversationInput, CreateFeedbackConversationResult, UpdateFeedbackConversationInput, FeedbackAttachment, FeedbackMessage, FeedbackReplyResult, FeedbackRequest, FeedbackRequestListFilters, FeedbackRequestListResult, CreateFeedbackRequestInput, } from './types/feedback.js';
|
|
10
|
+
export type { Customer, CustomerDetail, CustomerHistory, CustomerHistoryTicket, CustomerHistoryConversation, CustomerListFilters, CustomerListResult, CreateCustomerInput, UpdateCustomerInput, DeleteCustomerResult, } from './types/customers.js';
|
|
10
11
|
export type { HelmdeskError } from './types/errors.js';
|
|
11
12
|
//# 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,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACxD,YAAY,EACV,MAAM,EACN,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EACV,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACxD,YAAY,EACV,MAAM,EACN,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EACV,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,YAAY,GACb,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EACV,mBAAmB,EACnB,oBAAoB,EACpB,OAAO,EACP,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,yBAAyB,GAC1B,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AACvE,YAAY,EACV,gBAAgB,EAChB,OAAO,EACP,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,QAAQ,EACR,cAAc,EACd,aAAa,EACb,eAAe,EACf,QAAQ,EACR,cAAc,EACd,aAAa,EACb,QAAQ,EACR,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,iBAAiB,CAAA;AACxB,YAAY,EACV,0BAA0B,EAC1B,0BAA0B,EAC1B,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,EAC9B,+BAA+B,EAC/B,gCAAgC,EAChC,+BAA+B,EAC/B,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,QAAQ,EACR,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,2BAA2B,EAC3B,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,sBAAsB,CAAA;AAC7B,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
export interface Customer {
|
|
2
|
+
id: string;
|
|
3
|
+
email: string;
|
|
4
|
+
name: string | null;
|
|
5
|
+
company: string | null;
|
|
6
|
+
/** The customer's id in YOUR app (your user id, etc.). */
|
|
7
|
+
externalId: string | null;
|
|
8
|
+
/** Staff-only note — never shown to the customer. */
|
|
9
|
+
internalNote: string | null;
|
|
10
|
+
metadata: Record<string, unknown> | null;
|
|
11
|
+
environment: string;
|
|
12
|
+
/** Bumped whenever the customer interacts (ticket, feedback, …). */
|
|
13
|
+
lastSeenAt: string;
|
|
14
|
+
createdAt: string;
|
|
15
|
+
updatedAt: string;
|
|
16
|
+
}
|
|
17
|
+
/** A ticket summary in a customer's interaction history. */
|
|
18
|
+
export interface CustomerHistoryTicket {
|
|
19
|
+
id: string;
|
|
20
|
+
number: number;
|
|
21
|
+
subject: string;
|
|
22
|
+
status: string;
|
|
23
|
+
createdAt: string;
|
|
24
|
+
}
|
|
25
|
+
/** A feedback-conversation summary in a customer's interaction history. */
|
|
26
|
+
export interface CustomerHistoryConversation {
|
|
27
|
+
id: string;
|
|
28
|
+
title: string;
|
|
29
|
+
rating: number | null;
|
|
30
|
+
status: string;
|
|
31
|
+
createdAt: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* The customer's interaction history, joined by email — tickets and feedback
|
|
35
|
+
* conversations, recent-first, capped at 50 each.
|
|
36
|
+
*/
|
|
37
|
+
export interface CustomerHistory {
|
|
38
|
+
tickets: CustomerHistoryTicket[];
|
|
39
|
+
feedbackConversations: CustomerHistoryConversation[];
|
|
40
|
+
}
|
|
41
|
+
/** `customers.get()` always includes the interaction history. */
|
|
42
|
+
export interface CustomerDetail extends Customer {
|
|
43
|
+
history: CustomerHistory;
|
|
44
|
+
}
|
|
45
|
+
export interface CustomerListFilters {
|
|
46
|
+
/** Substring match on email, name, or company. */
|
|
47
|
+
search?: string;
|
|
48
|
+
/** Exact match on your app's id for the customer. */
|
|
49
|
+
externalId?: string;
|
|
50
|
+
page?: number;
|
|
51
|
+
limit?: number;
|
|
52
|
+
}
|
|
53
|
+
export interface CustomerListResult {
|
|
54
|
+
customers: Customer[];
|
|
55
|
+
total: number;
|
|
56
|
+
page: number;
|
|
57
|
+
limit: number;
|
|
58
|
+
}
|
|
59
|
+
export interface CreateCustomerInput {
|
|
60
|
+
email: string;
|
|
61
|
+
name?: string;
|
|
62
|
+
company?: string;
|
|
63
|
+
/** The customer's id in YOUR app (max 200 chars). */
|
|
64
|
+
externalId?: string;
|
|
65
|
+
/** Staff-only note (max 5000 chars) — never shown to the customer. */
|
|
66
|
+
internalNote?: string;
|
|
67
|
+
/** Arbitrary JSON, at most 8 KB serialized. */
|
|
68
|
+
metadata?: Record<string, unknown>;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Partial update. Email is deliberately immutable through the API — it is the
|
|
72
|
+
* join key back to tickets and feedback conversations. Pass `null` to clear a
|
|
73
|
+
* field.
|
|
74
|
+
*/
|
|
75
|
+
export interface UpdateCustomerInput {
|
|
76
|
+
name?: string | null;
|
|
77
|
+
company?: string | null;
|
|
78
|
+
externalId?: string | null;
|
|
79
|
+
internalNote?: string | null;
|
|
80
|
+
metadata?: Record<string, unknown> | null;
|
|
81
|
+
}
|
|
82
|
+
export interface DeleteCustomerResult {
|
|
83
|
+
deleted: boolean;
|
|
84
|
+
id: string;
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=customers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"customers.d.ts","sourceRoot":"","sources":["../../src/types/customers.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,0DAA0D;IAC1D,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,qDAAqD;IACrD,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IACxC,WAAW,EAAE,MAAM,CAAA;IACnB,oEAAoE;IACpE,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,4DAA4D;AAC5D,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,2EAA2E;AAC3E,MAAM,WAAW,2BAA2B;IAC1C,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,qBAAqB,EAAE,CAAA;IAChC,qBAAqB,EAAE,2BAA2B,EAAE,CAAA;CACrD;AAED,iEAAiE;AACjE,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAC9C,OAAO,EAAE,eAAe,CAAA;CACzB;AAED,MAAM,WAAW,mBAAmB;IAClC,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,QAAQ,EAAE,CAAA;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;CAC1C;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAA;IAChB,EAAE,EAAE,MAAM,CAAA;CACX"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"customers.js","sourceRoot":"","sources":["../../src/types/customers.ts"],"names":[],"mappings":""}
|
package/dist/types/emails.d.ts
CHANGED
|
@@ -64,17 +64,17 @@ export interface PreviewEmailResult {
|
|
|
64
64
|
subject: string;
|
|
65
65
|
html: string;
|
|
66
66
|
}
|
|
67
|
-
export interface TemplateVariable {
|
|
68
|
-
name: string;
|
|
69
|
-
type: string;
|
|
70
|
-
required: boolean;
|
|
71
|
-
description?: string;
|
|
72
|
-
}
|
|
73
67
|
export interface TemplateSchema {
|
|
74
68
|
key: string;
|
|
75
69
|
name: string;
|
|
76
|
-
|
|
77
|
-
|
|
70
|
+
/** Subject line of the current version, with variables left unresolved. */
|
|
71
|
+
subject: string;
|
|
72
|
+
/**
|
|
73
|
+
* Names of the variables the template body references. Built-in branding
|
|
74
|
+
* variables (brandName, brandLogoUrl, supportEmail, …) are excluded — those
|
|
75
|
+
* are filled in for you at send time.
|
|
76
|
+
*/
|
|
77
|
+
variables: string[];
|
|
78
78
|
}
|
|
79
79
|
export interface TemplateListItem {
|
|
80
80
|
key: string;
|
|
@@ -100,6 +100,17 @@ export interface ImportOptions {
|
|
|
100
100
|
name?: string;
|
|
101
101
|
/** Subject line for templates. Auto-detected from {{!-- subject: ... --}} comment if not specified. */
|
|
102
102
|
subject?: string;
|
|
103
|
+
/**
|
|
104
|
+
* Key of the layout that should wrap this template, overriding any
|
|
105
|
+
* `{{!-- layout: ... --}}` comment in the body. The layout must already exist
|
|
106
|
+
* in the same scope and environment — import it first with `type: 'layout'`.
|
|
107
|
+
*
|
|
108
|
+
* Omit to keep the template's current layout (or use the body comment on
|
|
109
|
+
* first import). Pass `''` or `'none'` to explicitly remove the layout.
|
|
110
|
+
*
|
|
111
|
+
* Templates only — ignored for `type: 'layout'` and `'partial'`.
|
|
112
|
+
*/
|
|
113
|
+
layout?: string;
|
|
103
114
|
/** Import to 'account' (shared) or 'project' (default). */
|
|
104
115
|
scope?: 'project' | 'account';
|
|
105
116
|
}
|
|
@@ -112,7 +123,17 @@ export interface ImportResult {
|
|
|
112
123
|
subject?: string;
|
|
113
124
|
variables?: string[];
|
|
114
125
|
referencedPartials?: string[];
|
|
126
|
+
/** The layout key the template is now stored with, or null if it has none. */
|
|
115
127
|
layoutKey?: string | null;
|
|
128
|
+
/** Id of the linked layout row. Project templates only; null when unlinked. */
|
|
129
|
+
layoutId?: string | null;
|
|
130
|
+
/**
|
|
131
|
+
* Whether the template will actually render inside a layout. If you asked for
|
|
132
|
+
* one and this is `false`, check `warnings` — the layout did not resolve and
|
|
133
|
+
* the email sends unwrapped until you import it and re-import the template.
|
|
134
|
+
*/
|
|
135
|
+
layoutLinked?: boolean;
|
|
136
|
+
/** Non-fatal problems: missing partials, unresolved layouts. The import still succeeded. */
|
|
116
137
|
warnings?: string[];
|
|
117
138
|
}
|
|
118
139
|
//# sourceMappingURL=emails.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emails.d.ts","sourceRoot":"","sources":["../../src/types/emails.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAA;IACnB,EAAE,EAAE;QACF,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,WAAW,CAAC,EAAE,YAAY,GAAG,SAAS,GAAG,aAAa,CAAA;IACtD;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,OAAO,CAAA;IACrB,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,sHAAsH;AACtH,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,wGAAwG;IACxG,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,+CAA+C;IAC/C,MAAM,EAAE,eAAe,EAAE,CAAA;CAC1B;AAED,kGAAkG;AAClG,MAAM,WAAW,gBAAgB;IAC/B,yDAAyD;IACzD,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,MAAM,CAAA;IACV,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,gBAAgB,EAAE,CAAA;CAC5B;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"emails.d.ts","sourceRoot":"","sources":["../../src/types/emails.ts"],"names":[],"mappings":"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"}
|
package/dist/types/feedback.d.ts
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
export type FeedbackConversationStatus = 'open' | 'closed';
|
|
2
2
|
export type FeedbackConversationSource = 'request' | 'api' | 'widget' | 'dashboard';
|
|
3
|
-
export type FeedbackRequestStatus = 'sent' | 'opened' | 'responded';
|
|
3
|
+
export type FeedbackRequestStatus = 'created' | 'sent' | 'opened' | 'responded';
|
|
4
|
+
/**
|
|
5
|
+
* How the respond link reaches the customer: 'email' — Helmdesk sends the
|
|
6
|
+
* built-in branded email; 'link' — the request just mints the respond URL and
|
|
7
|
+
* you deliver it yourself (e.g. inside your own coupon email).
|
|
8
|
+
*/
|
|
9
|
+
export type FeedbackRequestChannel = 'email' | 'link';
|
|
4
10
|
export type FeedbackSenderType = 'customer' | 'staff' | 'api';
|
|
5
11
|
export interface FeedbackConversation {
|
|
6
12
|
id: string;
|
|
@@ -92,6 +98,14 @@ export interface FeedbackRequest {
|
|
|
92
98
|
customerEmail: string;
|
|
93
99
|
customerName: string | null;
|
|
94
100
|
status: FeedbackRequestStatus;
|
|
101
|
+
channel: FeedbackRequestChannel;
|
|
102
|
+
/** Staff-only note, never shown to the customer. */
|
|
103
|
+
internalNote: string | null;
|
|
104
|
+
/**
|
|
105
|
+
* Public respond URL — present on link-channel requests only. Embed it in
|
|
106
|
+
* your own email or message; the funnel still tracks opened/responded.
|
|
107
|
+
*/
|
|
108
|
+
respondUrl?: string;
|
|
95
109
|
/** Attachments included with the request email (null when none). */
|
|
96
110
|
attachments: FeedbackAttachment[] | null;
|
|
97
111
|
/** Dashboard user who sent it (null when created via API). */
|
|
@@ -122,5 +136,12 @@ export interface CreateFeedbackRequestInput {
|
|
|
122
136
|
message: string;
|
|
123
137
|
customerEmail: string;
|
|
124
138
|
customerName?: string;
|
|
139
|
+
/**
|
|
140
|
+
* 'email' (default) sends the built-in branded email; 'link' skips the
|
|
141
|
+
* email and returns `respondUrl` for you to deliver yourself.
|
|
142
|
+
*/
|
|
143
|
+
channel?: FeedbackRequestChannel;
|
|
144
|
+
/** Staff-only note, never shown to the customer (max 2000 characters). */
|
|
145
|
+
internalNote?: string;
|
|
125
146
|
}
|
|
126
147
|
//# sourceMappingURL=feedback.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../../src/types/feedback.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG,QAAQ,CAAA;AAE1D,MAAM,MAAM,0BAA0B,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,WAAW,CAAA;AAEnF,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../../src/types/feedback.ts"],"names":[],"mappings":"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"}
|
package/dist/types/webhooks.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type WebhookEventType = 'ticket.created' | 'ticket.resolved' | 'message.received' | 'feedback.submitted' | 'email.bounced';
|
|
1
|
+
export type WebhookEventType = 'ticket.created' | 'ticket.resolved' | 'message.received' | 'feedback.submitted' | 'email.bounced' | 'customer.created' | 'customer.updated';
|
|
2
2
|
export interface Webhook {
|
|
3
3
|
id: string;
|
|
4
4
|
url: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/types/webhooks.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,GAChB,iBAAiB,GACjB,kBAAkB,GAClB,oBAAoB,GACpB,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/types/webhooks.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,GAChB,iBAAiB,GACjB,kBAAkB,GAClB,oBAAoB,GACpB,eAAe,GACf,kBAAkB,GAClB,kBAAkB,CAAA;AAEtB,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,gBAAgB,EAAE,CAAA;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,WAAW,EAAE,OAAO,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,OAAO,EAAE,CAAA;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,gBAAgB,EAAE,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,2DAA2D;AAC3D,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,gBAAgB,EAAE,CAAA;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,WAAW,EAAE,OAAO,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAA;IAChB,EAAE,EAAE,MAAM,CAAA;CACX"}
|