Receive Emails: Organize
Move
Move messages or whole conversations between folders, for example Spam to INBOX or INBOX to Archive.
https://g.sendcorex.com/v1command: moveOnly from_folder is replaced by to_folder. The other folders of the message stay: a reply in ["Sent","INBOX"] moved to Archive ends up in ["Sent","Archive"].
Moving a message to Spam marks the external sender as untrusted, and their next emails go straight to Spam. Moving it out of Spam does not restore trust: use set_trust for that.
Arguments
idsstring[]optionalUp to 100 message ids.
idstringoptionalA single message id. Use this or
ids.to_folderstringrequiredDestination folder (slug or name).
Snoozedis not accepted: usesnooze.from_folderstringoptionalFolder to move out of. Defaults to the folder of the message that is not
Sent.scopestringoptionalthread(default) ormessage.
Quick start
import axios from 'axios';
const response = await axios.post(
'https://g.sendcorex.com/v1',
{
commands: [
{
command: "move",
args: {
id: "Vj0xQUJDMTIz",
from_folder: "INBOX",
to_folder: "Archive"
}
}
]
},
{ 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": "move",
"id": "0",
"type": "SUCCESS",
"data": {
"items": [
{
"id": "Vj0xQUJDMTIz",
"ok": true,
"data": {
"from_folder": "INBOX",
"to_folder": "Archive",
"moved": 2
}
}
],
"ok_count": 1,
"failed_count": 0
}
}
]
}Response fields
items[].data.from_folder / to_folderThe folders involved.
items[].data.movedHow many messages moved.
items[].data.trust_statusOnly when moving to Spam: the new trust status of the sender.
Rescue a conversation from Spam
Send both commands in one request. They run in order.
Request body
{
"commands": [
{
"command": "move",
"args": {
"id": "Vj0xQUJDMTIz",
"from_folder": "Spam",
"to_folder": "INBOX",
"scope": "thread"
}
},
{
"command": "set_flags",
"args": {
"id": "Vj0xQUJDMTIz",
"is_read": true,
"scope": "thread"
}
}
]
}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
NOT_FOUNDThe message, thread or folder does not exist for this token.
- CMD
INTERNALServer error. The detail is only written to the server log.