curl --request GET \
--url https://api.mailbeast.ai/v1/accounts/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.mailbeast.ai/v1/accounts/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.mailbeast.ai/v1/accounts/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.mailbeast.ai/v1/accounts/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.mailbeast.ai/v1/accounts/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.mailbeast.ai/v1/accounts/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.mailbeast.ai/v1/accounts/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3f1c2b7e-9a4d-4e18-b2c1-6d8f5a0e7c93",
"emailAddress": "[email protected]",
"firstName": "Jane",
"lastName": "Doe",
"displayName": "Jane Doe",
"provider": "custom",
"status": "active",
"maxEmailsPerDay": 30,
"sendingGapMinutes": 10,
"campaignSlowRamp": false,
"replyToAddress": "[email protected]",
"signature": "Best regards,<br>Jane",
"bcc": "[email protected]",
"automationLanguage": "en",
"warmup": {
"enabled": true,
"strategy": "standard",
"maxPerDay": 15,
"replyRatePercentage": 35,
"rampupEnabled": true,
"dailyRampup": 1,
"randomizer": 0,
"skipWeekends": false,
"timezone": "Europe/London",
"trackingEnabled": true,
"phase": "warming_up",
"startedAt": "2023-11-07T05:31:56Z",
"poolAccess": "free"
},
"tracking": {
"domainId": "9d1f7c4a-6e58-4b32-8a07-3c5d9e2f1b46"
},
"statusMessage": {
"code": "EENVELOPE",
"command": "DATA",
"responseCode": 550,
"response": "550-5.4.5 Daily user sending limit exceeded.",
"message": "Daily user sending limit exceeded",
"occurredAt": "2023-11-07T05:31:56Z"
},
"tags": [
{
"id": "5c9b1e77-2f4a-4c31-9d8e-1a2b3c4d5e6f",
"name": "client-acme",
"color": "#4F46E5"
}
],
"healthScore": 98,
"smtp": {
"host": "smtp.acme.com",
"port": 587,
"username": "[email protected]"
},
"imap": {
"host": "imap.acme.com",
"port": 993,
"username": "[email protected]"
},
"verification": {
"overallStatus": "pending",
"smtp": "active",
"imap": "not_checked",
"dns": {
"mx": "not_checked",
"spf": "not_checked",
"dkim": "not_checked",
"dmarc": "not_checked"
}
},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}{
"error": {
"type": "authentication_error",
"code": "unauthenticated",
"message": "Missing or invalid API key.",
"status": 401,
"requestId": "e4f1c0b2-6a3d-4b8e-9f21-0a1b2c3d4e5f"
}
}{
"error": {
"type": "authorization_error",
"code": "permission_denied",
"message": "This API key is missing the required scope.",
"status": 403,
"requestId": "e4f1c0b2-6a3d-4b8e-9f21-0a1b2c3d4e5f"
}
}{
"error": {
"type": "invalid_request_error",
"code": "not_found",
"message": "Resource not found.",
"status": 404,
"requestId": "e4f1c0b2-6a3d-4b8e-9f21-0a1b2c3d4e5f"
}
}{
"error": {
"type": "rate_limit_error",
"code": "rate_limited",
"message": "Too many requests. Retry after the interval in the Retry-After header.",
"status": 429,
"requestId": "e4f1c0b2-6a3d-4b8e-9f21-0a1b2c3d4e5f",
"retryAfter": 30
}
}Get a mailbox
Fetch one mailbox with its embedded status, health score, and verification snapshot.
Requires one of the following scopes: accounts:read, accounts:all, all:read, all:all.
curl --request GET \
--url https://api.mailbeast.ai/v1/accounts/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.mailbeast.ai/v1/accounts/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.mailbeast.ai/v1/accounts/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.mailbeast.ai/v1/accounts/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.mailbeast.ai/v1/accounts/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.mailbeast.ai/v1/accounts/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.mailbeast.ai/v1/accounts/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3f1c2b7e-9a4d-4e18-b2c1-6d8f5a0e7c93",
"emailAddress": "[email protected]",
"firstName": "Jane",
"lastName": "Doe",
"displayName": "Jane Doe",
"provider": "custom",
"status": "active",
"maxEmailsPerDay": 30,
"sendingGapMinutes": 10,
"campaignSlowRamp": false,
"replyToAddress": "[email protected]",
"signature": "Best regards,<br>Jane",
"bcc": "[email protected]",
"automationLanguage": "en",
"warmup": {
"enabled": true,
"strategy": "standard",
"maxPerDay": 15,
"replyRatePercentage": 35,
"rampupEnabled": true,
"dailyRampup": 1,
"randomizer": 0,
"skipWeekends": false,
"timezone": "Europe/London",
"trackingEnabled": true,
"phase": "warming_up",
"startedAt": "2023-11-07T05:31:56Z",
"poolAccess": "free"
},
"tracking": {
"domainId": "9d1f7c4a-6e58-4b32-8a07-3c5d9e2f1b46"
},
"statusMessage": {
"code": "EENVELOPE",
"command": "DATA",
"responseCode": 550,
"response": "550-5.4.5 Daily user sending limit exceeded.",
"message": "Daily user sending limit exceeded",
"occurredAt": "2023-11-07T05:31:56Z"
},
"tags": [
{
"id": "5c9b1e77-2f4a-4c31-9d8e-1a2b3c4d5e6f",
"name": "client-acme",
"color": "#4F46E5"
}
],
"healthScore": 98,
"smtp": {
"host": "smtp.acme.com",
"port": 587,
"username": "[email protected]"
},
"imap": {
"host": "imap.acme.com",
"port": 993,
"username": "[email protected]"
},
"verification": {
"overallStatus": "pending",
"smtp": "active",
"imap": "not_checked",
"dns": {
"mx": "not_checked",
"spf": "not_checked",
"dkim": "not_checked",
"dmarc": "not_checked"
}
},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}{
"error": {
"type": "authentication_error",
"code": "unauthenticated",
"message": "Missing or invalid API key.",
"status": 401,
"requestId": "e4f1c0b2-6a3d-4b8e-9f21-0a1b2c3d4e5f"
}
}{
"error": {
"type": "authorization_error",
"code": "permission_denied",
"message": "This API key is missing the required scope.",
"status": 403,
"requestId": "e4f1c0b2-6a3d-4b8e-9f21-0a1b2c3d4e5f"
}
}{
"error": {
"type": "invalid_request_error",
"code": "not_found",
"message": "Resource not found.",
"status": 404,
"requestId": "e4f1c0b2-6a3d-4b8e-9f21-0a1b2c3d4e5f"
}
}{
"error": {
"type": "rate_limit_error",
"code": "rate_limited",
"message": "Too many requests. Retry after the interval in the Retry-After header.",
"status": 429,
"requestId": "e4f1c0b2-6a3d-4b8e-9f21-0a1b2c3d4e5f",
"retryAfter": 30
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
"3f1c2b7e-9a4d-4e18-b2c1-6d8f5a0e7c93"
Response
"3f1c2b7e-9a4d-4e18-b2c1-6d8f5a0e7c93"
"Jane"
"Doe"
"Jane Doe"
How the mailbox is connected: custom for any SMTP/IMAP mailbox (including Gmail/Outlook connected with an app password), or google / microsoft for a native OAuth connection.
"custom"
Current state. active - sending. inactive - paused by you (or connected but not verified yet); nothing re-activates it on its own, call resume. checking - being verified. failed - we stopped it after repeated failures; see statusMessage for the provider’s reason, and resume re-checks it. revoked - the OAuth grant is gone; reconnect it.
active, inactive, checking, revoked, failed Daily CAMPAIGN send cap. Warmup is budgeted separately (warmup.maxPerDay).
30
Minimum minutes between two sends from this mailbox, across all campaigns.
10
Ramp campaign volume up gradually when the mailbox joins a campaign.
false
Where replies are sent, when it differs from the mailbox address.
HTML signature appended to outgoing emails.
"Best regards,<br>Jane"
ISO 639-1 language for auto-generated content.
"en"
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Why the mailbox last failed, as reported by its provider. Null when it is healthy, and also null when the failure was on our side, since that is not a problem with your mailbox.
Show child attributes
Show child attributes
Tags on this mailbox. Create and delete them in the dashboard - here they are read, and you can filter the list by them with ?tags=.
Show child attributes
Show child attributes
Deliverability health score, from 0 to 100.
98
Show child attributes
Show child attributes
Null when no IMAP is configured.
Show child attributes
Show child attributes
Show child attributes
Show child attributes