Fechar
esqueci a minha senha
criar uma conta

Pesquisar Contatos API 2.0

Serviço destinado a fazer consulta de Contatos.

ElementoTipoOcorrênciaDescrição
tokenstringobrigatórioChave gerada para identificar sua empresa
pesquisastringobrigatórioNome ou código (ou parte) do contato que deseja consultar
formatostringobrigatórioFormato do retorno (json ou xml)
idVendedor (1)intopcionalNúmero de identificação do vendedor no Tiny
nomeVendedor (1) (2)stringopcionalNome do vendedor no Tiny
situacao (3)stringopcionalSituação do contato (Ativo ou Excluido)
pagina (4)intopcionalNúmero da página
dataCriacaostringopcionalData de criação do contato. Formato dd/mm/aaaa hh:mm:ss

(1) - Caso o vendedor não seja localizado no Tiny a consulta não retornará registros.
(2) - Este valor será desconsiderado caso seja informado valor para o parâmetro idVendedor.
(3) - Caso não seja enviado valor neste parâmetro todas as situações serão consideradas.
(4) - Número da página de contatos que deseja obter (por padrão são listados 50 registros por página), caso não seja informado o valor padrão é 1.

ElementoTipoTamanhoOcorrênciaDescrição
retorno object-obrigatórioElemento raiz do retorno
retorno.status_processamentoint-obrigatórioConforme tabela "Status de Processamento"
retorno.statusstring-obrigatórioContém o status do retorno “OK” ou “Erro”. Para o caso de conter erros estes serão descritos abaixo
retorno.codigo_erro (1)int-condicionalConforme tabela "Códigos de erro"
retorno.erros[ ] (1) (3)list -condicional [0..n]Contém a lista dos erros encontrados.
retorno.erros[ ].errostring-condicionalMensagem contendo a descrição do erro
retorno.paginaint-obrigatórioNúmero da página que está sendo retornada
retorno.numero_paginasint-obrigatórioNúmero de paginas do retorno
retorno.contatos[ ] (2)list-condicionalLista de resultados da pesquisa
retorno.contatos[ ].contato (2)object-condicionalElemento utilizado para representar um contato.
retorno.contatos[ ].contato.idint-condicionalNúmero de identificação do contato no Tiny
retorno.contatos[ ].contato.codigostring30condicionalCódigo do contato
retorno.contatos[ ].contato.nomestring50condicionalNome ou razão social do contato
retorno.contatos[ ].contato.fantasiastring30condicionalNome fatansia do contato
retorno.contatos[ ].contato.tipo_pessoastring1condicionalTipo de pessoa (F - Física, J - Jurídica, E - Estrangeiro)
retorno.contatos[ ].contato.cpf_cnpjstring18condicionalCPF ou CNPJ do contato
retorno.contatos[ ].contato.enderecostring50condicionalEndereço do contato
retorno.contatos[ ].contato.numerostring10condicionalNúmero do endereço do contato
retorno.contatos[ ].contato.complementostring50condicionalComplemento do endereço do contato
retorno.contatos[ ].contato.bairrostring30condicionalBairro do contato
retorno.contatos[ ].contato.cepstring10condicionalCep do contato
retorno.contatos[ ].contato.cidadestring30condicionalNome da cidade conforme a Tabela de Cidades
retorno.contatos[ ].contato.ufstring30condicionalUF do contato
retorno.contatos[ ].contato.emailstring50condicionalE-mail do contato
retorno.contatos[ ].contato.fonestring30condicionalFone do contato
retorno.contatos[ ].contato.id_lista_precoint-condicionalNúmero de identificação da lista de preço no Tiny
retorno.contatos[ ].contato.id_vendedorint15condicionalNúmero de identificação do vendedor associado ao contato
retorno.contatos[ ].contato.nome_vendedorint15condicionalNome do vendedor associado ao contato
retorno.contatos[ ].contato.situacaostring15condicionalSituação do Contato (Ativo,Excluido)
retorno.contatos[ ].contato.data_criacaostring19condicionalData de criação do contato. Formato dd/mm/aaaa hh:mm:ss

(1) - Somente estará presente no retorno caso o elemento "status" seja "Erro".
(2) - Somente estará presente no retorno caso o elemento "status" seja "OK".
(3) - Estes campos somente serão informados caso o retorno contenha erros.


$url = 'https://api.tiny.com.br/api2/contatos.pesquisa.php';
$token = 'coloque aqui a sua chave da api';
$pesquisa = 'xxxxx';
$formato = 'XML';
$data = "token=$token&pesquisa=$pesquisa&formato=$formato";

enviarREST($url, $data);

function enviarREST($url, $data, $optional_headers = null) {
	$params = array('http' => array(
		'method' => 'POST',
	    'content' => $data
	));

	if ($optional_headers !== null) {
		$params['http']['header'] = $optional_headers;
	}

	$ctx = stream_context_create($params);
	$fp = @fopen($url, 'rb', false, $ctx);
	if (!$fp) {
		throw new Exception("Problema com $url, $php_errormsg");
	}
	$response = @stream_get_contents($fp);
	if ($response === false) {
		throw new Exception("Problema obtendo retorno de $url, $php_errormsg");
	}

	return $response;
}

$client = new nusoap_client("https://api.tiny.com.br/api2.php?wsdl", true);
$client->soap_defencoding = 'UTF-8';
$client->decode_utf8 = false;

$result = $client->call("pesquisarContatosService", array('token' => 'xxxxx','pesquisa'=>'xxxxx','formato'=>'XML'));

$res = array();
if ($client->fault) {
	$retorno = $result['faultstring'];
} else {
	$err = $client->getError();
	if ($err) {
		$retorno = $err;
	} else {
		$retorno = $result;
	}
}
<?xml version="1.0" encoding="UTF-8"?>
<retorno>
  <status_processamento>1</status_processamento>
  <status>Erro</status>
  <codigo_erro>2</codigo_erro>
  <erros>
    <erro>token invalido</erro>
  </erros>
</retorno>
<?xml version="1.0" encoding="UTF-8"?>
<retorno>
  <status_processamento>2</status_processamento>
  <status>Erro</status>
  <codigo_erro>21</codigo_erro>
  <erros>
    <erro>A consulta retornou mais registros que o permitido</erro>
  </erros>
</retorno>
<?xml version="1.0" encoding="UTF-8"?>
<retorno>
  <status_processamento>3</status_processamento>
  <status>OK</status>
  <pagina>1</pagina>
  <numero_paginas>1</numero_paginas>
  <contatos>
    <contato>
      <id>46829055</id>
      <codigo>123</codigo>
      <nome>Contato Teste</nome>
      <fantasia>Teste</fantasia>
      <tipo_pessoa>F</tipo_pessoa>
      <cpf_cnpj>00000000000</cpf_cnpj>
      <endereco>Rua Teste</endereco>
      <numero>123</numero>
      <complemento>sala 1</complemento>
      <bairro>Centro</bairro>
      <cep>95700-000</cep>
      <uf>RS</uf>
      <email>teste@teste.com.br</email>
      <situacao>Ativo</situacao>
      <id_vendedor>123456</id_vendedor>
      <nome_vendedor>Vendedor Teste</nome_vendedor>
      <data_criacao/>
    </contato>
  </contatos>
</retorno>