Zasób obsługujący komendy związane z serwerami mailowymi.
Endpointy obsługujące żądanie:
https://api.5ways.com - EkspertUprawnienia:
POST /rest/mail_command
Wywołuje wykonanie danej komendy.
Identyfikatory komend: \
COMMAND_ADD_TO_RECEIVE_QUEUE = 2 - dodanie do kolejki odebrania \
COMMAND_ADD_TO_SEND_QUEUE = 3 - dodanie do kolejki wysyłania \
COMMAND_ADD_BACKFILL_TO_RECEIVE_QUEUE = 4 - pobranie wiadomości wstecz na żądanie (per folder systemowy)
{
"MailCommand": {
"command_id": 2,
"mail_server_id": 2
}
}
// HTTP/1.1 201 CREATED
Komenda COMMAND_ADD_BACKFILL_TO_RECEIVE_QUEUE = 4 zleca asynchroniczne pobranie starszych wiadomości
ze wskazanej skrzynki dla wybranego folderu systemowego, od podanej daty. Zakres dzielony jest na zadania
miesięczne i przetwarzany kolejką odbioru (nie synchronicznie). Zapisywane są wyłącznie wiadomości
pasujące do reguły wybranego folderu — pozostałe są odrzucane (nie trafiają do systemu).
Pola żądania:
command_id - 4mail_server_id - identyfikator skrzynki (w obrębie organizacji)folder_name - folder systemowy; dozwolone: CLIENTS, OFFICES, PROVIDERS, LEADS, OTHERSfetch_after_date - data początkowa YYYY-MM-DD (nie z przyszłości; bez dolnego limitu)Wymagane uprawnienie RBAC odpowiadające wybranemu folderowi (np. mailbox.crm_folders.clients dla
CLIENTS, mailbox.personal_mailbox dla OTHERS).
{
"MailCommand": {
"command_id": 4,
"mail_server_id": 2,
"folder_name": "CLIENTS",
"fetch_after_date": "2025-01-01"
}
}
// HTTP/1.1 201 CREATED — zadania dodane do kolejki
// HTTP/1.1 400 BAD REQUEST — niedozwolony folder (spoza CLIENTS/OFFICES/PROVIDERS/LEADS/OTHERS)
{
"status": "error",
"errorMessages": {
"folder_name": "Folder not allowed."
}
}
// HTTP/1.1 400 BAD REQUEST — niepoprawny format daty (oczekiwane Y-m-d)
{
"status": "error",
"errorMessages": {
"fetch_after_date": "Invalid date format."
}
}
// HTTP/1.1 400 BAD REQUEST — data z przyszłości
{
"status": "error",
"errorMessages": {
"fetch_after_date": "Date cannot be in the future."
}
}
// HTTP/1.1 400 BAD REQUEST — nie udało się dodać zadań backfillu do kolejki
{
"status": "error",
"errorMessages": {
"backfill": "Could not enqueue backfill request."
}
}
// HTTP/1.1 403 FORBIDDEN — brak uprawnienia RBAC do wybranego folderu
// HTTP/1.1 404 NOT FOUND — skrzynka nie istnieje w organizacji
// HTTP/1.1 409 CONFLICT — backfill tej skrzynki i folderu już trwa (guard idempotencji)
{
"status": "error",
"errorMessages": "A backfill for this mailbox and folder is already in progress."
}
Ponowne zlecenie dla tej samej skrzynki i folderu, gdy poprzedni backfill jeszcze trwa, jest odrzucane kodem 409 (idempotencja) — z komunikatem jak wyżej. Wiadomości już obecne w systemie są pomijane (bez duplikatów).