Sync e Conflitos
Gerenciamento de sincronização de assinaturas e resolução de conflitos para catálogos do Marketplace Hub.
Última modificação em 18 de março de 2026
⌘I
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Bem-vindo ao nosso novo hub de docs! Central de Ajuda + Docs para Desenvolvedores em um só lugar.
Gerenciamento de sincronização de assinaturas e resolução de conflitos para catálogos do Marketplace Hub.
POST /api/hub/catalogs/{catalogId}/sync
{
"synced": true,
"newVersion": 6,
"productsUpdated": 12,
"conflictsDetected": 3,
"conflictIds": ["prod_abc", "prod_def", "prod_ghi"]
}
GET /api/workspace/{workspaceId}/catalogs/{catalogId}/conflicts
{
"conflicts": [
{
"productId": "prod_abc",
"field": "price",
"localValue": "79.90",
"remoteValue": "89.90",
"detectedAt": "2026-03-18T10:00:00Z"
}
],
"total": 3
}
PATCH /api/workspace/{workspaceId}/catalogs/{catalogId}/conflicts/{productId}
{
"resolution": "keep_local"
}
| Valor | Descrição |
|---|---|
"keep_local" | Manter o valor do workspace local |
"accept_remote" | Aceitar o valor atualizado do publisher |
# Listar conflitos
curl "https://app.alana.shopping/api/workspace/ws_123/catalogs/cat_456/conflicts" \
-H "Authorization: Bearer sk_live_sua_chave_api"
# Resolver conflito
curl -X PATCH "https://app.alana.shopping/api/workspace/ws_123/catalogs/cat_456/conflicts/prod_abc" \
-H "Authorization: Bearer sk_live_sua_chave_api" \
-H "Content-Type: application/json" \
-d '{"resolution": "accept_remote"}'
// Listar conflitos
const { conflicts } = await fetch(
`https://app.alana.shopping/api/workspace/${workspaceId}/catalogs/${catalogId}/conflicts`,
{ headers: { 'Authorization': `Bearer ${process.env.ALANA_API_KEY}` } }
).then(r => r.json());
// Resolver
for (const conflict of conflicts) {
await fetch(
`https://app.alana.shopping/api/workspace/${workspaceId}/catalogs/${catalogId}/conflicts/${conflict.productId}`,
{
method: 'PATCH',
headers: {
'Authorization': `Bearer ${process.env.ALANA_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({ resolution: 'accept_remote' }),
}
);
}
import requests, os
headers = {"Authorization": f"Bearer {os.environ['ALANA_API_KEY']}"}
base = f"https://app.alana.shopping/api/workspace/{workspace_id}/catalogs/{catalog_id}"
conflicts = requests.get(f"{base}/conflicts", headers=headers).json()["conflicts"]
for c in conflicts:
requests.patch(
f"{base}/conflicts/{c['productId']}",
headers=headers,
json={"resolution": "accept_remote"}
)