URL e credenciais da API
A primeira coisa de que você precisa para usar a API do MemberMouse é o URL e as credenciais da API. Na seção MembroMouse menu ir para Ferramentas do desenvolvedor e clique no ícone Guia Credenciais da API. Nesta página, você pode veja seu URL de API e crie e gerencie credenciais de API.
Execução de uma chamada de API
Para fazer uma chamada de API, você precisará fazer uma solicitação ao URL da chamada de API e passar os parâmetros de entrada apropriados. O URL da chamada de API e os parâmetros de entrada variam de acordo com a chamada de API que está sendo feita. Consulte este artigo para obter informações sobre uma lista das chamadas de API no MemberMouse e clique em uma chamada de API para visualizar o URL associado e os parâmetros de entrada.
Faça o download do código de amostra para PHP
Abaixo está um exemplo de chamada de API para criar um novo membro usando o Chamada da API createMember.
Primeiro, estamos definindo os parâmetros de entrada como uma cadeia de pares nome/valor separados por um &
e armazenados no $inputParams
variável.
Em seguida, estamos definindo o URL da chamada de API e inicializando um instância cURL.
Por fim, estamos executando a instância cURL, decodificando o resultado da chamada e armazenando-o em um arquivo $data
e, em seguida, enviando-a para a tela.
$inputParams = "apikey={Sua_API_Key}&apisecret={Sua_API_Secret}&";
$inputParams .= "first_name=Tom&";
$inputParams .= "last_name=Smith&"; $inputParams .= "last_name=Smith&";
$inputParams .= "[email protected]&";
$inputParams .= "phone=(212) 555-7864&";
$inputParams .= "membership_level_id=2&";
$apiCallUrl = "https://{Your_API_URL}?q=/createMember";
$ch = curl_init($apiCallUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $inputParams);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close($ch);
echo "Resposta RAW: ".$result."<br />";
$data = json_decode($result);
echo "<pre>";
var_dump($data->response_data);
echo "</pre>";
Para modificar isso para diferentes chamadas de API, será necessário alterar o URL da chamada de API e os parâmetros de entrada de acordo com a documentação da chamada de API que você está fazendo.
Mod_security Bloqueio de solicitações
Em alguns servidores, você pode descobrir que as chamadas de API estão sendo rejeitadas pelo servidor. Isso geralmente está relacionado a configurações de segurança no servidor, como mod_security. Para contornar esse problema, você pode tentar passar cabeçalhos adicionais para a solicitação cURL para simular que ela vem de um navegador real, como segue:
$headers = array(
'Referrer: http://yourdomain.com',
'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:28.0) Gecko/20100101 Firefox/28.0'
);
curl_setopt($ch,CURLOPT_HTTPHEADER,$headers);
É claro que você deve substituir http://yourdomain.com pelo seu domínio real.
Acesso ao código de resposta
Na solicitação de exemplo acima, o json_decode()
é usado para analisar o objeto de resultado da chamada de API e armazená-lo no $data
variável. Nesse ponto, o código de resposta pode ser acessado da seguinte forma:
$data->response_code;
Veja este artigo para uma lista das chamadas de API no MemberMouse e clique em uma chamada de API para visualizar os códigos de resposta associados.
Acesso aos dados de resposta
Na solicitação de exemplo acima, o json_decode()
é usado para analisar o objeto de resultado da chamada de API e armazená-lo no $data
variável. Nesse ponto, os dados de resposta podem ser acessados da seguinte forma:
$data->response_data->username;
$data->response_data->password (senha);
$data->response_data->email;
Onde nome de usuário
, senha
e e-mail
são parâmetros válidos no objeto de dados de resposta. A lista de parâmetros válidos varia de acordo com a chamada de API feita. Consulte este artigo para obter informações sobre uma lista das chamadas de API no MemberMouse e clique em uma chamada de API para visualizar os dados de resposta associados.