Receive Emails: Reading
Search
Search the mailbox by sender, domain, subject, body or label.
https://g.sendcorex.com/v1command: searchWithout field, the search is automatic: a full email address searches by exact sender, domain.com searches by domain, and anything else searches subject, body and sender name.
Arguments
querystringrequiredWhat to search for, up to 256 characters. With several words, the first one comes from the index and the others filter by subject and preview.
fieldstringoptionalLimit the search to
from,to,subject,body,senderorlabel.limitnumberoptionalPage size, from 1 to 100. Defaults to 25.
cursorstringoptionalThe
next_cursorof the previous page.
Quick start
import axios from 'axios';
const response = await axios.post(
'https://g.sendcorex.com/v1',
{
commands: [
{
command: "search",
args: {
query: "ana@client.com",
field: "from",
limit: 5
}
}
]
},
{ headers: { Authorization: process.env.SENDCOREX_TOKEN } },
);
const [result] = response.data.results;
if (result.type !== 'SUCCESS') throw new Error(`${result.code}: ${result.message}`);
console.log(result.data);Response
{
"type": "SUCCESS",
"results": [
{
"command": "search",
"id": "0",
"type": "SUCCESS",
"data": {
"messages": [
{
"message_uid": "Vj0xQUJDMTIz",
"thread_id": "thr_9a1c4e72",
"subject": "Invoice for September",
"preview": "Hi, attached is the invoice for September…",
"from_name": "Ana Costa",
"from_email": "ana@client.com",
"folders": [
"INBOX"
],
"is_read": false,
"is_starred": false,
"is_important": false,
"received_at": "2026-10-09T14:21:07Z"
}
],
"has_more": false,
"next_cursor": null
}
}
]
}Response fields
messages[]Matching messages, newest first. Each one has
message_uid,thread_id,subject,preview,from_name,from_email,folders, the read/star/important flags andreceived_at.has_more / next_cursorPagination.
Search examples
Request bodies
// subject + body + sender name
{
"commands": [
{
"command": "search",
"args": {
"query": "invoice september"
}
}
]
}
// exact sender
{
"commands": [
{
"command": "search",
"args": {
"query": "ana@client.com",
"field": "from"
}
}
]
}
// everyone from a domain
{
"commands": [
{
"command": "search",
"args": {
"query": "client.com"
}
}
]
}
// messages with a label
{
"commands": [
{
"command": "search",
"args": {
"query": "cliente-vip",
"field": "label"
}
}
]
}Errors
HTTP-level errors return type, code and message. Errors marked CMD come back inside the command result, with HTTP 200.
- 401
TOKEN_EXPIREDThe access token has expired. Call Refresh Token and repeat the request.
- 401
INVALID_TOKENThe token is malformed, unknown or revoked.
- 429
RATE_LIMITEDMore than 15 requests/s or 15 in flight for the same IP + mailbox. Wait the number of seconds in Retry-After.
- CMD
INVALID_ARGSA required argument is missing or invalid.
- CMD
INVALID_CURSORThe cursor is malformed or belongs to another account or folder.
- CMD
INTERNALServer error. The detail is only written to the server log.