caminho de reescrita do proxy reverso nginx usando mapa

caminho de reescrita do proxy reverso nginx usando mapa

Estou tentando configurar um proxy reverso nginx para reescrever um ID no caminho com outro ID (também o domínio). Por exemplo
https://somewhere.com/user/123/setting -->https://somewhere.else.com/user/456/setting
Mas estou tendo dificuldades para reescrever as partes. Alguém pode ajudar?

map $old_user_id $new_project_id {
    123        456;
    999        9876;
    12         56;
}

server {
    location ~ ^/api/(?<old_project_id>.+)/store {
        rewrite ^/api/[^/]+(/.*)/store ....... # how to rewrite with the map?
        proxy_pass http://somewhere.else.com/;
    }
}

Responder1

A regex não corresponde ao id do exemplo.
Alterando o seguinte, posso resolver meu problema

location ~ ^/api/(?<project_id>.+)/store {
    rewrite ^/user/(.*)/setting /user/$project_id_2/setting break;
    proxy_pass http://host.docker.internal:8080;
}

informação relacionada