came across your post while searching online with the exact same problems you are having.
I forgot to rename the sonarr name to binhex-sonarr in the "location ~ (/sonarr)?/api" section of the code in the sonarr.subdomaion.conf file. I only renamed it in the "location /" section. I made the change and everything works. Silly mistake that I should have never made. Hope this helps.
Here's my sonarr.subdomain.conf file:
# make sure that your dns has a cname set for sonarr and that your sonarr container is not using a base url
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name sonarr.*;
include /config/nginx/ssl.conf;
client_max_body_size 0;
# enable for ldap auth, fill in ldap details in ldap.conf
#include /config/nginx/ldap.conf;
location / {
# enable the next two lines for http auth
#auth_basic "Restricted";
#auth_basic_user_file /config/nginx/.htpasswd;
# enable the next two lines for ldap auth
#auth_request /auth;
#error_page 401 =200 /login;
include /config/nginx/proxy.conf;
resolver 127.0.0.11 valid=30s;
set $upstream_sonarr binhex-sonarr;
proxy_pass http://$upstream_sonarr:8989;
}
location ~ (/sonarr)?/api {
include /config/nginx/proxy.conf;
resolver 127.0.0.11 valid=30s;
set $upstream_sonarr binhex-sonarr;
proxy_pass http://$upstream_sonarr:8989;
}
}