@inkbox/cli 0.4.4 → 0.4.5
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 +12 -8
- package/dist/commands/text.js +80 -15
- package/dist/commands/text.js.map +1 -1
- package/dist/index.js +1 -1
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -181,16 +181,19 @@ Text message (SMS/MMS) operations, scoped to an identity. Requires `-i <handle>`
|
|
|
181
181
|
**Outbound SMS rules:**
|
|
182
182
|
|
|
183
183
|
- Allowed only from **local** numbers (not toll-free).
|
|
184
|
-
- **
|
|
184
|
+
- **100 recipient sends per phone number per rolling 24h** — a 3-recipient group message counts as 3 recipient sends. A single accepted send may push usage past the cap; the next capped send returns `429 sender_rate_limited`.
|
|
185
185
|
- A freshly provisioned local number needs **~10-15 minutes** for 10DLC carrier propagation. Check `inkbox number get <id>`: send is gated until `smsStatus` reaches `ready`.
|
|
186
186
|
- Recipients must opt in by texting **`START`** to any number in your organization. Unknown recipients fail with `403 recipient_not_opted_in`; opt-outs (`STOP`) return `403 recipient_opted_out`.
|
|
187
|
+
- **Beta:** Group MMS and conversation sends are beta. Some carriers may reject group chats or MMS from 10DLC numbers even when the sender is ready and recipients have opted in.
|
|
187
188
|
|
|
188
|
-
|
|
189
|
+
Customer-managed 10DLC brands/campaigns lift the default per-number cap to the carrier-assigned tier. Toll-free SMS sending is still coming soon.
|
|
189
190
|
|
|
190
191
|
```bash
|
|
191
|
-
inkbox text send -i <handle> # Send an outbound SMS
|
|
192
|
-
--to <e164>
|
|
193
|
-
--
|
|
192
|
+
inkbox text send -i <handle> # Send an outbound SMS/MMS
|
|
193
|
+
--to <e164[,e164...]> # One recipient or a comma-separated group
|
|
194
|
+
--conversation-id <uuid> # Reply into an existing conversation instead of --to
|
|
195
|
+
--text <body> # Message body
|
|
196
|
+
--media-url <url> # MMS media URL; repeat for multiple
|
|
194
197
|
|
|
195
198
|
inkbox text list -i <handle> # List text messages
|
|
196
199
|
--limit <n> # Max results (default: 50)
|
|
@@ -202,8 +205,9 @@ inkbox text get <text-id> -i <handle> # Get a single text message
|
|
|
202
205
|
inkbox text conversations -i <handle> # List conversation summaries
|
|
203
206
|
--limit <n> # Max results (default: 50)
|
|
204
207
|
--offset <n> # Pagination offset (default: 0)
|
|
208
|
+
--include-groups # Include group conversations
|
|
205
209
|
|
|
206
|
-
inkbox text conversation <
|
|
210
|
+
inkbox text conversation <conversation-key> -i <handle> # Remote number or conversation UUID
|
|
207
211
|
--limit <n> # Max results (default: 50)
|
|
208
212
|
--offset <n> # Pagination offset (default: 0)
|
|
209
213
|
|
|
@@ -211,8 +215,8 @@ inkbox text search -i <handle> # Search text messages
|
|
|
211
215
|
-q, --query <query> # Search query (required)
|
|
212
216
|
--limit <n> # Max results (default: 50)
|
|
213
217
|
|
|
214
|
-
inkbox text mark-read <text-id> -i <handle>
|
|
215
|
-
inkbox text mark-conversation-read <
|
|
218
|
+
inkbox text mark-read <text-id> -i <handle> # Mark a text as read
|
|
219
|
+
inkbox text mark-conversation-read <conversation-key> -i <handle> # Mark conversation as read
|
|
216
220
|
```
|
|
217
221
|
|
|
218
222
|
### vault
|
package/dist/commands/text.js
CHANGED
|
@@ -1,29 +1,75 @@
|
|
|
1
1
|
import { createClient, getGlobalOpts } from "../client.js";
|
|
2
2
|
import { output } from "../output.js";
|
|
3
3
|
import { withErrorHandler } from "../errors.js";
|
|
4
|
+
function parseList(value) {
|
|
5
|
+
return value
|
|
6
|
+
.split(",")
|
|
7
|
+
.map((item) => item.trim())
|
|
8
|
+
.filter((item) => item.length > 0);
|
|
9
|
+
}
|
|
10
|
+
function collect(value, previous) {
|
|
11
|
+
previous.push(value);
|
|
12
|
+
return previous;
|
|
13
|
+
}
|
|
14
|
+
function formatPhoneList(value) {
|
|
15
|
+
return value?.join(", ");
|
|
16
|
+
}
|
|
17
|
+
export function buildTextSendOptions(cmdOpts) {
|
|
18
|
+
const recipients = cmdOpts.to ? parseList(cmdOpts.to) : [];
|
|
19
|
+
const mediaUrls = cmdOpts.mediaUrl ?? [];
|
|
20
|
+
if (recipients.length > 0 && cmdOpts.conversationId) {
|
|
21
|
+
return { error: "Pass either --to or --conversation-id, not both." };
|
|
22
|
+
}
|
|
23
|
+
if (recipients.length === 0 && !cmdOpts.conversationId) {
|
|
24
|
+
return { error: "Pass --to or --conversation-id." };
|
|
25
|
+
}
|
|
26
|
+
if (!cmdOpts.text && mediaUrls.length === 0) {
|
|
27
|
+
return { error: "Pass --text, --media-url, or both." };
|
|
28
|
+
}
|
|
29
|
+
const sendOptions = {};
|
|
30
|
+
if (recipients.length > 0) {
|
|
31
|
+
sendOptions.to = recipients.length === 1 ? recipients[0] : recipients;
|
|
32
|
+
}
|
|
33
|
+
if (cmdOpts.conversationId) {
|
|
34
|
+
sendOptions.conversationId = cmdOpts.conversationId;
|
|
35
|
+
}
|
|
36
|
+
if (cmdOpts.text) {
|
|
37
|
+
sendOptions.text = cmdOpts.text;
|
|
38
|
+
}
|
|
39
|
+
if (mediaUrls.length > 0) {
|
|
40
|
+
sendOptions.mediaUrls = mediaUrls;
|
|
41
|
+
}
|
|
42
|
+
return { sendOptions };
|
|
43
|
+
}
|
|
4
44
|
export function registerTextCommands(program) {
|
|
5
45
|
const text = program
|
|
6
46
|
.command("text")
|
|
7
47
|
.description("Text message (SMS/MMS) operations (identity-scoped)");
|
|
8
48
|
text
|
|
9
49
|
.command("send")
|
|
10
|
-
.description("Send an outbound SMS from this identity's phone number")
|
|
50
|
+
.description("Send an outbound SMS/MMS from this identity's phone number")
|
|
11
51
|
.requiredOption("-i, --identity <handle>", "Agent identity handle")
|
|
12
|
-
.
|
|
13
|
-
.
|
|
52
|
+
.option("--to <numbers>", "Comma-separated E.164 destination number(s)")
|
|
53
|
+
.option("--conversation-id <id>", "Existing conversation UUID to reply into")
|
|
54
|
+
.option("--text <text>", "Message body")
|
|
55
|
+
.option("--media-url <url>", "MMS media URL; repeat for multiple", collect, [])
|
|
14
56
|
.action(withErrorHandler(async function (cmdOpts) {
|
|
57
|
+
const sendResult = buildTextSendOptions(cmdOpts);
|
|
58
|
+
if ("error" in sendResult) {
|
|
59
|
+
console.error(sendResult.error);
|
|
60
|
+
process.exit(1);
|
|
61
|
+
}
|
|
15
62
|
const opts = getGlobalOpts(this);
|
|
16
63
|
const inkbox = createClient(opts);
|
|
17
64
|
const identity = await inkbox.getIdentity(cmdOpts.identity);
|
|
18
|
-
const msg = await identity.sendText(
|
|
19
|
-
to: cmdOpts.to,
|
|
20
|
-
text: cmdOpts.text,
|
|
21
|
-
});
|
|
65
|
+
const msg = await identity.sendText(sendResult.sendOptions);
|
|
22
66
|
output({
|
|
23
67
|
id: msg.id,
|
|
24
68
|
direction: msg.direction,
|
|
25
69
|
local: msg.localPhoneNumber,
|
|
26
70
|
remote: msg.remotePhoneNumber,
|
|
71
|
+
conversationId: msg.conversationId,
|
|
72
|
+
recipients: msg.recipients?.map((r) => r.recipientPhoneNumber).join(", "),
|
|
27
73
|
text: msg.text,
|
|
28
74
|
deliveryStatus: msg.deliveryStatus,
|
|
29
75
|
createdAt: msg.createdAt,
|
|
@@ -50,6 +96,7 @@ export function registerTextCommands(program) {
|
|
|
50
96
|
columns: [
|
|
51
97
|
"id",
|
|
52
98
|
"direction",
|
|
99
|
+
"conversationId",
|
|
53
100
|
"remotePhoneNumber",
|
|
54
101
|
"type",
|
|
55
102
|
"text",
|
|
@@ -72,6 +119,9 @@ export function registerTextCommands(program) {
|
|
|
72
119
|
direction: msg.direction,
|
|
73
120
|
local: msg.localPhoneNumber,
|
|
74
121
|
remote: msg.remotePhoneNumber,
|
|
122
|
+
conversationId: msg.conversationId,
|
|
123
|
+
sender: msg.senderPhoneNumber,
|
|
124
|
+
recipients: msg.recipients?.map((r) => r.recipientPhoneNumber).join(", "),
|
|
75
125
|
type: msg.type,
|
|
76
126
|
text: msg.text,
|
|
77
127
|
isRead: msg.isRead,
|
|
@@ -85,6 +135,7 @@ export function registerTextCommands(program) {
|
|
|
85
135
|
.requiredOption("-i, --identity <handle>", "Agent identity handle")
|
|
86
136
|
.option("--limit <n>", "Max results", "50")
|
|
87
137
|
.option("--offset <n>", "Pagination offset", "0")
|
|
138
|
+
.option("--include-groups", "Include group conversations")
|
|
88
139
|
.action(withErrorHandler(async function (cmdOpts) {
|
|
89
140
|
const opts = getGlobalOpts(this);
|
|
90
141
|
const inkbox = createClient(opts);
|
|
@@ -92,11 +143,22 @@ export function registerTextCommands(program) {
|
|
|
92
143
|
const convos = await identity.listTextConversations({
|
|
93
144
|
limit: parseInt(cmdOpts.limit, 10),
|
|
94
145
|
offset: parseInt(cmdOpts.offset, 10),
|
|
146
|
+
includeGroups: !!cmdOpts.includeGroups,
|
|
95
147
|
});
|
|
96
|
-
|
|
148
|
+
const rows = opts.json
|
|
149
|
+
? convos
|
|
150
|
+
: convos.map((c) => ({
|
|
151
|
+
...c,
|
|
152
|
+
participants: formatPhoneList(c.participants),
|
|
153
|
+
}));
|
|
154
|
+
output(rows, {
|
|
97
155
|
json: !!opts.json,
|
|
98
156
|
columns: [
|
|
157
|
+
"id",
|
|
99
158
|
"remotePhoneNumber",
|
|
159
|
+
"participants",
|
|
160
|
+
"isGroup",
|
|
161
|
+
"latestHasMedia",
|
|
100
162
|
"latestText",
|
|
101
163
|
"latestDirection",
|
|
102
164
|
"unreadCount",
|
|
@@ -106,16 +168,16 @@ export function registerTextCommands(program) {
|
|
|
106
168
|
});
|
|
107
169
|
}));
|
|
108
170
|
text
|
|
109
|
-
.command("conversation <
|
|
171
|
+
.command("conversation <conversation-key>")
|
|
110
172
|
.description("Get messages in a conversation")
|
|
111
173
|
.requiredOption("-i, --identity <handle>", "Agent identity handle")
|
|
112
174
|
.option("--limit <n>", "Max results", "50")
|
|
113
175
|
.option("--offset <n>", "Pagination offset", "0")
|
|
114
|
-
.action(withErrorHandler(async function (
|
|
176
|
+
.action(withErrorHandler(async function (conversationKey, cmdOpts) {
|
|
115
177
|
const opts = getGlobalOpts(this);
|
|
116
178
|
const inkbox = createClient(opts);
|
|
117
179
|
const identity = await inkbox.getIdentity(cmdOpts.identity);
|
|
118
|
-
const msgs = await identity.getTextConversation(
|
|
180
|
+
const msgs = await identity.getTextConversation(conversationKey, {
|
|
119
181
|
limit: parseInt(cmdOpts.limit, 10),
|
|
120
182
|
offset: parseInt(cmdOpts.offset, 10),
|
|
121
183
|
});
|
|
@@ -124,6 +186,7 @@ export function registerTextCommands(program) {
|
|
|
124
186
|
columns: [
|
|
125
187
|
"id",
|
|
126
188
|
"direction",
|
|
189
|
+
"conversationId",
|
|
127
190
|
"remotePhoneNumber",
|
|
128
191
|
"text",
|
|
129
192
|
"type",
|
|
@@ -154,6 +217,7 @@ export function registerTextCommands(program) {
|
|
|
154
217
|
columns: [
|
|
155
218
|
"id",
|
|
156
219
|
"direction",
|
|
220
|
+
"conversationId",
|
|
157
221
|
"remotePhoneNumber",
|
|
158
222
|
"text",
|
|
159
223
|
"createdAt",
|
|
@@ -172,15 +236,16 @@ export function registerTextCommands(program) {
|
|
|
172
236
|
console.log(`Marked text ${textId} as read.`);
|
|
173
237
|
}));
|
|
174
238
|
text
|
|
175
|
-
.command("mark-conversation-read <
|
|
239
|
+
.command("mark-conversation-read <conversation-key>")
|
|
176
240
|
.description("Mark all messages in a conversation as read")
|
|
177
241
|
.requiredOption("-i, --identity <handle>", "Agent identity handle")
|
|
178
|
-
.action(withErrorHandler(async function (
|
|
242
|
+
.action(withErrorHandler(async function (conversationKey, cmdOpts) {
|
|
179
243
|
const opts = getGlobalOpts(this);
|
|
180
244
|
const inkbox = createClient(opts);
|
|
181
245
|
const identity = await inkbox.getIdentity(cmdOpts.identity);
|
|
182
|
-
const result = await identity.markTextConversationRead(
|
|
183
|
-
|
|
246
|
+
const result = await identity.markTextConversationRead(conversationKey);
|
|
247
|
+
const displayKey = result.remotePhoneNumber ?? result.conversationId ?? conversationKey;
|
|
248
|
+
console.log(`Marked ${result.updatedCount} message(s) in conversation ${displayKey} as read.`);
|
|
184
249
|
}));
|
|
185
250
|
}
|
|
186
251
|
//# sourceMappingURL=text.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/commands/text.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/commands/text.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -20,7 +20,7 @@ import { registerDomainCommands } from "./commands/domain.js";
|
|
|
20
20
|
const program = new Command()
|
|
21
21
|
.name("inkbox")
|
|
22
22
|
.description("CLI for the Inkbox API — email, phone, identities, and vault for AI agents")
|
|
23
|
-
.version("0.4.
|
|
23
|
+
.version("0.4.5")
|
|
24
24
|
.option("--api-key <key>", "Inkbox API key (or set INKBOX_API_KEY)")
|
|
25
25
|
.option("--vault-key <key>", "Vault key for decrypt operations (or set INKBOX_VAULT_KEY)")
|
|
26
26
|
.option("--base-url <url>", "Override API base URL (or set INKBOX_BASE_URL)")
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@inkbox/cli",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.5",
|
|
4
4
|
"description": "CLI for the Inkbox API",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -14,10 +14,11 @@
|
|
|
14
14
|
"scripts": {
|
|
15
15
|
"build": "tsc",
|
|
16
16
|
"dev": "tsx src/index.ts",
|
|
17
|
+
"test": "npm run build && node --test tests/*.test.mjs",
|
|
17
18
|
"prepublishOnly": "npm run build"
|
|
18
19
|
},
|
|
19
20
|
"dependencies": {
|
|
20
|
-
"@inkbox/sdk": "^0.4.
|
|
21
|
+
"@inkbox/sdk": "^0.4.5",
|
|
21
22
|
"commander": "^13.0.0"
|
|
22
23
|
},
|
|
23
24
|
"devDependencies": {
|