Pular para o conteúdo

URLs canônicas

Cada organização e projeto tem um public_id curto e estável por trás das suas URLs públicas. Renomeie a organização ou o projeto, e os links existentes continuam funcionando.

Por que não o slug

Slugs são ótimos até alguém renomear. Uma URL de formulário no Twitter, um QR code num panfleto, um link num e-mail de boas-vindas: tudo quebra no momento em que acme vira acme-labs.

O Opini resolve URLs públicas a partir de um public_id de 10 caracteres (Crockford base32, então sem caracteres ambíguos como I/l/O/U). O id não muda quando algo é renomeado.

Como elas são

Organização e projeto têm cada um seu próprio id. A URL canônica do formulário hospedado fica assim:

url
https://opini.dev/f/<org-public-id>/<project-public-id>

Posts de lançamento e endpoints da API pública seguem o mesmo padrão: /r/..., /api/v1/public/projects/....

Copie o public_id de um projeto em Configurações → Geral. Ele fica logo abaixo do nome, com um botão para copiar. A página de configurações da organização tem o mesmo.

URLs com slug redirecionam

URLs antigas com slug (/f/acme/main) não quebram: elas fazem um redirecionamento 301 para a URL canônica com public_id. Navegadores guardam o redirecionamento e buscadores atualizam o índice. Você pode continuar compartilhando URLs com slug, e com o tempo elas se acomodam na forma canônica.

Ao renomear uma organização ou projeto, o slug antigo e o novo continuam funcionando. O public_id é a referência, e o slug é só um atalho legível.

Trocar um public_id

Não dá. O public_id é estável de propósito: trocá-lo quebraria todos os links que o usam, o que acabaria com a ideia.