Skip to main content

✏️ Atualizar Loja

Este endpoint permite atualizar dados de uma loja existente da sua conta. Ele é ideal para:
  • Alterar nome, descrição e imagem da loja
  • Trocar template e domínio
  • Atualizar metadados para integrações internas

🔐 Autenticação

Esta rota exige autenticação via API Key, enviada no header da requisição:
Authorization: SUA_API_KEY_AQUI

📥 Parâmetros de Rota

ParâmetroTipoObrigatórioDescrição
storeIdstring (UUID)SimID da loja que será atualizada.

📥 Body da Requisição

Pelo menos 1 campo deve ser enviado no body.
CampoTipoObrigatórioDescrição
templatestringNãoValores aceitos: PERSONALIZADO ou N/A.
positionnumberNãoInteiro maior ou igual a 1 para reordenar manualmente.
namestringNãoNome da loja (mín. 4, máx. 32).
descriptionstring | nullNãoDescrição da loja (mín. 12, máx. 256).
imagestring | nullNãoURL da imagem da loja (mín. 12, máx. 512).
metadataobject | nullNãoMetadados customizados da loja.
domainobject | nullCondicionalObrigatório quando template = PERSONALIZADO.

Estrutura de domain

CampoTipoObrigatórioDescrição
typestringSimValores aceitos: CUSTOM ou DEFAULT.
valuestringSimDomínio ou subdomínio (mín. 8, máx. 75).

📋 Exemplo de Requisição

curl --location --request PUT "https://api.cabrapi.com.br/stores/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" \
--header "Authorization: SUA_API_KEY_AQUI" \
--header "Content-Type: application/json" \
--data '{
	"name": "Minha Loja Atualizada",
	"template": "PERSONALIZADO",
	"domain": {
		"type": "DEFAULT",
		"value": "minha-loja-v2"
	}
}'

📊 Exemplo de Resposta

{
	"status": true,
	"code": "STORE_UPDATED",
	"store": {
		"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
		"name": "Minha Loja Atualizada",
		"position": 2,
		"description": "Loja oficial da minha marca",
		"image": "https://example.com/store.png",
		"domain": "minha-loja-v2-web.cabrapi.com.br",
		"template": "PERSONALIZADO",
		"metadata": null,
		"createdAt": "2026-02-28T12:00:00.000Z",
		"updatedAt": "2026-02-28T12:10:00.000Z"
	}
}

❌ Possíveis Erros

StatusCodeQuando acontece
400INVALID_DATADados de entrada inválidos.
400DOMAIN_REQUIREDtemplate é PERSONALIZADO, mas domain não foi enviado.
400DOMAIN_ALREADY_EXISTSDomínio já está sendo usado por outra loja.
400NAME_ALREADY_EXISTSJá existe loja com esse nome para o mesmo usuário.
404STORE_NOT_FOUNDLoja não existe, foi removida ou não pertence à sua conta.
500INTERNAL_SERVER_ERRORFalha interna ao processar a requisição.
Update: 28/02/2026 as 00:00