- Shared number
- Standard email support
- 15 new contacts/day
- CRM integrations included
- Full API access
- Limited to 1 number
- No hidden fees
- Does not support custom area codes
iMessage Node.js & TypeScript SDK
Send and receive iMessages from Node.js or TypeScript with Blooio's official iMessage SDK. Fully typed against the Blooio REST API, published to npm, with async/await, automatic retries with exponential backoff, and a webhook signature verifier you can drop into Express, Fastify, Hono, or Next.js route handlers.
Install
One command to add the iMessage Node.js / TypeScript SDK to your project.
npm install @blooio/sdk
# or
pnpm add @blooio/sdk
# or
yarn add @blooio/sdkSend your first iMessage
This is the smallest working example — authenticate with your Blooio API key, then call the send-message method on the client.
import { Blooio } from "@blooio/sdk";
const blooio = new Blooio({ apiKey: process.env.BLOOIO_API_KEY });
await blooio.chats.sendMessage({
phone: "+15551234567",
body: "Hey Alex — thanks for booking a demo. Reply with any questions.",
});Handle inbound iMessages and webhooks
Every inbound iMessage, delivery, read, and reaction event is POSTed to your webhook URL. Use the SDK's signature verifier to reject forged requests and deserialize the payload into typed objects.
import express from "express";
import { Blooio, verifyWebhook } from "@blooio/sdk";
const app = express();
app.post(
"/webhooks/blooio",
express.raw({ type: "application/json" }),
(req, res) => {
const event = verifyWebhook({
body: req.body,
signature: req.header("x-blooio-signature") ?? "",
secret: process.env.BLOOIO_WEBHOOK_SECRET,
});
if (event.type === "message.received") {
console.log("Inbound iMessage:", event.data.body);
}
res.sendStatus(200);
},
);What the SDK gives you on top of raw REST
- 100% TypeScript — every endpoint, payload, and webhook event is typed
- Automatic retries with exponential backoff and jitter
- Works in Node 18+, Bun, Deno, and edge runtimes (Cloudflare Workers, Vercel Edge)
- Webhook signature verification — drop-in Express, Fastify, Hono, and Next.js helpers
- Streaming helpers for large inbound media downloads
- MIT-licensed and open source on GitHub
Node.js / TypeScript iMessage SDK FAQ
How do I install the Blooio iMessage Node.js SDK?+
Does the iMessage TypeScript SDK work in Cloudflare Workers or Vercel Edge?+
How do I verify Blooio webhook signatures in Node.js?+
Does the SDK support sending attachments, polls, and FaceTime invites?+
Is the Node.js SDK open source?+
6 lines → $195/line
Simple, transparent pricing
Choose the plan that fits your volume and scale as you grow.
- Dedicated number
- Unlimited Messages⁴
- Inquire about FaceTime support
- Custom area code ($75/number one-time fee)
- Full API access
- CRM integrations included
- Number porting included
- No activation fee
- No hidden fees
- Shared number
- Standard email support
- 15 new contacts/day
- CRM integrations included
- Full API access
- Limited to 1 number
- No hidden fees
- Does not support custom area codes
- Dedicated number
- Unlimited Messages⁴
- Inquire about FaceTime support
- Custom area code ($75/number one-time fee)
- Full API access
- CRM integrations included
- Number porting included
- No activation fee
- No hidden fees
Concierge
Need a hands-on implementation? Let our team build it for you.
Related Guides
Send iMessage Programmatically
Step-by-step guide to sending iMessages via API from your application.
Read guideiMessage for Business
How businesses use iMessage to engage customers with higher open rates than SMS or email.
Read guideBuild an iMessage Bot
Create automated iMessage bots for customer support, sales, and notifications.
Read guide