Skip to main content
PATCH
https://api.affiliatus.io
/
v1
/
affiliates
/
{id}
Atualizar Afiliado
curl --request PATCH \
  --url https://api.affiliatus.io/v1/affiliates/{id} \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <x-api-key>' \
  --data '
{
  "name": "<string>",
  "email": "<string>",
  "phone": "<string>",
  "referralId": "<string>",
  "password": "<string>",
  "status": "<string>"
}
'
{
  "id": 123,
  "name": "<string>",
  "email": "<string>",
  "phone": "<string>",
  "referralId": "<string>",
  "status": "<string>",
  "createdAt": "<string>",
  "totalConversions": 123,
  "totalCommissions": 123,
  "totalPaid": 123
}

Endpoint

PATCH https://api.affiliatus.io/v1/affiliates/{id}
Este endpoint permite atualizar as informações de um afiliado existente. Todos os campos são opcionais - envie apenas os campos que deseja atualizar.
Atualização Parcial: Este é um endpoint PATCH, então você pode enviar apenas os campos que deseja modificar. Os campos não enviados permanecerão inalterados.

Autenticação

X-API-Key
string
required
Sua API key obtida no dashboard em Configurações → API Keys

Path Parameters

id
number
required
ID do afiliado que você deseja atualizar

Body Parameters

name
string
Nome completo do afiliado
email
string
E-mail do afiliado. Deve ser único dentro da campanha.
phone
string
Telefone de contato do afiliado
referralId
string
Código de referência único. Deve ser único globalmente.
Cuidado: Alterar o referralId pode quebrar integrações existentes que usam o código antigo.
password
string
Nova senha para o afiliado. Mínimo de 6 caracteres.A senha será armazenada com hash bcrypt seguro.
status
string
Status do afiliadoValores possíveis:
  • pending - Afiliado aguardando aprovação (auto-cadastro)
  • active - Afiliado ativo (pode gerar conversões)
  • inactive - Afiliado inativo (não gera novas conversões)

Response

id
number
ID único do afiliado
name
string
Nome atualizado do afiliado
email
string
E-mail atualizado do afiliado
phone
string
Telefone atualizado do afiliado
referralId
string
Código de referência atualizado
status
string
Status atualizado do afiliado
createdAt
string
Data de criação original (não muda)
totalConversions
number
Total de conversões
totalCommissions
number
Total de comissões em BRL
totalPaid
number
Total pago em BRL

Exemplos

Atualizar Nome e Telefone

curl -X PATCH "https://api.affiliatus.io/v1/affiliates/123" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: sua_api_key_aqui" \
  -d '{
    "name": "João Silva Santos",
    "phone": "+55 11 98888-8888"
  }'

Resposta de Sucesso (200 OK)

{
  "id": 123,
  "name": "João Silva Santos",
  "email": "[email protected]",
  "phone": "+55 11 98888-8888",
  "referralId": "JOAO123",
  "status": "active",
  "createdAt": "2024-01-15T10:30:00.000Z",
  "totalConversions": 45,
  "totalCommissions": 2500.00,
  "totalPaid": 1200.00
}

Alterar Status (Desativar Afiliado)

curl -X PATCH "https://api.affiliatus.io/v1/affiliates/123" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: sua_api_key_aqui" \
  -d '{
    "status": "inactive"
  }'

Atualizar Senha

curl -X PATCH "https://api.affiliatus.io/v1/affiliates/123" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: sua_api_key_aqui" \
  -d '{
    "password": "nova_senha_segura_123"
  }'
A senha é armazenada com hash bcrypt e nunca é retornada pela API.

Atualizar Múltiplos Campos

curl -X PATCH "https://api.affiliatus.io/v1/affiliates/123" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: sua_api_key_aqui" \
  -d '{
    "name": "João Silva Santos",
    "email": "[email protected]",
    "phone": "+55 11 98888-8888",
    "status": "active"
  }'

Erros

400 - Dados Inválidos

{
  "statusCode": 400,
  "message": [
    "email must be a valid email",
    "password must be at least 6 characters long"
  ],
  "error": "Bad Request"
}
Solução: Corrija os dados conforme as mensagens de erro.

401 - API Key Inválida

{
  "statusCode": 401,
  "message": "Invalid or inactive API Key",
  "error": "Unauthorized"
}
Solução: Verifique se o header X-API-Key está correto.

404 - Afiliado Não Encontrado

{
  "statusCode": 404,
  "message": "Affiliate not found",
  "error": "Not Found"
}
Solução: Verifique se o ID está correto e se o afiliado pertence à sua campanha.
Segurança: A API não revela se um afiliado existe em outra campanha por motivos de segurança.

409 - E-mail ou Referral ID Não Disponível

{
  "statusCode": 409,
  "message": "Email is not available",
  "error": "Conflict"
}
ou
{
  "statusCode": 409,
  "message": "Referral ID is not available",
  "error": "Conflict"
}
Solução: Use um e-mail ou referralId diferente.
Segurança: As mensagens não revelam se o conflito é dentro da sua campanha ou em outra.

429 - Rate Limit

{
  "statusCode": 429,
  "message": "ThrottlerException: Too Many Requests",
  "error": "Too Many Requests"
}
Solução: Aguarde 60 segundos.

Casos de Uso

Mantenha os dados do afiliado sincronizados com seu CRM atualizando automaticamente quando houver mudanças.
Permita que afiliados atualizem seus próprios dados de contato via sua interface.
Ative ou desative afiliados conforme necessário sem perder o histórico de conversões.
Implemente funcionalidade de “esqueci minha senha” atualizando a senha via API.
Corrija rapidamente informações incorretas de afiliados.

Boas Práticas

Como é um PATCH, envie apenas os campos que realmente mudaram. Isso economiza banda e é mais eficiente.
Consulte o afiliado antes de atualizar para verificar se ele existe e obter os dados atuais.
Alterar o referralId pode quebrar links de rastreamento existentes. Considere isso antes de mudar.
Prefira desativar afiliados (status: inactive) ao invés de deletá-los para manter o histórico.
Ao atualizar senhas, garanta que atendem critérios de segurança adequados.

Próximos Passos