I had the same problem when getting Hyperkitty to work.
It was caused by a global redirect on my web server which was redirecting every web request received for *:80 to https://... url. This is enabled by default if you run certbot, for example to automagically update your web server config, enable https and redirect all non-https to https.
mailman3 conf doesn't know about that, of course.
I had to explicitly create a non-https port 80 listener for localhost:
(in apache2, but nginx has similar conf:)
<VirtualHost 127.0.0.1:80 [::1]:80>
... ServerName localhost
# Mailman3 conf: Include conf-available/mailman3.conf
...
</VirtualHost>
/etc/apache2/conf-available/mailman3.conf is just a symlink to the example provided in /etc/mailman3/apache.conf
Similar example is provided for nginx.
>> Aug 05 15:38:40 2019 (10229) HyperKitty failure on >> http://localhost/mailman3/hyperkitty/api/mailman/urls: >> <html><title>Forbidden</title><body> >> <h1>Access is forbidden</h1></body></html> (403) >> Aug 05 15:38:58 2019 (10222) HyperKitty failure on >> http://localhost/mailman3/hyperkitty/api/mailman/archive: >> <html><title>Forbidden</title><body> >> <h1>Access is forbidden</h1></body></html> (403) >> >> Any suggestions would be appreciated. >
-- Robert Lister - email: robl@lentil.org - tel: 020 7043 7996