@cakemail-org/cakemail-cli 1.2.0 → 1.3.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 +140 -0
- package/dist/cli.js +9 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/attributes.d.ts +5 -0
- package/dist/commands/attributes.d.ts.map +1 -0
- package/dist/commands/attributes.js +98 -0
- package/dist/commands/attributes.js.map +1 -0
- package/dist/commands/contacts.d.ts.map +1 -1
- package/dist/commands/contacts.js +227 -0
- package/dist/commands/contacts.js.map +1 -1
- package/dist/commands/emails.d.ts.map +1 -1
- package/dist/commands/emails.js +53 -0
- package/dist/commands/emails.js.map +1 -1
- package/dist/commands/lists.d.ts.map +1 -1
- package/dist/commands/lists.js +134 -0
- package/dist/commands/lists.js.map +1 -1
- package/dist/commands/reports.d.ts +5 -0
- package/dist/commands/reports.d.ts.map +1 -0
- package/dist/commands/reports.js +257 -0
- package/dist/commands/reports.js.map +1 -0
- package/dist/commands/segments.d.ts +5 -0
- package/dist/commands/segments.d.ts.map +1 -0
- package/dist/commands/segments.js +165 -0
- package/dist/commands/segments.js.map +1 -0
- package/dist/commands/suppressed.d.ts +5 -0
- package/dist/commands/suppressed.d.ts.map +1 -0
- package/dist/commands/suppressed.js +179 -0
- package/dist/commands/suppressed.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -370,6 +370,146 @@ cakemail webhooks archive <id>
|
|
|
370
370
|
cakemail webhooks unarchive <id>
|
|
371
371
|
```
|
|
372
372
|
|
|
373
|
+
#### Reports & Analytics (NEW in v1.3)
|
|
374
|
+
|
|
375
|
+
```bash
|
|
376
|
+
# Campaign analytics
|
|
377
|
+
cakemail reports campaign <id>
|
|
378
|
+
cakemail reports campaign-links <id>
|
|
379
|
+
|
|
380
|
+
# List analytics
|
|
381
|
+
cakemail reports list <id>
|
|
382
|
+
|
|
383
|
+
# Account analytics
|
|
384
|
+
cakemail reports account
|
|
385
|
+
|
|
386
|
+
# Email API statistics
|
|
387
|
+
cakemail reports emails --from 2025-01-01 --to 2025-12-31
|
|
388
|
+
cakemail reports emails-summary
|
|
389
|
+
cakemail reports transactional-emails
|
|
390
|
+
|
|
391
|
+
# Export campaign reports
|
|
392
|
+
cakemail reports export-campaigns --from 2025-01-01 --status delivered
|
|
393
|
+
cakemail reports campaigns-exports
|
|
394
|
+
cakemail reports campaigns-export <export-id>
|
|
395
|
+
cakemail reports download-campaigns-export <export-id>
|
|
396
|
+
cakemail reports delete-campaigns-export <export-id> --force
|
|
397
|
+
```
|
|
398
|
+
|
|
399
|
+
#### Segments (NEW in v1.3)
|
|
400
|
+
|
|
401
|
+
```bash
|
|
402
|
+
# List all segments
|
|
403
|
+
cakemail segments list <list-id>
|
|
404
|
+
|
|
405
|
+
# Get segment details
|
|
406
|
+
cakemail segments get <list-id> <segment-id>
|
|
407
|
+
|
|
408
|
+
# Create a segment
|
|
409
|
+
cakemail segments create <list-id> -n "Active Users" -c '{"conditions":[...]}'
|
|
410
|
+
|
|
411
|
+
# Update segment
|
|
412
|
+
cakemail segments update <list-id> <segment-id> -n "New Name"
|
|
413
|
+
|
|
414
|
+
# Delete segment
|
|
415
|
+
cakemail segments delete <list-id> <segment-id> --force
|
|
416
|
+
|
|
417
|
+
# List contacts in segment
|
|
418
|
+
cakemail segments contacts <list-id> <segment-id>
|
|
419
|
+
```
|
|
420
|
+
|
|
421
|
+
#### Custom Attributes (NEW in v1.3)
|
|
422
|
+
|
|
423
|
+
```bash
|
|
424
|
+
# List all custom attributes
|
|
425
|
+
cakemail attributes list <list-id>
|
|
426
|
+
|
|
427
|
+
# Get attribute details
|
|
428
|
+
cakemail attributes get <list-id> <attribute-name>
|
|
429
|
+
|
|
430
|
+
# Create custom attribute
|
|
431
|
+
cakemail attributes create <list-id> -n "company" -t text
|
|
432
|
+
cakemail attributes create <list-id> -n "age" -t number
|
|
433
|
+
cakemail attributes create <list-id> -n "subscribed_date" -t date
|
|
434
|
+
cakemail attributes create <list-id> -n "active" -t boolean
|
|
435
|
+
|
|
436
|
+
# Delete attribute
|
|
437
|
+
cakemail attributes delete <list-id> <attribute-name> --force
|
|
438
|
+
```
|
|
439
|
+
|
|
440
|
+
#### Suppression List (NEW in v1.3)
|
|
441
|
+
|
|
442
|
+
```bash
|
|
443
|
+
# List suppressed emails
|
|
444
|
+
cakemail suppressed list
|
|
445
|
+
|
|
446
|
+
# Add to suppression list
|
|
447
|
+
cakemail suppressed add bounced@example.com
|
|
448
|
+
|
|
449
|
+
# Remove from suppression list
|
|
450
|
+
cakemail suppressed delete recovered@example.com --force
|
|
451
|
+
|
|
452
|
+
# Export suppressed emails
|
|
453
|
+
cakemail suppressed export
|
|
454
|
+
cakemail suppressed exports
|
|
455
|
+
cakemail suppressed export-get <export-id>
|
|
456
|
+
cakemail suppressed export-download <export-id>
|
|
457
|
+
```
|
|
458
|
+
|
|
459
|
+
#### Contact Import/Export & Tagging (NEW in v1.3)
|
|
460
|
+
|
|
461
|
+
```bash
|
|
462
|
+
# Import contacts from file (TODO: Not yet implemented - requires CSV/JSON parser)
|
|
463
|
+
|
|
464
|
+
# Export contacts
|
|
465
|
+
cakemail contacts export <list-id> --status subscribed --format csv
|
|
466
|
+
cakemail contacts exports <list-id>
|
|
467
|
+
cakemail contacts export-get <list-id> <export-id>
|
|
468
|
+
cakemail contacts export-download <list-id> <export-id>
|
|
469
|
+
cakemail contacts export-delete <list-id> <export-id> --force
|
|
470
|
+
|
|
471
|
+
# Tag single contact
|
|
472
|
+
cakemail contacts tag <list-id> <contact-id> -t "vip,premium"
|
|
473
|
+
|
|
474
|
+
# Untag single contact
|
|
475
|
+
cakemail contacts untag <list-id> <contact-id> -t "trial"
|
|
476
|
+
|
|
477
|
+
# Tag multiple contacts
|
|
478
|
+
cakemail contacts tag-bulk <list-id> -c "1,2,3,4,5" -t "segment-a,active"
|
|
479
|
+
|
|
480
|
+
# Untag multiple contacts
|
|
481
|
+
cakemail contacts untag-bulk <list-id> -c "1,2,3,4,5" -t "old-tag"
|
|
482
|
+
```
|
|
483
|
+
|
|
484
|
+
#### Extended List Operations (NEW in v1.3)
|
|
485
|
+
|
|
486
|
+
```bash
|
|
487
|
+
# Update list
|
|
488
|
+
cakemail lists update <id> -n "New Name" -l en_US
|
|
489
|
+
|
|
490
|
+
# Archive list
|
|
491
|
+
cakemail lists archive <id>
|
|
492
|
+
|
|
493
|
+
# Accept list policy
|
|
494
|
+
cakemail lists accept-policy <id>
|
|
495
|
+
|
|
496
|
+
# Manage subscription forms
|
|
497
|
+
cakemail lists forms <id>
|
|
498
|
+
cakemail lists form-create <id> -d "example.com" -n "Signup Form"
|
|
499
|
+
cakemail lists form-delete <list-id> <form-id> --force
|
|
500
|
+
```
|
|
501
|
+
|
|
502
|
+
#### Extended Email API (NEW in v1.3)
|
|
503
|
+
|
|
504
|
+
```bash
|
|
505
|
+
# View Email API logs
|
|
506
|
+
cakemail emails logs --from 2025-01-01 --to 2025-12-31
|
|
507
|
+
cakemail emails logs --tag newsletter --status delivered
|
|
508
|
+
|
|
509
|
+
# List all email tags
|
|
510
|
+
cakemail emails tags
|
|
511
|
+
```
|
|
512
|
+
|
|
373
513
|
## Examples
|
|
374
514
|
|
|
375
515
|
```bash
|
package/dist/cli.js
CHANGED
|
@@ -10,13 +10,17 @@ import { createSendersCommand } from './commands/senders.js';
|
|
|
10
10
|
import { createWebhooksCommand } from './commands/webhooks.js';
|
|
11
11
|
import { createEmailsCommand } from './commands/emails.js';
|
|
12
12
|
import { createTemplatesCommand } from './commands/templates.js';
|
|
13
|
+
import { createReportsCommand } from './commands/reports.js';
|
|
14
|
+
import { createSegmentsCommand } from './commands/segments.js';
|
|
15
|
+
import { createAttributesCommand } from './commands/attributes.js';
|
|
16
|
+
import { createSuppressedCommand } from './commands/suppressed.js';
|
|
13
17
|
import chalk from 'chalk';
|
|
14
18
|
async function main() {
|
|
15
19
|
const program = new Command();
|
|
16
20
|
program
|
|
17
21
|
.name('cakemail')
|
|
18
22
|
.description('Official Cakemail CLI - Command-line interface for the Cakemail API')
|
|
19
|
-
.version('1.
|
|
23
|
+
.version('1.3.0')
|
|
20
24
|
.option('-f, --format <format>', 'Output format (json|table|compact)')
|
|
21
25
|
.option('--access-token <token>', 'Cakemail access token (overrides env)')
|
|
22
26
|
.option('--email <email>', 'Cakemail account email (overrides env)')
|
|
@@ -47,6 +51,10 @@ async function main() {
|
|
|
47
51
|
program.addCommand(createWebhooksCommand(client, formatter));
|
|
48
52
|
program.addCommand(createEmailsCommand(client, formatter));
|
|
49
53
|
program.addCommand(createTemplatesCommand(client, formatter));
|
|
54
|
+
program.addCommand(createReportsCommand(client, formatter));
|
|
55
|
+
program.addCommand(createSegmentsCommand(client, formatter));
|
|
56
|
+
program.addCommand(createAttributesCommand(client, formatter));
|
|
57
|
+
program.addCommand(createSuppressedCommand(client, formatter));
|
|
50
58
|
// Parse
|
|
51
59
|
await program.parseAsync(process.argv);
|
|
52
60
|
}
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAgB,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAE9B,OAAO;SACJ,IAAI,CAAC,UAAU,CAAC;SAChB,WAAW,CAAC,qEAAqE,CAAC;SAClF,OAAO,CAAC,OAAO,CAAC;SAChB,MAAM,CAAC,uBAAuB,EAAE,oCAAoC,CAAC;SACrE,MAAM,CAAC,wBAAwB,EAAE,uCAAuC,CAAC;SACzE,MAAM,CAAC,iBAAiB,EAAE,wCAAwC,CAAC;SACnE,MAAM,CAAC,uBAAuB,EAAE,2CAA2C,CAAC,CAAC;IAEhF,IAAI,CAAC;QACH,0DAA0D;QAC1D,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAEhC,0DAA0D;QAC1D,gEAAgE;QAChE,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,GAAG,EAAE;YACzC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;YAC5B,mCAAmC;YACnC,IAAI,IAAI,CAAC,WAAW;gBAAE,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YAC5D,IAAI,IAAI,CAAC,KAAK;gBAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YAC1C,IAAI,IAAI,CAAC,QAAQ;gBAAE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAEnD,yCAAyC;YACzC,OAAQ,IAAI,CAAC,MAAuB,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC;QACxE,CAAC,CAAC,CAAC;QAEH,eAAe;QACf,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QAC9D,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QAC7D,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QAC5D,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QAC7D,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
import { CakemailClient } from '../client.js';
|
|
3
|
+
import { OutputFormatter } from '../utils/output.js';
|
|
4
|
+
export declare function createAttributesCommand(client: CakemailClient, formatter: OutputFormatter): Command;
|
|
5
|
+
//# sourceMappingURL=attributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../src/commands/attributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,GAAG,OAAO,CAgGnG"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
export function createAttributesCommand(client, formatter) {
|
|
4
|
+
const attributes = new Command('attributes')
|
|
5
|
+
.description('Manage custom attributes (custom fields)');
|
|
6
|
+
// List attributes
|
|
7
|
+
attributes
|
|
8
|
+
.command('list <list-id>')
|
|
9
|
+
.description('List all custom attributes for a list')
|
|
10
|
+
.action(async (listId) => {
|
|
11
|
+
const spinner = ora('Fetching custom attributes...').start();
|
|
12
|
+
try {
|
|
13
|
+
const data = await client.sdk.customAttributeService.listCustomAttributes({
|
|
14
|
+
listId: parseInt(listId)
|
|
15
|
+
});
|
|
16
|
+
spinner.stop();
|
|
17
|
+
formatter.output(data);
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
spinner.stop();
|
|
21
|
+
formatter.error(error.message);
|
|
22
|
+
process.exit(1);
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
// Get attribute
|
|
26
|
+
attributes
|
|
27
|
+
.command('get <list-id> <name>')
|
|
28
|
+
.description('Get custom attribute details')
|
|
29
|
+
.action(async (listId, name) => {
|
|
30
|
+
const spinner = ora(`Fetching attribute ${name}...`).start();
|
|
31
|
+
try {
|
|
32
|
+
const data = await client.sdk.customAttributeService.getCustomAttribute({
|
|
33
|
+
listId: parseInt(listId),
|
|
34
|
+
name
|
|
35
|
+
});
|
|
36
|
+
spinner.stop();
|
|
37
|
+
formatter.output(data);
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
spinner.stop();
|
|
41
|
+
formatter.error(error.message);
|
|
42
|
+
process.exit(1);
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
// Create attribute
|
|
46
|
+
attributes
|
|
47
|
+
.command('create <list-id>')
|
|
48
|
+
.description('Create a new custom attribute')
|
|
49
|
+
.requiredOption('-n, --name <name>', 'Attribute name')
|
|
50
|
+
.requiredOption('-t, --type <type>', 'Attribute type (text, number, date, boolean)')
|
|
51
|
+
.action(async (listId, options) => {
|
|
52
|
+
const spinner = ora('Creating custom attribute...').start();
|
|
53
|
+
try {
|
|
54
|
+
const data = await client.sdk.customAttributeService.createCustomAttribute({
|
|
55
|
+
listId: parseInt(listId),
|
|
56
|
+
requestBody: {
|
|
57
|
+
name: options.name,
|
|
58
|
+
type: options.type
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
spinner.stop();
|
|
62
|
+
formatter.success(`Custom attribute created: ${options.name}`);
|
|
63
|
+
formatter.output(data);
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
spinner.stop();
|
|
67
|
+
formatter.error(error.message);
|
|
68
|
+
process.exit(1);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
// Delete attribute
|
|
72
|
+
attributes
|
|
73
|
+
.command('delete <list-id> <name>')
|
|
74
|
+
.description('Delete a custom attribute')
|
|
75
|
+
.option('-f, --force', 'Skip confirmation')
|
|
76
|
+
.action(async (listId, name, options) => {
|
|
77
|
+
if (!options.force) {
|
|
78
|
+
formatter.info('Use --force to confirm deletion');
|
|
79
|
+
process.exit(1);
|
|
80
|
+
}
|
|
81
|
+
const spinner = ora(`Deleting attribute ${name}...`).start();
|
|
82
|
+
try {
|
|
83
|
+
await client.sdk.customAttributeService.deleteCustomAttribute({
|
|
84
|
+
listId: parseInt(listId),
|
|
85
|
+
name
|
|
86
|
+
});
|
|
87
|
+
spinner.stop();
|
|
88
|
+
formatter.success(`Attribute ${name} deleted`);
|
|
89
|
+
}
|
|
90
|
+
catch (error) {
|
|
91
|
+
spinner.stop();
|
|
92
|
+
formatter.error(error.message);
|
|
93
|
+
process.exit(1);
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
return attributes;
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=attributes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attributes.js","sourceRoot":"","sources":["../../src/commands/attributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,MAAM,UAAU,uBAAuB,CAAC,MAAsB,EAAE,SAA0B;IACxF,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,YAAY,CAAC;SACzC,WAAW,CAAC,0CAA0C,CAAC,CAAC;IAE3D,kBAAkB;IAClB,UAAU;SACP,OAAO,CAAC,gBAAgB,CAAC;SACzB,WAAW,CAAC,uCAAuC,CAAC;SACpD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACvB,MAAM,OAAO,GAAG,GAAG,CAAC,+BAA+B,CAAC,CAAC,KAAK,EAAE,CAAC;QAC7D,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,oBAAoB,CAAC;gBACxE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC;aACzB,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,gBAAgB;IAChB,UAAU;SACP,OAAO,CAAC,sBAAsB,CAAC;SAC/B,WAAW,CAAC,8BAA8B,CAAC;SAC3C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;QAC7B,MAAM,OAAO,GAAG,GAAG,CAAC,sBAAsB,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;QAC7D,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,kBAAkB,CAAC;gBACtE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC;gBACxB,IAAI;aACL,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,mBAAmB;IACnB,UAAU;SACP,OAAO,CAAC,kBAAkB,CAAC;SAC3B,WAAW,CAAC,+BAA+B,CAAC;SAC5C,cAAc,CAAC,mBAAmB,EAAE,gBAAgB,CAAC;SACrD,cAAc,CAAC,mBAAmB,EAAE,8CAA8C,CAAC;SACnF,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;QAChC,MAAM,OAAO,GAAG,GAAG,CAAC,8BAA8B,CAAC,CAAC,KAAK,EAAE,CAAC;QAC5D,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,qBAAqB,CAAC;gBACzE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC;gBACxB,WAAW,EAAE;oBACX,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;iBACnB;aACF,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,SAAS,CAAC,OAAO,CAAC,6BAA6B,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAC/D,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,mBAAmB;IACnB,UAAU;SACP,OAAO,CAAC,yBAAyB,CAAC;SAClC,WAAW,CAAC,2BAA2B,CAAC;SACxC,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC;SAC1C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QACtC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,SAAS,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,CAAC,sBAAsB,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;QAC7D,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,qBAAqB,CAAC;gBAC5D,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC;gBACxB,IAAI;aACL,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,SAAS,CAAC,OAAO,CAAC,aAAa,IAAI,UAAU,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contacts.d.ts","sourceRoot":"","sources":["../../src/commands/contacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"contacts.d.ts","sourceRoot":"","sources":["../../src/commands/contacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAIrD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,GAAG,OAAO,CAiYjG"}
|
|
@@ -159,6 +159,233 @@ export function createContactsCommand(client, formatter) {
|
|
|
159
159
|
process.exit(1);
|
|
160
160
|
}
|
|
161
161
|
});
|
|
162
|
+
// Import contacts - TODO: Implement CSV/JSON parsing
|
|
163
|
+
// The SDK expects structured ImportContactData[], not raw file content
|
|
164
|
+
// Need to add CSV/JSON parser and convert to proper format
|
|
165
|
+
// contacts
|
|
166
|
+
// .command('import <list-id>')
|
|
167
|
+
// .description('Import contacts from a file')
|
|
168
|
+
// .requiredOption('-f, --file <path>', 'CSV or JSON file path')
|
|
169
|
+
// .option('--update-existing', 'Update existing contacts')
|
|
170
|
+
// .action(async (listId, options) => {
|
|
171
|
+
// // TODO: Parse CSV/JSON file and convert to ImportContactData[]
|
|
172
|
+
// });
|
|
173
|
+
// Export contacts
|
|
174
|
+
contacts
|
|
175
|
+
.command('export <list-id>')
|
|
176
|
+
.description('Create a contacts export')
|
|
177
|
+
.option('--status <status>', 'Filter by status (subscribed, unsubscribed, etc.)')
|
|
178
|
+
.action(async (listId, options) => {
|
|
179
|
+
const spinner = ora('Creating contacts export...').start();
|
|
180
|
+
try {
|
|
181
|
+
const params = {
|
|
182
|
+
listId: parseInt(listId)
|
|
183
|
+
};
|
|
184
|
+
if (options.status)
|
|
185
|
+
params.filter = `status==${options.status}`;
|
|
186
|
+
const data = await client.sdk.contactService.exportContacts(params);
|
|
187
|
+
spinner.stop();
|
|
188
|
+
formatter.success('Contacts export created');
|
|
189
|
+
formatter.output(data);
|
|
190
|
+
}
|
|
191
|
+
catch (error) {
|
|
192
|
+
spinner.stop();
|
|
193
|
+
formatter.error(error.message);
|
|
194
|
+
process.exit(1);
|
|
195
|
+
}
|
|
196
|
+
});
|
|
197
|
+
// List exports
|
|
198
|
+
contacts
|
|
199
|
+
.command('exports <list-id>')
|
|
200
|
+
.description('List contact exports for a list')
|
|
201
|
+
.option('-l, --limit <number>', 'Limit number of results')
|
|
202
|
+
.option('-p, --page <number>', 'Page number')
|
|
203
|
+
.action(async (listId, options) => {
|
|
204
|
+
const spinner = ora('Fetching exports...').start();
|
|
205
|
+
try {
|
|
206
|
+
const params = {
|
|
207
|
+
listId: parseInt(listId)
|
|
208
|
+
};
|
|
209
|
+
if (options.limit)
|
|
210
|
+
params.per_page = parseInt(options.limit);
|
|
211
|
+
if (options.page)
|
|
212
|
+
params.page = parseInt(options.page);
|
|
213
|
+
const data = await client.sdk.contactService.listContactsExports(params);
|
|
214
|
+
spinner.stop();
|
|
215
|
+
formatter.output(data);
|
|
216
|
+
}
|
|
217
|
+
catch (error) {
|
|
218
|
+
spinner.stop();
|
|
219
|
+
formatter.error(error.message);
|
|
220
|
+
process.exit(1);
|
|
221
|
+
}
|
|
222
|
+
});
|
|
223
|
+
// Get export
|
|
224
|
+
contacts
|
|
225
|
+
.command('export-get <list-id> <export-id>')
|
|
226
|
+
.description('Get a contacts export status')
|
|
227
|
+
.action(async (listId, exportId) => {
|
|
228
|
+
const spinner = ora(`Fetching export ${exportId}...`).start();
|
|
229
|
+
try {
|
|
230
|
+
const data = await client.sdk.contactService.getContactsExport({
|
|
231
|
+
listId: parseInt(listId),
|
|
232
|
+
exportId: exportId
|
|
233
|
+
});
|
|
234
|
+
spinner.stop();
|
|
235
|
+
formatter.output(data);
|
|
236
|
+
}
|
|
237
|
+
catch (error) {
|
|
238
|
+
spinner.stop();
|
|
239
|
+
formatter.error(error.message);
|
|
240
|
+
process.exit(1);
|
|
241
|
+
}
|
|
242
|
+
});
|
|
243
|
+
// Download export
|
|
244
|
+
contacts
|
|
245
|
+
.command('export-download <list-id> <export-id>')
|
|
246
|
+
.description('Download a contacts export')
|
|
247
|
+
.action(async (listId, exportId) => {
|
|
248
|
+
const spinner = ora(`Downloading export ${exportId}...`).start();
|
|
249
|
+
try {
|
|
250
|
+
const data = await client.sdk.contactService.downloadContactsExport({
|
|
251
|
+
listId: parseInt(listId),
|
|
252
|
+
exportId: exportId
|
|
253
|
+
});
|
|
254
|
+
spinner.stop();
|
|
255
|
+
formatter.success('Export downloaded');
|
|
256
|
+
formatter.output(data);
|
|
257
|
+
}
|
|
258
|
+
catch (error) {
|
|
259
|
+
spinner.stop();
|
|
260
|
+
formatter.error(error.message);
|
|
261
|
+
process.exit(1);
|
|
262
|
+
}
|
|
263
|
+
});
|
|
264
|
+
// Delete export
|
|
265
|
+
contacts
|
|
266
|
+
.command('export-delete <list-id> <export-id>')
|
|
267
|
+
.description('Delete a contacts export')
|
|
268
|
+
.option('-f, --force', 'Skip confirmation')
|
|
269
|
+
.action(async (listId, exportId, options) => {
|
|
270
|
+
if (!options.force) {
|
|
271
|
+
formatter.info('Use --force to confirm deletion');
|
|
272
|
+
process.exit(1);
|
|
273
|
+
}
|
|
274
|
+
const spinner = ora(`Deleting export ${exportId}...`).start();
|
|
275
|
+
try {
|
|
276
|
+
await client.sdk.contactService.deleteContactsExport({
|
|
277
|
+
listId: parseInt(listId),
|
|
278
|
+
exportId: exportId
|
|
279
|
+
});
|
|
280
|
+
spinner.stop();
|
|
281
|
+
formatter.success(`Export ${exportId} deleted`);
|
|
282
|
+
}
|
|
283
|
+
catch (error) {
|
|
284
|
+
spinner.stop();
|
|
285
|
+
formatter.error(error.message);
|
|
286
|
+
process.exit(1);
|
|
287
|
+
}
|
|
288
|
+
});
|
|
289
|
+
// Tag single contact
|
|
290
|
+
contacts
|
|
291
|
+
.command('tag <list-id> <contact-id>')
|
|
292
|
+
.description('Tag a contact')
|
|
293
|
+
.requiredOption('-t, --tags <tags>', 'Comma-separated tags')
|
|
294
|
+
.action(async (listId, contactId, options) => {
|
|
295
|
+
const spinner = ora(`Tagging contact ${contactId}...`).start();
|
|
296
|
+
try {
|
|
297
|
+
const tags = options.tags.split(',').map((t) => t.trim());
|
|
298
|
+
await client.sdk.contactService.tagContact({
|
|
299
|
+
listId: parseInt(listId),
|
|
300
|
+
contactId: parseInt(contactId),
|
|
301
|
+
requestBody: { tags }
|
|
302
|
+
});
|
|
303
|
+
spinner.stop();
|
|
304
|
+
formatter.success(`Contact ${contactId} tagged`);
|
|
305
|
+
}
|
|
306
|
+
catch (error) {
|
|
307
|
+
spinner.stop();
|
|
308
|
+
formatter.error(error.message);
|
|
309
|
+
process.exit(1);
|
|
310
|
+
}
|
|
311
|
+
});
|
|
312
|
+
// Untag single contact
|
|
313
|
+
contacts
|
|
314
|
+
.command('untag <list-id> <contact-id>')
|
|
315
|
+
.description('Remove tags from a contact')
|
|
316
|
+
.requiredOption('-t, --tags <tags>', 'Comma-separated tags to remove')
|
|
317
|
+
.action(async (listId, contactId, options) => {
|
|
318
|
+
const spinner = ora(`Untagging contact ${contactId}...`).start();
|
|
319
|
+
try {
|
|
320
|
+
const tags = options.tags.split(',').map((t) => t.trim());
|
|
321
|
+
await client.sdk.contactService.untagContact({
|
|
322
|
+
listId: parseInt(listId),
|
|
323
|
+
contactId: parseInt(contactId),
|
|
324
|
+
requestBody: { tags }
|
|
325
|
+
});
|
|
326
|
+
spinner.stop();
|
|
327
|
+
formatter.success(`Tags removed from contact ${contactId}`);
|
|
328
|
+
}
|
|
329
|
+
catch (error) {
|
|
330
|
+
spinner.stop();
|
|
331
|
+
formatter.error(error.message);
|
|
332
|
+
process.exit(1);
|
|
333
|
+
}
|
|
334
|
+
});
|
|
335
|
+
// Tag multiple contacts
|
|
336
|
+
contacts
|
|
337
|
+
.command('tag-bulk <list-id>')
|
|
338
|
+
.description('Tag multiple contacts')
|
|
339
|
+
.requiredOption('-c, --contacts <ids>', 'Comma-separated contact IDs')
|
|
340
|
+
.requiredOption('-t, --tags <tags>', 'Comma-separated tags')
|
|
341
|
+
.action(async (listId, options) => {
|
|
342
|
+
const spinner = ora('Tagging contacts...').start();
|
|
343
|
+
try {
|
|
344
|
+
const contactIds = options.contacts.split(',').map((id) => parseInt(id.trim()));
|
|
345
|
+
const tags = options.tags.split(',').map((t) => t.trim());
|
|
346
|
+
await client.sdk.contactService.tagMultipleContacts({
|
|
347
|
+
listId: parseInt(listId),
|
|
348
|
+
requestBody: {
|
|
349
|
+
contact_ids: contactIds,
|
|
350
|
+
tags
|
|
351
|
+
}
|
|
352
|
+
});
|
|
353
|
+
spinner.stop();
|
|
354
|
+
formatter.success(`${contactIds.length} contacts tagged`);
|
|
355
|
+
}
|
|
356
|
+
catch (error) {
|
|
357
|
+
spinner.stop();
|
|
358
|
+
formatter.error(error.message);
|
|
359
|
+
process.exit(1);
|
|
360
|
+
}
|
|
361
|
+
});
|
|
362
|
+
// Untag multiple contacts
|
|
363
|
+
contacts
|
|
364
|
+
.command('untag-bulk <list-id>')
|
|
365
|
+
.description('Remove tags from multiple contacts')
|
|
366
|
+
.requiredOption('-c, --contacts <ids>', 'Comma-separated contact IDs')
|
|
367
|
+
.requiredOption('-t, --tags <tags>', 'Comma-separated tags to remove')
|
|
368
|
+
.action(async (listId, options) => {
|
|
369
|
+
const spinner = ora('Untagging contacts...').start();
|
|
370
|
+
try {
|
|
371
|
+
const contactIds = options.contacts.split(',').map((id) => parseInt(id.trim()));
|
|
372
|
+
const tags = options.tags.split(',').map((t) => t.trim());
|
|
373
|
+
await client.sdk.contactService.untagMultipleContacts({
|
|
374
|
+
listId: parseInt(listId),
|
|
375
|
+
requestBody: {
|
|
376
|
+
contact_ids: contactIds,
|
|
377
|
+
tags
|
|
378
|
+
}
|
|
379
|
+
});
|
|
380
|
+
spinner.stop();
|
|
381
|
+
formatter.success(`Tags removed from ${contactIds.length} contacts`);
|
|
382
|
+
}
|
|
383
|
+
catch (error) {
|
|
384
|
+
spinner.stop();
|
|
385
|
+
formatter.error(error.message);
|
|
386
|
+
process.exit(1);
|
|
387
|
+
}
|
|
388
|
+
});
|
|
162
389
|
return contacts;
|
|
163
390
|
}
|
|
164
391
|
//# sourceMappingURL=contacts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contacts.js","sourceRoot":"","sources":["../../src/commands/contacts.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contacts.js","sourceRoot":"","sources":["../../src/commands/contacts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emails.d.ts","sourceRoot":"","sources":["../../src/commands/emails.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAIrD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"emails.d.ts","sourceRoot":"","sources":["../../src/commands/emails.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAIrD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,GAAG,OAAO,CA8L/F"}
|
package/dist/commands/emails.js
CHANGED
|
@@ -135,6 +135,59 @@ export function createEmailsCommand(client, formatter) {
|
|
|
135
135
|
process.exit(1);
|
|
136
136
|
}
|
|
137
137
|
});
|
|
138
|
+
// Email API logs
|
|
139
|
+
emails
|
|
140
|
+
.command('logs')
|
|
141
|
+
.description('Get Email API activity logs')
|
|
142
|
+
.option('--from <date>', 'Start date (YYYY-MM-DD)')
|
|
143
|
+
.option('--to <date>', 'End date (YYYY-MM-DD)')
|
|
144
|
+
.option('--tag <tag>', 'Filter by tag')
|
|
145
|
+
.option('--status <status>', 'Filter by status (delivered, bounced, etc.)')
|
|
146
|
+
.option('-l, --limit <number>', 'Limit number of results')
|
|
147
|
+
.option('-p, --page <number>', 'Page number')
|
|
148
|
+
.action(async (options) => {
|
|
149
|
+
const spinner = ora('Fetching Email API logs...').start();
|
|
150
|
+
try {
|
|
151
|
+
const params = {};
|
|
152
|
+
if (options.from)
|
|
153
|
+
params.from = options.from;
|
|
154
|
+
if (options.to)
|
|
155
|
+
params.to = options.to;
|
|
156
|
+
if (options.tag)
|
|
157
|
+
params.tag = options.tag;
|
|
158
|
+
if (options.status)
|
|
159
|
+
params.status = options.status;
|
|
160
|
+
if (options.limit)
|
|
161
|
+
params.perPage = parseInt(options.limit);
|
|
162
|
+
if (options.page)
|
|
163
|
+
params.page = parseInt(options.page);
|
|
164
|
+
const data = await client.sdk.emailApiService.getEmailApiLogs(params);
|
|
165
|
+
spinner.stop();
|
|
166
|
+
formatter.output(data);
|
|
167
|
+
}
|
|
168
|
+
catch (error) {
|
|
169
|
+
spinner.stop();
|
|
170
|
+
formatter.error(error.message);
|
|
171
|
+
process.exit(1);
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
// List email tags
|
|
175
|
+
emails
|
|
176
|
+
.command('tags')
|
|
177
|
+
.description('List all email tags')
|
|
178
|
+
.action(async () => {
|
|
179
|
+
const spinner = ora('Fetching email tags...').start();
|
|
180
|
+
try {
|
|
181
|
+
const data = await client.sdk.emailApiService.listEmailTags({});
|
|
182
|
+
spinner.stop();
|
|
183
|
+
formatter.output(data);
|
|
184
|
+
}
|
|
185
|
+
catch (error) {
|
|
186
|
+
spinner.stop();
|
|
187
|
+
formatter.error(error.message);
|
|
188
|
+
process.exit(1);
|
|
189
|
+
}
|
|
190
|
+
});
|
|
138
191
|
return emails;
|
|
139
192
|
}
|
|
140
193
|
//# sourceMappingURL=emails.js.map
|