Pular para o conteúdo principal

Clone vs. Assinatura

OperaçãoEndpointComportamento
ClonarPOST /hub/catalogs/{id}/cloneCópia estática — snapshot único dos produtos
AssinarPOST /hub/catalogs/{id}/subscribeCópia dinâmica — sincroniza quando o publisher atualiza

POST /clone

POST /api/hub/catalogs/{catalogId}/clone
Cria uma cópia estática do catálogo publicado no workspace da conta autenticada. As mudanças futuras do publisher não afetam o clone.

Corpo da requisição

{
  "targetCatalogName": "Coleção Primavera 2026 (cópia)"
}

Resposta

{
  "catalogId": "cat_new_789",
  "name": "Coleção Primavera 2026 (cópia)",
  "productCount": 512,
  "clonedAt": "2026-03-18T12:00:00Z"
}

POST /subscribe

POST /api/hub/catalogs/{catalogId}/subscribe
Cria uma assinatura ativa. Quando o publisher lança uma nova versão, os produtos assinados recebem atualizações automaticamente (sujeito à sua política de resolução de conflitos).

Corpo da requisição

{
  "targetCatalogName": "Coleção Primavera 2026 (assinatura)",
  "conflictResolution": "manual_review"
}
CampoTipoObrigatórioDescrição
targetCatalogNamestringSimNome para o catálogo assinado no seu workspace
conflictResolutionstringNão"keep_local", "accept_remote" ou "manual_review" (padrão)

Resposta

{
  "subscriptionId": "sub_abc123",
  "catalogId": "cat_new_456",
  "status": "active",
  "subscribedAt": "2026-03-18T12:00:00Z"
}

Exemplos

# Clonar
curl -X POST "https://app.alana.shopping/api/hub/catalogs/hub_cat_9x8k2m/clone" \
  -H "Authorization: Bearer sk_live_sua_chave_api" \
  -H "Content-Type: application/json" \
  -d '{"targetCatalogName": "Coleção Primavera 2026 (cópia)"}'

# Assinar
curl -X POST "https://app.alana.shopping/api/hub/catalogs/hub_cat_9x8k2m/subscribe" \
  -H "Authorization: Bearer sk_live_sua_chave_api" \
  -H "Content-Type: application/json" \
  -d '{"targetCatalogName": "Assinatura Primavera 2026", "conflictResolution": "manual_review"}'
Last modified on March 18, 2026