| @@ 201-218 (lines=18) @@ | ||
| 198 | * @throws ApiError |
|
| 199 | * @throws InvalidNewsletterList |
|
| 200 | */ |
|
| 201 | public function unsubscribe(string $email, string $listName = '') |
|
| 202 | { |
|
| 203 | $list = $this->lists->findByName($listName); |
|
| 204 | ||
| 205 | $body = [ |
|
| 206 | 'Email' => $email, |
|
| 207 | 'Action' => 'unsub', |
|
| 208 | ]; |
|
| 209 | ||
| 210 | $response = $this->client->post(Resources::$ContactslistManagecontact, ['id' => $list->getId(), 'body' => $body]); |
|
| 211 | ||
| 212 | if (! $response->success()) { |
|
| 213 | $this->lastError = $response->getData(); |
|
| 214 | throw ApiError::responseError($response->getReasonPhrase(), 'mailjet', $response->getStatus()); |
|
| 215 | } |
|
| 216 | ||
| 217 | return $response; |
|
| 218 | } |
|
| 219 | ||
| 220 | ||
| 221 | /** |
|
| @@ 228-249 (lines=22) @@ | ||
| 225 | * @throws ApiError |
|
| 226 | * @throws InvalidNewsletterList |
|
| 227 | */ |
|
| 228 | public function delete(string $email, string $listName = '') |
|
| 229 | { |
|
| 230 | $list = $this->lists->findByName($listName); |
|
| 231 | ||
| 232 | $body = [ |
|
| 233 | 'Email' => $email, |
|
| 234 | 'Action' => 'remove', |
|
| 235 | ]; |
|
| 236 | ||
| 237 | $response = $this->client->post(Resources::$ContactslistManagecontact, [ |
|
| 238 | 'id' => $list->getId(), |
|
| 239 | 'body' => $body |
|
| 240 | ] |
|
| 241 | ); |
|
| 242 | ||
| 243 | if (! $response->success()) { |
|
| 244 | $this->lastError = $response->getData(); |
|
| 245 | throw ApiError::responseError($response->getReasonPhrase(), 'mailjet', $response->getStatus()); |
|
| 246 | } |
|
| 247 | ||
| 248 | return $response; |
|
| 249 | } |
|
| 250 | ||
| 251 | public function getLastError() |
|
| 252 | { |
|