> ## Documentation Index
> Fetch the complete documentation index at: https://docs.avanttifinance.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Editar

> Atualize os dados de um cliente existente

## Visão geral

Este endpoint permite atualizar parcialmente os dados de um cliente já cadastrado. Apenas os campos enviados no corpo da requisição serão alterados.

## Endpoint

<CodeGroup>
  ```bash cURL theme={null}
  curl --request PATCH \
    --url https://api.avanttifinance.com/v1/customers/{customer_id} \
    --header "Authorization: Bearer SEU_TOKEN_DE_ACESSO" \
    --header "Content-Type: application/json" \
    --data '{
      "name": "Maria da Silva Santos",
      "email": "maria.santos@exemplo.com"
    }'
  ```

  ```javascript Node.js theme={null}
  const response = await fetch(
    "https://api.avanttifinance.com/v1/customers/" + customerId,
    {
      method: "PATCH",
      headers: {
        Authorization: \`Bearer \${accessToken}\`,
        "Content-Type": "application/json",
      },
      body: JSON.stringify({
        name: "Maria da Silva Santos",
        email: "maria.santos@exemplo.com",
      }),
    }
  );

  const customer = await response.json();
  console.log(customer);
  ```

  ```python Python theme={null}
  import requests

  url = f"https://api.avanttifinance.com/v1/customers/{customer_id}"
  headers = {
      "Authorization": f"Bearer {access_token}",
      "Content-Type": "application/json",
  }
  payload = {
      "name": "Maria da Silva Santos",
      "email": "maria.santos@exemplo.com",
  }

  response = requests.patch(url, headers=headers, json=payload)
  print(response.json())
  ```
</CodeGroup>

## Parâmetros de path

<ParamField path="customer_id" type="string" required>
  Identificador único do cliente a ser atualizado.
</ParamField>

## Parâmetros do corpo

<ParamField body="name" type="string">
  Novo nome completo do cliente.
</ParamField>

<ParamField body="email" type="string">
  Novo e-mail do cliente.
</ParamField>

<ParamField body="phone" type="string">
  Novo número de telefone, no formato `+55DDDXXXXXXXXX`.
</ParamField>

<ParamField body="metadata" type="object">
  Objeto livre para armazenar informações adicionais relevantes para o seu negócio.
</ParamField>

## Resposta

Retorna o objeto do cliente com os dados atualizados.

```json theme={null}
{
  "id": "cus_3a8f9c1b2d",
  "name": "Maria da Silva Santos",
  "email": "maria.santos@exemplo.com",
  "document": "123.456.789-00",
  "updated_at": "2026-06-11T10:00:00Z"
}
```

<Warning>
  Alterar o e-mail de um cliente não invalida transações já realizadas, mas pode afetar o envio de notificações futuras.
</Warning>

## Erros comuns

| Código HTTP | Significado                               |
| ----------- | ----------------------------------------- |
| 400         | Dados inválidos no corpo da requisição    |
| 401         | Token de autenticação inválido ou ausente |
| 404         | Cliente não encontrado                    |

## Próximos passos

<CardGroup cols={2}>
  <Card title="Listar clientes" icon="user-round-search" href="/listar">
    Consulte todos os clientes cadastrados.
  </Card>

  <Card title="Deletar cliente" icon="user-x" href="/deletar">
    Remova um cliente da sua base.
  </Card>
</CardGroup>
