List sending inboxes
curl --request GET \
--url https://app.manypi.com/api/outreach/inboxes \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.manypi.com/api/outreach/inboxes"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.manypi.com/api/outreach/inboxes', 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://app.manypi.com/api/outreach/inboxes",
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://app.manypi.com/api/outreach/inboxes"
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://app.manypi.com/api/outreach/inboxes")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.manypi.com/api/outreach/inboxes")
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{
"inboxes": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"from_email": "jsmith@example.com",
"sentToday": 123,
"capToday": 123,
"sent14d": 123,
"failed14d": 123,
"opened14d": 123,
"bounced14d": 123,
"bounceRate24h": 123,
"warmup_enabled": true,
"sending_paused_at": "2023-11-07T05:31:56Z",
"sending_paused_reason": "<string>",
"health": 50
}
]
}{
"error": "<string>",
"code": "<string>"
}Outreach
List sending inboxes
Every connected sending identity with its health: today’s sends versus the warmup-aware cap, 14-day delivered/failed/opened/bounced, a rolling 24-hour bounce rate, whether the bounce guard has paused it, and a 0–100 health score.
Use an inbox id as smtp_config_id when creating a campaign or sending.
Requires the read permission.
GET
/
api
/
outreach
/
inboxes
List sending inboxes
curl --request GET \
--url https://app.manypi.com/api/outreach/inboxes \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.manypi.com/api/outreach/inboxes"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.manypi.com/api/outreach/inboxes', 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://app.manypi.com/api/outreach/inboxes",
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://app.manypi.com/api/outreach/inboxes"
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://app.manypi.com/api/outreach/inboxes")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.manypi.com/api/outreach/inboxes")
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{
"inboxes": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"from_email": "jsmith@example.com",
"sentToday": 123,
"capToday": 123,
"sent14d": 123,
"failed14d": 123,
"opened14d": 123,
"bounced14d": 123,
"bounceRate24h": 123,
"warmup_enabled": true,
"sending_paused_at": "2023-11-07T05:31:56Z",
"sending_paused_reason": "<string>",
"health": 50
}
]
}{
"error": "<string>",
"code": "<string>"
}Authorizations
A ManyPI API key (mpi_...) from Settings → API keys, or an OAuth 2.1 access token obtained through the MCP consent flow.
Query Parameters
all reports every inbox in the workspace.
Response
Inboxes with health.
Show child attributes
Show child attributes
⌘I
