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

# Obter Contato

> Consulte os dados completos de um contato específico pelo ID

## Endpoint

```
POST https://api.tiny.com.br/api2/contato.obter.php
```

Serviço destinado a consultar um Contato específico dentro do sistema Olist.

## Parâmetros

| Parâmetro | Tipo   | Ocorrência  | Descrição                                   |
| --------- | ------ | ----------- | ------------------------------------------- |
| token     | string | obrigatório | Chave gerada para identificar sua empresa   |
| id        | int    | obrigatório | Número de identificação do contato na Olist |
| formato   | string | obrigatório | Formato do retorno. Use `json`              |

## Retorno

| Campo                         | Tipo    | Tamanho | Ocorrência  | Descrição                                               |
| ----------------------------- | ------- | ------- | ----------- | ------------------------------------------------------- |
| retorno.status\_processamento | int     | -       | obrigatório | Código de status do processamento                       |
| retorno.status                | string  | -       | obrigatório | "OK" ou "Erro"                                          |
| retorno.codigo\_erro          | int     | -       | condicional | Código do erro conforme tabela da API (1)               |
| retorno.erros                 | array   | -       | condicional | Lista de erros ocorridos (1)                            |
| retorno.erros\[].erro         | string  | -       | condicional | Descrição do erro                                       |
| retorno.contato               | object  | -       | condicional | Dados completos do contato (2)                          |
| contato.id                    | int     | -       | condicional | Identificação do contato na Olist                       |
| contato.codigo                | string  | 30      | condicional | Código do contato                                       |
| contato.nome                  | string  | 50      | condicional | Nome ou razão social                                    |
| contato.fantasia              | string  | 60      | condicional | Nome fantasia                                           |
| contato.tipo\_pessoa          | string  | 1       | condicional | F (Física), J (Jurídica), E (Estrangeiro)               |
| contato.cpf\_cnpj             | string  | 18      | condicional | CPF ou CNPJ                                             |
| contato.ie                    | string  | 18      | condicional | Inscrição estadual                                      |
| contato.rg                    | string  | 10      | condicional | RG                                                      |
| contato.im                    | string  | 18      | condicional | Inscrição municipal                                     |
| contato.endereco              | string  | 50      | condicional | Logradouro                                              |
| contato.numero                | string  | 10      | condicional | Número do endereço                                      |
| contato.complemento           | string  | 50      | condicional | Complemento                                             |
| contato.bairro                | string  | 30      | condicional | Bairro                                                  |
| contato.cep                   | string  | 10      | condicional | CEP                                                     |
| contato.cidade                | string  | 30      | condicional | Cidade                                                  |
| contato.uf                    | string  | 30      | condicional | UF                                                      |
| contato.pais                  | string  | 50      | condicional | País                                                    |
| contato.endereco\_cobranca    | string  | 50      | condicional | Endereço de cobrança                                    |
| contato.numero\_cobranca      | string  | 10      | condicional | Número endereço cobrança                                |
| contato.complemento\_cobranca | string  | 50      | condicional | Complemento endereço cobrança                           |
| contato.bairro\_cobranca      | string  | 30      | condicional | Bairro de cobrança                                      |
| contato.cep\_cobranca         | string  | 10      | condicional | CEP de cobrança                                         |
| contato.cidade\_cobranca      | string  | 30      | condicional | Cidade de cobrança                                      |
| contato.uf\_cobranca          | string  | 30      | condicional | UF de cobrança                                          |
| contato.contatos              | string  | 100     | condicional | Pessoas de contato                                      |
| contato.fone                  | string  | 40      | condicional | Telefone                                                |
| contato.fax                   | string  | 40      | condicional | Fax                                                     |
| contato.celular               | string  | 40      | condicional | Telefone celular                                        |
| contato.email                 | string  | 50      | condicional | E-mail                                                  |
| contato.email\_nfe            | string  | 50      | condicional | E-mail para NFe                                         |
| contato.site                  | string  | 40      | condicional | Website                                                 |
| contato.crt                   | string  | 1       | condicional | Código de regime tributário                             |
| contato.estadoCivil           | int     | -       | condicional | Código do estado civil                                  |
| contato.profissao             | string  | 50      | condicional | Profissão                                               |
| contato.sexo                  | string  | 10      | condicional | "masculino" ou "feminino"                               |
| contato.data\_nascimento      | string  | 10      | condicional | Data de nascimento (dd/mm/aaaa)                         |
| contato.naturalidade          | string  | 40      | condicional | Naturalidade                                            |
| contato.nome\_pai             | string  | 100     | condicional | Nome do pai                                             |
| contato.cpf\_pai              | string  | 18      | condicional | CPF do pai                                              |
| contato.nome\_mae             | string  | 100     | condicional | Nome da mãe                                             |
| contato.cpf\_mae              | string  | 18      | condicional | CPF da mãe                                              |
| contato.limite\_credito       | decimal | -       | condicional | Limite de crédito                                       |
| contato.situacao              | string  | 1       | condicional | A (Ativo), E (Excluído), I (Inativo), S (Sem movimento) |
| contato.obs                   | string  | 200     | condicional | Observações gerais                                      |
| contato.id\_lista\_preco      | int     | -       | condicional | ID da lista de preço                                    |
| contato.id\_vendedor          | int     | -       | condicional | ID do vendedor associado                                |
| contato.nome\_vendedor        | string  | 50      | condicional | Nome do vendedor associado                              |
| contato.data\_criacao         | string  | 19      | condicional | Data de criação (dd/mm/aaaa hh:mm:ss)                   |
| contato.data\_atualizacao     | string  | 19      | obrigatório | Data da última atualização (dd/mm/aaaa hh:mm:ss)        |
| contato.tipos\_contato        | array   | -       | condicional | Lista de tipos do contato                               |
| tipos\_contato\[].tipo        | string  | -       | condicional | Tipo do contato (Cliente, Fornecedor, etc.)             |
| contato.pessoas\_contato      | array   | -       | condicional | Lista de pessoas de contato                             |

