- Built for AI agents
- Real-time inbound webhooks
- Receive unlimited messages⁴
- Reply to anyone who messages you first
- Full API access
- Dedicated phone number
- Cannot initiate new conversations
iMessage Java & Kotlin SDK
Send and receive iMessages from the JVM with Blooio's official iMessage Java SDK. Published to Maven Central, works with Java 17+ and Kotlin, ships with a fluent builder API, Jackson-based typed models, and a Spring Boot–friendly webhook verifier you can drop into any controller.
Install
One command to add the iMessage Java SDK to your project.
// Gradle (Kotlin DSL)
dependencies {
implementation("com.blooio:blooio-sdk:latest.release")
}
// Maven
<dependency>
<groupId>com.blooio</groupId>
<artifactId>blooio-sdk</artifactId>
<version>LATEST</version>
</dependency>Send 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 com.blooio.Blooio;
import com.blooio.model.SendMessageRequest;
public class Sender {
public static void main(String[] args) throws Exception {
Blooio blooio = Blooio.builder()
.apiKey(System.getenv("BLOOIO_API_KEY"))
.build();
blooio.chats().sendMessage(SendMessageRequest.builder()
.phone("+15551234567")
.body("Hey Alex — thanks for booking a demo. Reply with any questions.")
.build());
}
}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.
@RestController
@RequestMapping("/webhooks")
public class BlooioWebhookController {
private final WebhookVerifier verifier =
new WebhookVerifier(System.getenv("BLOOIO_WEBHOOK_SECRET"));
@PostMapping(value = "/blooio", consumes = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Void> handle(
@RequestHeader("X-Blooio-Signature") String signature,
@RequestBody byte[] body
) {
try {
BlooioEvent event = verifier.verify(body, signature);
if ("message.received".equals(event.type())) {
MessageReceived data = event.dataAs(MessageReceived.class);
log.info("inbound iMessage: {}", data.body());
}
} catch (InvalidSignatureException e) {
return ResponseEntity.status(HttpStatus.UNAUTHORIZED).build();
}
return ResponseEntity.ok().build();
}
}What the SDK gives you on top of raw REST
- Published to Maven Central — pull with Gradle, Maven, or sbt
- Java 17+ and Kotlin 1.9+ supported, Android compatible
- Fluent builders for every request object
- Jackson-based models with typed deserialisation for webhook payloads
- Spring Boot–ready webhook controller example in the docs
- Automatic retries on 429/5xx with exponential backoff
Java iMessage SDK FAQ
How do I install the Blooio iMessage Java SDK?+
Does the iMessage Java SDK support Kotlin?+
How do I verify Blooio webhook signatures in Java / Spring Boot?+
Does the Java SDK work on Android?+
Is the Java SDK open source?+
6 lines → $195/line
Simple, transparent pricing
Choose the plan that fits your volume and scale as you grow.
Dedicated
Maximum scale with tiered pricing
$19550% off/ month each line
Number of lines
6+ Lines 50% off
Save more as you scale. Best value: 6+ lines → $195/line
- Inquire about FaceTime audio & video calling
- Number pools
- Auto-scaling (inquire to activate)
- Auto-unbanning (inquire to activate)
- Volume pricing discounts
- Dedicated account manager
- Priority incident response
- Migration onboarding support
- Multi-organization number discounts
- Built for AI agents
- Real-time inbound webhooks
- Receive unlimited messages⁴
- Reply to anyone who messages you first
- Full API access
- Dedicated phone number
- Cannot initiate new conversations
Dedicated
Maximum scale with tiered pricing
$19550% off/ month each line
Number of lines
6+ Lines 50% off
Save more as you scale. Best value: 6+ lines → $195/line
- Inquire about FaceTime audio & video calling
- Number pools
- Auto-scaling (inquire to activate)
- Auto-unbanning (inquire to activate)
- Volume pricing discounts
- Dedicated account manager
- Priority incident response
- Migration onboarding support
- Multi-organization number discounts
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