VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API atual/Referência completa/Redirecionamentos e slugs

Redirecionamentos

Lista, consulta, cria, altera e exclui redirecionamentos 301 e 302 de URLs antigas.

Cadastro individual de redirecionamentos. Todas as rotas exigem token de administrador e o módulo SEO ativo (senão 403 module_disabled). A rota não verifica um privilégio específico além disso.

Listar redirecionamentos

GET/api/v1/admin/seo/redirectsAdmin

Lista os redirecionamentos com paginação

Do mais novo para o mais antigo.

Parâmetros de consulta

pageintegerpadrão: 1
Página, a partir de 1.
per_pageintegerpadrão: 50
Itens por página, de 1 a 100. Fora disso volta a 50.
200Redirecionamentos retornados
json
{
  "redirects": [
    {
      "id": "e27658d3-26b0-49f1-acee-dfb156e9a2b6",
      "old_path": "/caneca-esmaltada-350ml",
      "new_path": "/mouse-gamer-titan-2",
      "status_code": 301,
      "active": true,
      "hits": 12,
      "last_hit_at": "2026-10-10T14:22:05Z",
      "created_at": "2026-10-11T21:04:34.750113Z",
      "updated_at": "2026-10-11T21:04:34.750113Z"
    }
  ],
  "total": 126,
  "page": 1,
  "per_page": 50,
  "total_pages": 3
}

Campos da resposta

redirects[].iduuid
Identificador do redirecionamento.
redirects[].old_pathstring
Caminho antigo, começando com /.
redirects[].new_pathstring
Destino: caminho da loja ou URL completa.
redirects[].status_codeinteger
301302
301 permanente, 302 temporário.
redirects[].activeboolean
Se está valendo.
redirects[].hitsinteger
Quantas vezes foi usado.
redirects[].last_hit_atstring
Último uso (RFC 3339, UTC). Ausente se nunca foi usado.
redirects[].created_atstring
Criação (RFC 3339, UTC).
redirects[].updated_atstring
Última alteração (RFC 3339, UTC).
totalinteger
Total de redirecionamentos.
pageinteger
Página retornada.
per_pageinteger
Itens por página aplicados.
total_pagesinteger
Quantidade de páginas.

Consultar redirecionamento

GET/api/v1/admin/seo/redirects/{id}Admin

Consulta um redirecionamento

Parâmetros de caminho

iduuidobrigatório
Id do redirecionamento.

A resposta 200 é um objeto no formato de redirects[].

Criar redirecionamento

POST/api/v1/admin/seo/redirectsAdmin

Cria ou atualiza um redirecionamento pelo caminho antigo

Se já existe um redirecionamento com o mesmo old_path, ele é atualizado (destino, código e estado) em vez de dar erro, e a resposta é 201 do mesmo jeito. O new_path gravado pode diferir do enviado: se ele já é origem de outro redirecionamento ativo, é trocado pelo destino final da cadeia.

Corpo da requisição

old_pathstringobrigatório
Caminho antigo. Começa com /.
new_pathstringobrigatório
Destino. Começa com /, http:// ou https://, e é diferente de old_path.
status_codeintegerpadrão: 301
301302
Tipo de redirecionamento. Outro valor vira 301.
activebooleanpadrão: true
Se já nasce valendo.

Exemplo de requisição

bash
curl -X POST "$BASE_URL/api/v1/admin/seo/redirects" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"old_path":"/camiseta-antiga","new_path":"/produtos/camiseta-basica","status_code":301}'
201Redirecionamento criado
json
{
  "id": "7d6c5b4a-3e2f-4a1b-9c8d-0e1f2a3b4c5d",
  "old_path": "/camiseta-antiga",
  "new_path": "/produtos/camiseta-basica",
  "status_code": 301,
  "active": true,
  "hits": 0,
  "created_at": "2026-10-11T19:00:00.000Z",
  "updated_at": "2026-10-11T19:00:00.000Z"
}

Alterar redirecionamento

PUT/api/v1/admin/seo/redirects/{id}Admin

Altera campos de um redirecionamento

Alteração parcial: só os campos enviados mudam. A regra de formato, de achatamento de cadeia e de ciclo vale para o resultado final.

Parâmetros de caminho

iduuidobrigatório
Id do redirecionamento.

Corpo da requisição

old_pathstring
Novo caminho antigo.
new_pathstring
Novo destino.
status_codeinteger
301302
Novo código. Outro valor vira 301.
activeboolean
false desliga sem apagar.

A resposta 200 é o redirecionamento atualizado.

Excluir redirecionamento

DELETE/api/v1/admin/seo/redirects/{id}Admin

Exclui um redirecionamento

Parâmetros de caminho

iduuidobrigatório
Id do redirecionamento.
200Redirecionamento excluído
json
{ "status": "ok" }

Erros

StatusQuandoCorpo
400Corpo inválido; caminhos fora do formato; caminhos iguais; ciclo; cadeia com mais de 5 saltos{"error":"failed to create redirect","detail":"old_path must start with /"}, {"error":"failed to create redirect","detail":"REDIRECT_LOOP: ..."}
401Sem token ou token expirado{"error":"missing authorization header"}
403Módulo SEO desativado na loja{"error":"module_disabled","module":"seo"}
404Id inexistente (consultar, excluir){"error":"redirect not found"}
500id que não é UUID (consultar); em alterar, id inexistente também chega como 400{"error":"failed to get redirect","detail":"o valor \"abc\" não é um uuid válido. ..."}
503Serviço de SEO indisponível{"error":"seo service not available"}
Use 301 para mudanças definitivas

O 301 diz aos buscadores que a mudança é permanente e passa a eles o valor da página antiga; o 302 diz que é temporário e mantém a URL antiga indexada. Use 302 só em promoções ou manutenções que vão acabar.

Veja também

  • Importar em lote
  • Visão geral
Anterior
Redirecionamentos e slugs
Próxima
Lote
Nesta página
  • Listar redirecionamentos
  • Consultar redirecionamento
  • Criar redirecionamento
  • Exemplo de requisição
  • Alterar redirecionamento
  • Excluir redirecionamento
  • Erros
  • Veja também