Pular para conteúdo

Primeira requisição

1. Valide as credenciais

curl -X POST 'https://xpkedxpjsdgxymjtkwwx.supabase.co/functions/v1/validate-connection' \
  -H 'Authorization: Bearer <CHAVE_PUBLICA_ANON>' \
  -H 'apikey: <CHAVE_PUBLICA_ANON>' \
  -H 'x-affiliate-token: <TOKEN_DO_PARCEIRO>' \
  -H 'x-client-token: <TOKEN_DO_CLIENTE>' \
  -H 'Accept: application/json'

Resposta esperada: {"valid":true,"connection_verified":true,"client":{"name":"Empresa Exemplo"},"affiliate":{"name":"Parceiro Exemplo"}}. A validação confirma os dois tokens, mas não prova relação contratual entre o parceiro e o cliente.

2. Envie um lote

curl -X POST 'https://xpkedxpjsdgxymjtkwwx.supabase.co/functions/v1/ingestao-erp' \
  -H 'Authorization: Bearer <CHAVE_PUBLICA_ANON>' \
  -H 'apikey: <CHAVE_PUBLICA_ANON>' \
  -H 'x-affiliate-token: <TOKEN_DO_PARCEIRO>' \
  -H 'x-client-token: <TOKEN_DO_CLIENTE>' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  --data '{"type":"vendas","data":[{"id_externo":"erp:venda:1:123:1","tipo":"Venda","data_referencia":"2026-07-16","descricao":"Produto exemplo","quantidade":1,"preco_atual":12.99}]}'

Uma resposta de sucesso tem a forma {"success":true,"count":1}. Preserve id_externo nos reenvios para que o upsert atualize a linha em vez de duplicá-la. Registre status e resposta, mas retire tokens e dados pessoais dos logs.

Antes de montar um lote real, consulte o dicionário de campos para verificar os nomes, formatos e efeitos de cada variável.