RXmail API
Simple REST API for creating disposable email addresses and managing inbox messages.
Create or Validate Email
GET
/api/email/{email}/{apikey}
Create or validate an email address.
Example Request
GET https://api.bloo.my.id/api/email/test@bloo.my.id/yourapikey
Response
"test@bloo.my.id"
Fetch Inbox Messages
GET
/api/messages/{email}/{apikey}
Fetch latest inbox messages.
Returns maximum 20 messages ordered by newest first.
Example Request
GET https://api.bloo.my.id/api/messages/test@bloo.my.id/yourapikey
Response (With Messages)
[
{
"subject": "Wonderful Indonesia",
"sender_name": "John Doe",
"sender_email": "johndoe@domain.com",
"timestamp": {
"date": "2025-08-07 02:04:20.000000",
"timezone_type": 1,
"timezone": "+04:00"
},
"date": "07 Aug 2025 02:04 AM",
"id": 27,
"content": "",
"attachments": []
}
]
Response (Empty Inbox)
[]
Fetch Single Message
GET
/api/message/{id}/{apikey}
Fetch a specific message by ID.
Example Request
GET https://api.bloo.my.id/api/message/27/yourapikey
Response
{
"subject": "API Test Subject",
"sender_name": "John Doe",
"sender_email": "johndoe@domain.com",
"timestamp": {
"date": "2025-08-07 02:04:20.000000",
"timezone_type": 1,
"timezone": "+04:00"
},
"date": "07 Aug 2025 02:04 AM",
"id": 27,
"content": "<div dir=\"ltr\">Hello World</div>",
"attachments": []
}
Delete Message
DELETE
/api/message/{id}/{apikey}
Delete a message by ID.
Example Request
DELETE https://api.bloo.my.id/api/message/27/yourapikey
Response
[]
Example JavaScript Client
Basic JavaScript wrapper for interacting with the API.
Example Code
const API_KEY = 'buyapikey000000000000000';
const DOMAIN = 'bloo.my.id';
class rxMailApi {
constructor(apiKey) {
this.apiKey = apiKey;
this.baseUrl = `https://api.${DOMAIN}/api/`;
}
async createEmail(email) {
const response = await fetch(
`${this.baseUrl}email/${email}/${this.apiKey}`
);
return await response.json();
}
async fetchMessages(email) {
const response = await fetch(
`${this.baseUrl}messages/${email}/${this.apiKey}`
);
return await response.json();
}
async fetchSingleMessage(messageId) {
const response = await fetch(
`${this.baseUrl}message/${messageId}/${this.apiKey}`
);
return await response.json();
}
async deleteMessage(messageId) {
const response = await fetch(
`${this.baseUrl}message/${messageId}/${this.apiKey}`,
{
method: 'DELETE'
}
);
return await response.json();
}
}
// Usage
const api = new rxMailApi(API_KEY);
// Example usage
async function example() {
try {
// Create email
const email = await api.createEmail('test@bloo.my.id');
console.log('Created Email:', email);
// Fetch inbox messages
const messages = await api.fetchMessages(email);
console.log('Messages:', messages);
// Fetch single message
if (messages.length > 0) {
const message = await api.fetchSingleMessage(messages[0].id);
console.log('Single Message:', message);
// Delete message
await api.deleteMessage(messages[0].id);
console.log('Message deleted');
}
} catch (error) {
console.error('API Error:', error);
}
}
example();