# 1. Send outbound iMessage
curl -X POST https://api.wirebox.sh/api/v1/imessage/messages \
-H "Authorization: Bearer $WIREBOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "+15551234567",
"text": "Hello! Your background job finished successfully."
}'
# 2. List conversation messages
curl -X GET "https://api.wirebox.sh/api/v1/imessage/messages?conversation_id=conv_01J8ABC123XYZ&limit=20" \
-H "Authorization: Bearer $WIREBOX_API_KEY"
from wirebox import Wirebox
with Wirebox() as wb:
# 1. Send outbound iMessage
res = wb.imessage.messages.send(
to="+15551234567",
text="Hello! Your background job finished successfully."
)
print("Sent message:", res.id)
# 2. List message history
history = wb.imessage.messages.list(conversation_id="conv_01J8ABC123XYZ", limit=20)
for m in history.messages:
print(f"[{m.direction}] {m.sender}: {m.text}")
import { Wirebox } from "@wirebox-sh/sdk";
const wb = new Wirebox();
// 1. Send outbound iMessage
const res = await wb.imessage.messages.send({
to: "+15551234567",
text: "Hello! Your background job finished successfully.",
});
console.log("Sent message:", res.id);
// 2. List message history
const history = await wb.imessage.messages.list({
conversation_id: "conv_01J8ABC123XYZ",
limit: 20,
});
for (const m of history.messages) {
console.log(`[${m.direction}] ${m.sender}: ${m.text}`);
}
# Send outbound iMessage
wirebox imessage send --to +15551234567 --text "Hello! Your background job finished successfully."
# List conversation messages
wirebox imessage messages conv_01J8ABC123XYZ --limit 20
{
"id": "imsg_01J8DEF456GHI",
"conversation_id": "conv_01J8ABC123XYZ",
"direction": "outbound",
"status": "sent",
"text": "Hello! Your background job finished successfully.",
"sent_at": "2026-09-17T10:30:00Z"
}
{
"messages": [
{
"id": "imsg_01J8DEF456GHI",
"conversation_id": "conv_01J8ABC123XYZ",
"direction": "inbound",
"sender": "+15551234567",
"text": "Can you check on my database migration?",
"media_url": null,
"created_at": "2026-09-17T10:29:15Z"
},
{
"id": "imsg_01J8DEF456GHJ",
"conversation_id": "conv_01J8ABC123XYZ",
"direction": "outbound",
"sender": "eva",
"text": "Hello! Your background job finished successfully.",
"media_url": null,
"created_at": "2026-09-17T10:30:00Z"
}
],
"next_cursor": null
}
iMessage
Messages
Send outbound iMessage text and media bubbles, and fetch conversation message history.
POST
/
api
/
v1
/
imessage
/
messages
# 1. Send outbound iMessage
curl -X POST https://api.wirebox.sh/api/v1/imessage/messages \
-H "Authorization: Bearer $WIREBOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "+15551234567",
"text": "Hello! Your background job finished successfully."
}'
# 2. List conversation messages
curl -X GET "https://api.wirebox.sh/api/v1/imessage/messages?conversation_id=conv_01J8ABC123XYZ&limit=20" \
-H "Authorization: Bearer $WIREBOX_API_KEY"
from wirebox import Wirebox
with Wirebox() as wb:
# 1. Send outbound iMessage
res = wb.imessage.messages.send(
to="+15551234567",
text="Hello! Your background job finished successfully."
)
print("Sent message:", res.id)
# 2. List message history
history = wb.imessage.messages.list(conversation_id="conv_01J8ABC123XYZ", limit=20)
for m in history.messages:
print(f"[{m.direction}] {m.sender}: {m.text}")
import { Wirebox } from "@wirebox-sh/sdk";
const wb = new Wirebox();
// 1. Send outbound iMessage
const res = await wb.imessage.messages.send({
to: "+15551234567",
text: "Hello! Your background job finished successfully.",
});
console.log("Sent message:", res.id);
// 2. List message history
const history = await wb.imessage.messages.list({
conversation_id: "conv_01J8ABC123XYZ",
limit: 20,
});
for (const m of history.messages) {
console.log(`[${m.direction}] ${m.sender}: ${m.text}`);
}
# Send outbound iMessage
wirebox imessage send --to +15551234567 --text "Hello! Your background job finished successfully."
# List conversation messages
wirebox imessage messages conv_01J8ABC123XYZ --limit 20
{
"id": "imsg_01J8DEF456GHI",
"conversation_id": "conv_01J8ABC123XYZ",
"direction": "outbound",
"status": "sent",
"text": "Hello! Your background job finished successfully.",
"sent_at": "2026-09-17T10:30:00Z"
}
{
"messages": [
{
"id": "imsg_01J8DEF456GHI",
"conversation_id": "conv_01J8ABC123XYZ",
"direction": "inbound",
"sender": "+15551234567",
"text": "Can you check on my database migration?",
"media_url": null,
"created_at": "2026-09-17T10:29:15Z"
},
{
"id": "imsg_01J8DEF456GHJ",
"conversation_id": "conv_01J8ABC123XYZ",
"direction": "outbound",
"sender": "eva",
"text": "Hello! Your background job finished successfully.",
"media_url": null,
"created_at": "2026-09-17T10:30:00Z"
}
],
"next_cursor": null
}
Send outbound blue bubbles to Apple devices via active conversation sessions or direct phone numbers, and retrieve chronological message logs.
Body Parameters
string
Active conversation session ID (e.g.
conv_01J8ABC123XYZ). Required if to is not provided.string
Recipient phone number in E.164 format (e.g.
+15551234567). Required if conversation_id is not provided.string
required
The message text body to transmit.
string
Optional URL to a media attachment (PNG, JPEG, GIF, PDF) delivered inline with the message.
string
Optional agent identity ID or handle initiating the message.
Response Fields
string
Unique message identifier (e.g.
imsg_01J8DEF456GHI).string
The associated conversation session ID.
string
Message direction:
outbound.string
Delivery state:
sent, queued, or failed.string
ISO 8601 transmission timestamp.
Listing Conversation Messages
Retrieve chronological message history for an active or archived conversation:GET https://api.wirebox.sh/api/v1/imessage/messages?conversation_id={conversation_id}&limit=50
# 1. Send outbound iMessage
curl -X POST https://api.wirebox.sh/api/v1/imessage/messages \
-H "Authorization: Bearer $WIREBOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "+15551234567",
"text": "Hello! Your background job finished successfully."
}'
# 2. List conversation messages
curl -X GET "https://api.wirebox.sh/api/v1/imessage/messages?conversation_id=conv_01J8ABC123XYZ&limit=20" \
-H "Authorization: Bearer $WIREBOX_API_KEY"
from wirebox import Wirebox
with Wirebox() as wb:
# 1. Send outbound iMessage
res = wb.imessage.messages.send(
to="+15551234567",
text="Hello! Your background job finished successfully."
)
print("Sent message:", res.id)
# 2. List message history
history = wb.imessage.messages.list(conversation_id="conv_01J8ABC123XYZ", limit=20)
for m in history.messages:
print(f"[{m.direction}] {m.sender}: {m.text}")
import { Wirebox } from "@wirebox-sh/sdk";
const wb = new Wirebox();
// 1. Send outbound iMessage
const res = await wb.imessage.messages.send({
to: "+15551234567",
text: "Hello! Your background job finished successfully.",
});
console.log("Sent message:", res.id);
// 2. List message history
const history = await wb.imessage.messages.list({
conversation_id: "conv_01J8ABC123XYZ",
limit: 20,
});
for (const m of history.messages) {
console.log(`[${m.direction}] ${m.sender}: ${m.text}`);
}
# Send outbound iMessage
wirebox imessage send --to +15551234567 --text "Hello! Your background job finished successfully."
# List conversation messages
wirebox imessage messages conv_01J8ABC123XYZ --limit 20
{
"id": "imsg_01J8DEF456GHI",
"conversation_id": "conv_01J8ABC123XYZ",
"direction": "outbound",
"status": "sent",
"text": "Hello! Your background job finished successfully.",
"sent_at": "2026-09-17T10:30:00Z"
}
{
"messages": [
{
"id": "imsg_01J8DEF456GHI",
"conversation_id": "conv_01J8ABC123XYZ",
"direction": "inbound",
"sender": "+15551234567",
"text": "Can you check on my database migration?",
"media_url": null,
"created_at": "2026-09-17T10:29:15Z"
},
{
"id": "imsg_01J8DEF456GHJ",
"conversation_id": "conv_01J8ABC123XYZ",
"direction": "outbound",
"sender": "eva",
"text": "Hello! Your background job finished successfully.",
"media_url": null,
"created_at": "2026-09-17T10:30:00Z"
}
],
"next_cursor": null
}