문서로 건너뛰기
PHP

발송 차단

`suppressions->list`, `listAll`, `iterate`, `get`, `add`, `remove`.

모든 메서드

suppressions.php
use OpenEmail\Constants\SuppressionReasons; $complaints = $client->suppressions->listAll(reason: SuppressionReasons::COMPLAINT);echo implode(', ', array_column($complaints, 'email')), PHP_EOL; $row = $client->suppressions->add(['email' => '[email protected]']); if ($row['removable']) {    $client->suppressions->remove($row['id']);}

이 워크스페이스가 보내지 않을 주소입니다: 발생하는 즉시 기록되는 하드 바운스와 스팸 신고, 그리고 직접 차단한 주소입니다. 그중 하나로 보내면 아무것도 나가기 전에 그 수신자에 대해 거부됩니다. 읽으려면 settings:read, 바꾸려면 settings:write가 필요하며, 차단된 주소 화면을 보호하는 스코프입니다. reason:은 bounce, complaint, manual 중 한 종류만 남기며, OpenEmail\Constants\SuppressionReasons가 이들을 정의합니다. q:는 주소를 검색합니다.

list는 최신순으로 OpenEmail\Result\Page 하나를 반환하고, listAll은 모든 행을 하나의 배열로 반환하며, iterate는 행을 하나씩 yield하는 Generator를 반환합니다. 행은 id, email, reason, detail, removable, createdAt을 가진 배열이고, add는 email을 담은 배열 하나를 받습니다.

add는 새 행이든 이미 있던 행이든 그 행을 반환하므로, 반복해도 해가 없고 클라이언트는 네트워크 장애 후에 이를 재시도합니다. remove는 하드 바운스를 409 suppression_not_removable로 거부하며 이는 ConflictException으로 던져지고, removable이 이를 미리 알려 줍니다. 특정 주소나 도메인으로 제한된 키는 목록을 읽을 수는 있어도 바꿀 수는 없습니다: add와 remove는 그런 키에 422 capability_unsupported로 응답합니다.