критично
Создаёт, читает, дополняет и удаляет списки адресов и доменов — например, списки подавления — запросами, без правки файлов.
Пути. GET /config/address-lists — имена всех списков; GET, POST, PUT, PATCH и DELETE на /config/address-lists/имя — прочитать, создать, заменить, дополнить и удалить список; DELETE на …/addresses/адрес, …/hashed-addresses/адрес и …/domains/домен — убрать одну запись. Тела запросов и ответы — JSON.
Сначала включают: точка работает только при http-enable-api-config yes, по умолчанию выключено.
Объекты, созданные так, правятся только через API: в файле конфигурации их нет, и два способа описать одно и то же не сходятся. MTA хранит их в /var/lib/pmta/config-api.
Чтение пройдёт без ключа с адреса уровня operator и выше в http-access; любое изменение — только с ключом из http-api-key в заголовке X-API-Key.
Какой метод что делает:
| Метод | Путь | Действие |
|---|---|---|
| GET | /config/address-lists | имена всех списков |
| GET | …/имя | содержимое списка |
| POST | …/имя | создать; если список есть — ошибка |
| PUT | …/имя | заменить целиком; если списка нет — ошибка |
| PATCH | …/имя | дополнить; повторы молча пропускаются |
| DELETE | …/имя или …/имя/addresses/адрес | удалить список или одну запись |
# дополнить список подавления двумя адресами curl -s -X PATCH 'http://127.0.0.1:8080/config/address-lists/suppress' -H 'X-API-Key: KEY' -H 'Content-Type: application/json' -d '{"addresses":["a@example.com","b@example.com"]}'
3 связи
grep -n 'http-enable-api-config' /etc/pmta/config curl -s 'http://127.0.0.1:8080/config/address-lists' ls /var/lib/pmta/config-api/
3 статьи
◇Списки адресов — именованные и безымянныеСписок адресов, доменов, образцов или хешей; именованный подключается директивами вроде подавления, безымянный живёт внутри процессора входящей почты.◇Настройка через API и файл не сходятсяОбъекты, созданные через интерфейс настройки, в файле не правятся: два источника правды о конфигурации не сходятся.◇Две точки подключения — и два разных поведенияСписок, подключённый к источнику, отвергает получателя при подаче или отбивает письмо позже; подключённый к адресу отправки или пулу — всегда принимает и отбивает.