Consegui fazer o que queria alcançar eliminando rewrite
e substituindo-o por proxy_pass
e resolver
entries:
location /api/ {
if ($arg_server !~ "^(a|b)$") { return 404; }
resolver dns.site.com;
proxy_pass $schemes://my.site.$arg_server.com$request_uri;
}