> (1) Retornado quando status = "Erro"
>
> (2) Retornado quando status = "OK"

## Exemplo de chamada

```bash theme={null}
curl -X POST https://api.tiny.com.br/api2/contato.obter.php \
  -d "token=SEU_TOKEN&formato=json&id=68790116"
```

```php theme={null}
$url = 'https://api.tiny.com.br/api2/contato.obter.php';
$token = 'SEU_TOKEN';
$id = 68790116;
$formato = 'json';
$data = "token=$token&id=$id&formato=$formato";

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);

$resultado = json_decode($response, true);
```

## Exemplo de retorno

### Sucesso

```json theme={null}
{
  "retorno": {
    "status_processamento": "3",
    "status": "OK",
    "contato": {
      "id": "68790116",
      "codigo": "",
      "nome": "Contato Teste 3",
      "fantasia": "",
      "tipo_pessoa": "F",
      "cpf_cnpj": "814.134.138-38",
      "ie": "",
      "rg": "",
      "im": null,
      "endereco": "Rua Teste",
      "numero": "123",
      "complemento": "sala 2",
      "bairro": "Teste",
      "cep": "95.700-000",
      "cidade": "Bento Gonçalves",
      "uf": "RS",
      "pais": "",
      "endereco_cobranca": "",
      "numero_cobranca": "",
      "complemento_cobranca": "",
      "bairro_cobranca": "",
      "cep_cobranca": "",
      "cidade_cobranca": "",
      "uf_cobranca": " ",
      "contatos": "Pessoa Teste",
      "fone": "(54) 3055-3808",
      "fax": "",
      "celular": "",
      "email": "teste@teste.com.br",
      "email_nfe": "",
      "site": "",
      "crt": "0",
      "estadoCivil": "0",
      "profissao": "",
      "sexo": "",
      "data_nascimento": "",
      "naturalidade": "",
      "nome_pai": "",
      "cpf_pai": "",
      "nome_mae": "",
      "cpf_mae": "",
      "limite_credito": 0,
      "situacao": "A",
      "obs": "",
      "data_atualizacao": "21/03/2020 15:14:03",
      "tipos_contato": [
        {
          "tipo": "Cliente"
        },
        {
          "tipo": "Fornecedor"
        }
      ]
    }
  }
}
```

### Erro - Token inválido

```json theme={null}
{
  "retorno": {
    "status_processamento": 1,
    "status": "Erro",
    "codigo_erro": 2,
    "erros": [
      {
        "erro": "token invalido"
      }
    ]
  }
}
```

### Erro - Contato não encontrado

```json theme={null}
{
  "retorno": {
    "status_processamento": 2,
    "status": "Erro",
    "codigo_erro": 32,
    "erros": [
      {
        "erro": "Contato não localizado"
      }
    ]
  }
}
```

## Observações

* O ID do contato pode ser obtido através do endpoint de [pesquisa de contatos](/api-v2/contatos/pesquisar-contatos)
* Campos de pessoa física (estado civil, profissão, etc.) são retornados apenas para contatos do tipo "F"
* Consulte a [tabela de códigos de erro](/api-v2/tabelas/codigos-erros) para interpretação dos erros
