A interface de serviços da @MediaPost provê uma API RESTFul para efetuar operações e consultas na sua conta facilitando a integração com as mais diversas aplicações.
A API possui um sistema de autenticação e toda operação é registrada para maior segurança e rastreabilidade.
Aqui você encontrará todas as informações necessárias para integrar seu sistema com sua conta @MediaPost.
Para conectar-se à sua conta através da API precisará das 4 chaves abaixo:
A solicitação destas deve ser realizada através da Cental de Chamados na própria conta.
Se for cliente, acesse sua conta, clique no menu Suporte, depois em Meus chamados e, por último, clique no botão Novo chamado. Através dele solicite as chaves de integração via API.
A API utiliza o OAuth 1.0 para efetuar a autenticação de clientes, por ser um formato aberto, de ampla utilização e mais seguro do que o Basic-Auth do HTTP.
A autenticação será feita utilizando uma consumer key, consumer secret, token e token secret que serão fornecidos no momento da solicitação das credenciais.
Utilizamos autenticação OAuth com o suporte a assinatura HMAC-SHA1, neste caso o cliente do serviço deve enviar na requisição os parâmetros oauth_signature e oauth_signature_method, conforme a especificação do protocolo.
Mais informações sobre o protocolo OAuth poderão ser encontradas no site oauth.net (inglês)
Todos os recursos suportam o envio de respostas nos formatos JSON e XML, sendo JSON o formato padrão. Para obter a resposta basta enviar na requisição HTTP um cabeçalho Accept:
Accept: application/json
Accept: application/xml
Accept: application/php
Toda resposta possui um bloco response padrão com os campos:
Para operações de criação/alteração de informações é sempre retornada uma resposta num formato padrão:
{ "response" : { "status" : 200, "message" : "Mensagem", "error" : false }, "usuarios": [ {"codigo": 1, "nome": "Zé" }, {"codigo": 2, "nome": "Felipe" }, ] }
<iso_response> <response> <status>200</status> <message>Mensagem</status> <error>false</error> <cod_erro>0</cod_erro> </response> </iso_response>
Em adição ao bloco response podem ser retornados outros blocos, que estarão especificados na documentação dos produtos.
Diversos métodos de consultas costumam retornar listas de valores. Isto pode causar algumas diferenças dependendo do formato de resposta solicitado. Conforme mostrado a seguir.
No JSON os valores que são listas de itens são encodados como arrays, como no exemplo abaixo:
{ "response" : { "status" : 200, "message" : "Mensagem", "error" : false }, "usuarios": [ { "codigo": 1, "nome": "Zé" }, { "codigo": 2, "nome": "Felipe" } ] }
No XML as listas tem um comportamento um pouco diferente, elas são encapsuladas numa tag list [nome_campo] que contém X blocos [nome_campo], assim:
<iso_response> <response> <status>200</status> <message>Mensagem</status> <error>false</error> </response> <list_usuario> <usuario> <codigo>1</codigo> <nome>Zé</nome> </usuario> <usuario> <codigo>2</codigo> <nome>Felipe</nome> </usuario> </list_usuario> </iso_response>
As datas e intervalos de tempo utilizados (tanto em requisições quanto em respostas) devem estar no formato ISO-8601, por exemplo, uma ordem efetuada em 25 de maio de 2010 será retornada como:
Para um valor que seja retornado como data e hora, temos:
Para intervalos na norma ISO-8601, temos:
Você pode baixar nosso Cliente PHP e utilizá-lo em seu projeto. Para isso, acesse o endereço abaixo:
https://github.com/MediaPost/api-client-php/releases/latest
Você também pode instalá-lo via Composer:
Altere o require de seu composer.json
e baixe a dependência com composer update mediapost/api-client-php
:
{ "require": { "mediapost/api-client-php": "^1.1.0" } }
Ou adicione diretamente a dependência com composer require mediapost/api-client-php:^1.1.0
Mais informações em:
https://github.com/MediaPost/api-client-php
Abaixo você encontrará todos os recursos disponíveis para gerenciar sua conta:
Este recurso retorna o saldo disponível para envios da conta
Este saldo pode alterar caso existam envios agendados ou em andamento
https://api.mediapost.com.br/envio/limite
GET
try { $arrResult = $mapi->get('envio/limite'); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=4) 'saldo' => string '101023' (length=6) 'banda' => int 10102300 'str_saldo' => string '101.023 envios' (length=14) 'str_banda' => string '9.865,53 Mb' (length=11)
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna o saldo disponível para envios do usuário
Este saldo pode alterar caso existam envios agendados ou em andamento
https://api.mediapost.com.br/envio/limite/usuario/[_usuario_]
GET
$usuario = 3; try { $arrResult = $mapi->get("envio/limite/usuario/" . $usuario); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=2) 'id_usuario' => int 3 'saldo' => int 5000
Parâmetros obrigatórios
Parâmetros opcionais
Abaixo você encontrará todos os recursos disponíveis para gerenciar os contatos de sua conta:
Este recurso retorna todos os campos disponíveis para um contato
https://api.mediapost.com.br/contato/campos
GET
try { $arrResult = $mapi->get('contato/campos'); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=21) 'sexo' => string 'Sexo' (length=4) 'endereco' => string 'Logradouro' (length=10) 'cep' => string 'CEP' (length=3) 'telefone' => string 'Telefone' (length=8) 'celular' => string 'Celular' (length=7) 'nome' => string 'Nome' (length=4) 'email' => string 'Identificador' (length=13) 'estado' => string 'Estado' (length=6) 'data_nascimento' => string 'Data de Nascimento' (length=18) 'cidade' => string 'Cidade' (length=6) 'bairro' => string 'Bairro' (length=6) 'empresa' => string 'Empresa' (length=7) 'cargo' => string 'Cargo' (length=5) 'livre1' => string 'E-mail' (length=6) 'livre2' => string 'Campo Livre 2' (length=13) 'livre3' => string 'Campo Livre 3' (length=13) 'livre4' => string 'Campo Livre 4' (length=13) 'livre5' => string 'Campo Livre 5' (length=13) 'livre6' => string 'Campo Livre 6' (length=13) 'livre7' => string 'Campo Livre 7' (length=13) 'livre8' => string 'Campo Livre 8' (length=13)
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna as informações de um contato baseado no código (ID)
https://api.mediapost.com.br/contato/cod/[_cod_contato_]
GET
$contato = 1; try { $arrResult = $mapi->get("contato/cod/" . $contato); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=27) 'cod' => string '1' (length=1) 'nome' => string 'Pedro' (length=24) 'email' => string 'pedro@dominio.com.br' (length=18) 'livre1' => string '' (length=0) 'livre2' => string '' (length=0) 'livre3' => string '' (length=0) 'livre4' => string '' (length=0) 'livre5' => string '' (length=0) 'livre6' => string '' (length=0) 'livre7' => string '' (length=0) 'livre8' => string '' (length=0) 'bairro' => string '' (length=0) 'cargo' => string '' (length=0) 'celular' => string '' (length=0) 'cep' => string '' (length=0) 'cidade' => string '' (length=0) 'data_nascimento' => string '' (length=0) 'empresa' => string '' (length=0) 'endereco' => string '' (length=0) 'estado' => string '' (length=0) 'fax' => string '' (length=0) 'observacao' => string '' (length=0) 'pais' => string '' (length=0) 'ramo_atividade' => string '' (length=0) 'sexo' => string '' (length=0) 'tel_comercial' => string '' (length=0) 'telefone' => string '' (length=0)
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna as informações de um contato baseado no endereço de e-mail
https://api.mediapost.com.br/contato/email/[_email_]
GET
$contato = "pedro@dominio.com.br"; try { $arrResult = $mapi->get("contato/email/" . $contato); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=27) 'cod' => string '1' (length=6) 'nome' => string 'Pedro' (length=12) 'email' => string 'pedro@dominio.com.br' (length=21) 'livre1' => string '' (length=0) 'livre2' => string '' (length=0) 'livre3' => string '' (length=0) 'livre4' => string '' (length=0) 'livre5' => string '' (length=0) 'livre6' => string '' (length=0) 'livre7' => string '' (length=0) 'livre8' => string '' (length=0) 'bairro' => string '' (length=0) 'cargo' => string '' (length=0) 'celular' => string '' (length=0) 'cep' => string '' (length=0) 'cidade' => string '' (length=0) 'data_nascimento' => string '' (length=0) 'empresa' => string '' (length=0) 'endereco' => string '' (length=0) 'estado' => string '' (length=0) 'fax' => string '' (length=0) 'observacao' => string '' (length=0) 'pais' => string '' (length=0) 'ramo_atividade' => string '' (length=0) 'sexo' => string '' (length=0) 'tel_comercial' => string '' (length=0) 'telefone' => string '' (length=0)
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna as informações de múltiplos contatos baseado no endereço de e-mail
Caso o contato não exista, será retornado o valor false
https://api.mediapost.com.br/contato/fetch
POST
$array_emails = array( 'email' => http_build_query( array( "pedro@dominio.com.br", "inexistente@dominio.com.br" ), '', '&' ) ); try { $arrResult = $mapi->post("contato/fetch", $array_emails); var_dump($arrResult); } catch (MapiException $e){ throw $e; }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=2) 'pedro@dominio.com.br' => array (size=27) 'cod' => string '1' (length=1) 'nome' => string 'Pedro' (length=12) 'email' => string 'pedro@dominio.com.br' (length=21) 'livre1' => string '' (length=0) 'livre2' => string '' (length=0) 'livre3' => string '' (length=0) 'livre4' => string '' (length=0) 'livre5' => string '' (length=0) 'livre6' => string '' (length=0) 'livre7' => string '' (length=0) 'livre8' => string '' (length=0) 'bairro' => string '' (length=0) 'cargo' => string '' (length=0) 'celular' => string '' (length=0) 'cep' => string '' (length=0) 'cidade' => string '' (length=0) 'data_nascimento' => string '' (length=0) 'empresa' => string '' (length=0) 'endereco' => string '' (length=0) 'estado' => string '' (length=0) 'fax' => string '' (length=0) 'observacao' => string '' (length=0) 'pais' => string '' (length=0) 'ramo_atividade' => string '' (length=0) 'sexo' => string '' (length=0) 'tel_comercial' => string '' (length=0) 'telefone' => string '' (length=0) 'inexistente@dominio.com.br' => array (size=27) 'cod' => string '2' (length=1) 'nome' => string '' (length=0) 'email' => string 'inexistente@dominio.com.br' (length=23) 'livre1' => string '' (length=0) 'livre2' => string '' (length=0) 'livre3' => string '' (length=0) 'livre4' => string '' (length=0) 'livre5' => string '' (length=0) 'livre6' => string '' (length=0) 'livre7' => string '' (length=0) 'livre8' => string '' (length=0) 'bairro' => string '' (length=0) 'cargo' => string '' (length=0) 'celular' => string '' (length=0) 'cep' => string '' (length=0) 'cidade' => string '' (length=0) 'data_nascimento' => string '' (length=0) 'empresa' => string '' (length=0) 'endereco' => string '' (length=0) 'estado' => string '' (length=0) 'fax' => string '' (length=0) 'observacao' => string '' (length=0) 'pais' => string '' (length=0) 'ramo_atividade' => string '' (length=0) 'sexo' => string '' (length=0) 'tel_comercial' => string '' (length=0) 'telefone' => string '' (length=0)
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso grava um contato na ferramenta @MediaPost
É recomentado que essa operação seja feita em lotes de no máximo 500 contatos por vez para que a conexão não atinga o tempo limite
https://api.mediapost.com.br/contato/salvar
PUT
$arrContato = array(); $arrContato['lista'] = 576; $arrContato['contato'][0]['email'] = "pedro@dominio.com.br"; $arrContato['contato'][0]['uidcli'] = 1; try { $arrResult = $mapi->put("contato/salvar", $arrContato); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=1) 0 => array (size=3) 'uidcli' => string '1' (length=1) 'cod' => int 187424 'email' => string 'pedro@dominio.com.br' (length=20)
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso atualiza o cadastro de um contato na ferramenta @MediaPost
A atualização é baseada no endereço de e-mail do contato
É recomentado que essa operação seja feita em lotes de no máximo 500 contatos por vez para que a conexão não atinga o tempo limite
https://api.mediapost.com.br/contato/salvar
PUT
$arrContato = array(); $arrContato['lista'] = 576; $arrContato['contato'][0]['email'] = "pedro@dominio.com.br"; $arrContato['contato'][0]['uidcli'] = 1; $arrContato['contato'][0]['nome'] = "Pedro"; try { $arrResult = $mapi->put("contato/salvar", $arrContato); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=1) 0 => array (size=4) 'uidcli' => null 'cod' => int 187424 'email' => string 'pedro@dominio.com.br' (length=20) 'nome' => string 'Pedro' (length=5)
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso remove o vínculo do contato com todas as listas existentes na ferramenta @MediaPost
O contato permanecerá no banco de dados da conta sem vínculo com as listas e deixará de ser exibido na interface da ferramenta
https://api.mediapost.com.br/contato/cod/[_cod_contato_]
DELETE
$contato = 1; try { $arrResult = $mapi->delete("contato/cod/" . $contato); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
O contato 187424 foi excluído!
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso cria um bloqueio de envio para um endereço de e-mail na ferramenta @MediaPost
O contato permanecerá no banco de dados da conta, mas nenhuma mensagem será enviada para ele
https://api.mediapost.com.br/contato/bloqueio
PUT
$arrContato = array( "email" => array( 'teste@teste.com.br', 'teste2@teste.com.br', 'teste3@teste.com.br' ) ); try { $result = $mapi->put('contato/bloqueio', $arrContato); var_dump($result); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=1) 'email' => array (size=3) 'teste@teste.com.br' => boolean true 'teste2@teste.com.br' => boolean true 'teste3@teste.com.br' => boolean true
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso remove o bloqueio de um contato para que este possa receber as mensagens enviadas pela ferramenta @MediaPost
https://api.mediapost.com.br/contato/bloqueio/remover
PUT
$arrContato = array( "email" => array( 'teste1@teste.com.br', 'teste2@teste.com.br', 'teste3@teste.com.br' ) ); try { $result = $mapi->put('contato/bloqueio/remover', $arrContato); var_dump($result); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=1) 'email' => array (size=3) 'teste1@teste.com.br' => boolean true 'teste2@teste.com.br' => boolean true 'teste3@teste.com.br' => boolean true
Parâmetros obrigatórios
Parâmetros opcionais
Abaixo você encontrará todos os recursos disponíveis relacionados às listas de contatos:
Este recurso retorna todas listas existentes em sua conta @MediaPost
https://api.mediapost.com.br/lista/all
GET
$paginacao = array(0,9); try { $arrResult = $mapi->get("lista/all", null, [ Mapi\Request\Config::RANGE => $paginacao ]); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 30 protected 'data' => array (size=7) 0 => array (size=5) 'cod' => string '576' (length=3) 'nome' => string 'Wordpress' (length=9) 'total' => string '1' (length=1) 'total_ativo' => string '1' (length=1) 'total_inativo' => string '0' (length=1) 1 => array (size=5) 'cod' => string '581' (length=3) 'nome' => string 'InboxMONITOR' (length=12) 'total' => string '40' (length=2) 'total_ativo' => string '40' (length=2) 'total_inativo' => string '0' (length=1)
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna as informações de uma lista existente em sua conta @MediaPost
https://api.mediapost.com.br/lista/cod/[_cod_lista_]
GET
$lista = 588; try { $arrResult = $mapi->get("lista/cod/" . $lista); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=5) 'cod' => string '588' (length=3) 'nome' => string 'api' (length=3) 'total' => string '5' (length=1) 'total_ativo' => string '5' (length=1) 'total_inativo' => string '0' (length=1)
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso cria uma nova lista de contatos em sua conta @MediaPost
https://api.mediapost.com.br/lista/salvar
POST
$arrLista['nome'] = 'Minha lista de contatos'; try { $arrResult = $mapi->post('lista/salvar', $lista); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=5) 'cod' => string '590' (length=3) 'nome' => string 'Lista criada via API' (length=20) 'total' => null 'total_ativo' => null 'total_inativo' => null
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso exclui uma lista de contatos baseado no código (ID)
https://api.mediapost.com.br/lista/cod/[_cod_lista_]
DELETE
$lista = 1; try { $arrResult = $mapi->delete("lista/cod/" . $lista); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Exception)[5] protected 'result' => array (size=3) 'message' => string 'Operação executada com sucesso!' (length=31) 'type' => string 'MapiException' (length=13) 'code' => int 500 protected 'message' => string '500 - Operação executada com sucesso!' (length=37) private 'string' (Exception) => string '' (length=0) protected 'code' => int 500 protected 'file' => string '/udev/mediapost.com.br/vendor/mediapost/api-client-php/src/Response.php' (length=71) protected 'line' => int 61 private 'trace' (Exception) => ...
Parâmetros obrigatórios
Parâmetros opcionais
Abaixo você encontrará todos os recursos disponíveis relacionados às mensagens:
Este recurso cria uma nova mensagem em sua conta @MediaPost
https://api.mediapost.com.br/mensagem/salvar
PUT
$arrMensagem['remetente']['nome'] = "Pedro Silva"; $arrMensagem['remetente']['email'] = "pedro@dominio.com.br"; $arrMensagem['mensagem']['assunto'] = "Insira aqui o assunto de sua mensagem"; $arrMensagem['mensagem']['html'] = 'Insira aqui todo o código HTML de sua mensagem'; $arrMensagem['pasta'] = "API"; // Ou $arrMensagem['id_campanha'] = 38; try { $arrResult = $mapi->put('mensagem/salvar', $arrMensagem); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=2) 0 => array (size=1) 'cod' => int 7621 1 => array (size=1) 'uidcli' => null
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso altera as informações e conteúdo de uma mensagem salva em sua conta @MediaPost
https://api.mediapost.com.br/mensagem/salvar
PUT
$arrMensagem['cod'] = 7508; $arrMensagem['remetente']['nome'] = "Pedro Silva"; $arrMensagem['remetente']['email'] = "pedro@dominio.com.br"; $arrMensagem['mensagem']['assunto'] = "Insira aqui o assunto de sua mensagem"; $arrMensagem['mensagem']['html'] = 'Insira aqui todo o código HTML de sua mensagem'; $arrMensagem['pasta'] = "API"; // Ou $arrMensagem['id_campanha'] = 38; try { $arrResult = $mapi->put('mensagem/salvar', $arrMensagem); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=2) 0 => array (size=1) 'cod' => int 7622 1 => array (size=1) 'uidcli' => null
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso lista as últimas mensagens criadas em sua conta @MediaPost
https://api.mediapost.com.br/mensagem/listar
POST
$paginacao = array(0, 9); try { $arrResult = $mapi->post("mensagem/listar", null, [ Mapi\Request\Config::RANGE => $paginacao ]); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 25 protected 'data' => array (size=2) 7622 => array (size=7) 'cod' => string '7622' (length=4) 'status' => string '1' (length=1) 'status_nome' => string 'Aguardando Envio' (length=16) 'nome' => string '18/01/2017 - Mensagem teste via API' (length=35) 'titulo' => string 'Mensagem teste via API' (length=22) 'data' => null 'codPasta' => string '48' (length=2) 7621 => array (size=7) 'cod' => string '7621' (length=4) 'status' => string '1' (length=1) 'status_nome' => string 'Aguardando Envio' (length=16) 'nome' => string '18/01/2017 - Mensagem teste via API' (length=35) 'titulo' => string 'Mensagem teste via API' (length=22) 'data' => null 'codPasta' => string '48' (length=2)
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna as informações de uma mensagem, inclusive, data e hora de envio, caso ela já tenha sido disparada
https://api.mediapost.com.br/mensagem/cod/[_cod_mensagem_]
GET
$mensagem = 7622; try { $arrResult = $mapi->get("mensagem/cod/" . $mensagem); var_dump($arrResult); } catch (Exception $e){ var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=10) 'cod' => string '7622' (length=4) 'cod_estado' => string '1' (length=1) 'desc_estado' => string 'Aguardando Envio' (length=16) 'nome' => string '18/01/2017 - Mensagem teste via API' (length=35) 'titulo' => string 'Mensagem teste via API' (length=22) 'remetente' => string '"Ademir"' (length=34) 'data' => null 'codPasta' => string '48' (length=2) 'enviada' => null 'consolidada' => string '0' (length=1)
Parâmetros obrigatórios
Parâmetros opcionais
Abaixo você encontrará todos os recursos disponíveis para gerenciar os envios:
Este recurso realiza o envio de uma mensagem imediatamente
Você pode definir filtros e enviar sua mensagem para um público específico de suas listas de contatos
https://api.mediapost.com.br/envio/cod/[_cod_mensagem_]
PUT
$arrEnvio['lista'][] = 749; $mensagem = 398; $arrEnvio['filtro']['dominio'][] = "gmail.com, hotmail.com"; $arrEnvio['filtro']['sexo'][] = "M"; $arrEnvio['filtro']['mes_aniversario'][] = "3"; try { $arrResult = $mapi->put("envio/cod/" . $mensagem, $arrEnvio); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=1) 'cod_agenda' => string '576148' (length=6)
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso agenda o envio de uma mensagem para uma data e hora definidas
Você pode definir filtros e enviar sua mensagem para um público específico de suas listas de contatos
https://api.mediapost.com.br/envio/cod/[_cod_mensagem_]
PUT
$arrEnvio['lista'][] = 749; $mensagem = 398; $arrEnvio['datahora_envio'] = "2018-01-01 10:00:00"; $arrEnvio['filtro']['dominio'][] = "gmail.com, hotmail.com"; $arrEnvio['filtro']['sexo'][] = "M"; $arrEnvio['filtro']['mes_aniversario'][] = "3"; try { $arrResult = $mapi->put("envio/cod/" . $mensagem, $arrEnvio); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=1) 'cod_agenda' => string '576149' (length=6)
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso cancela o envio de uma mensagem
Ele também pode ser utilizado para cancelar o envio de uma mensagem agendada, porém não será possível reenviar a mesma mensagem após cancelada
https://api.mediapost.com.br/envio/cancelar/cod/[_cod_mensagem_]
GET
$mensagem = 7509; try { $arrResult = $mapi->get("envio/cancelar/cod/" . $mensagem); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
O envio da mensagem 7509 foi cancelado!
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso realiza um envio de teste de uma mensagem ainda não disparada/agendada
https://api.mediapost.com.br/envio/teste/cod/[_cod_mensagem_]
PUT
$mensagem = 7510; $emails["email"] = array( "pedro@dominio.com.br", "lucas@dominio.com.br" ); try { $arrResult = $mapi->put("envio/teste/cod/" . $mensagem, $emails); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=1) 'cod_agenda' => string '576153' (length=6)
Parâmetros obrigatórios
Parâmetros opcionais
Abaixo você encontrará todos os recursos disponíveis para buscar os resultados de seus envios:
Este recurso retorna o status de um envio e seus números
https://api.mediapost.com.br/resultado/cod/[_cod_mensagem_]
GET
$mensagem = 7620; try { $arrResult = $mapi->get("resultado/cod/" . $mensagem); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 0 protected 'data' => array (size=3) 'estat' => array (size=29) 'id_cons_mensagem' => string '1414' (length=4) 'id_mensagem' => int 7620 'qtde_abertura' => int 1 'qtde_abertura_unico' => int 1 'qtde_clique' => int 0 'qtde_clique_unico' => int 0 'qtde_encaminhado' => int 0 'qtde_atualizado' => int 0 'qtde_cancelado' => int 0 'qtde_devolvido' => int 0 'qtde_entregue' => int 1 'ret_anti_spam' => int 0 'ret_caixa_cheia' => int 0 'ret_dominio_inexistente' => int 0 'ret_tempo_entrega' => int 0 'ret_usuario_inexistente' => int 0 'ret_padrao' => int 0 'tempo_total' => string '00:00:21' (length=8) 'tempo_abertura' => string '00:00:21' (length=8) 'tempo_contato' => string '00:00:21' (length=8) 'datahora' => string '2017-01-19 10:13:59' (length=19) 'qtde_agendado' => int 1 'qtde_enviado' => int 1 'qtde_bloqueado' => int 0 'qtde_credito' => int 0 'qtde_banda' => int 2576 'qtde_abertura_qualificada' => int 1 'qtde_spam' => int 0 'qtde_sem_interacao' => int 0 'consolidada' => boolean false 'envio' => array (size=8) 'qtde_agendado' => int 1 'qtde_enviado' => int 1 'qtde_banda' => int 2576 'qtde_bloqueado' => int 0 'qtde_selecionado' => int 1 'qtde_cancelado' => int 0 'qtde_entregue' => int 1 'qtde_sem_interacao' => int 0
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna a lista de contatos que abriram a mensagem
https://api.mediapost.com.br/resultado/abertura/cod/[_cod_mensagem_]
GET
$mensagem = 7620; $paginacao = array(0, 9); $params = array( 'data_inicio' => '2019-01-01T00:00:00', 'data_fim' => '2019-01-01T23:59:59' ); try { $arrResult = $mapi->get("resultado/abertura/cod/" . $mensagem, $params, [ Mapi\Request\Config::RANGE => $paginacao ]); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 300 protected 'data' => array (size=2) 'estat' => array (size=2) 'qtde_abertura' => int 300 'qtde_abertura_unico' => int 1 'abertura' => array (size=1) 0 => array (size=5) ...
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna a lista de contatos que clicaram em algum link da mensagem
https://api.mediapost.com.br/resultado/clique/cod/[_cod_mensagem_]
GET
$mensagem = 50; $paginacao = array(0, 9); $params = array( 'data_inicio' => '2019-01-01T00:00:00', 'data_fim' => '2019-01-01T23:59:59' ); try { $arrResult = $mapi->get("resultado/clique/cod/" . $mensagem, $params, [ Mapi\Request\Config::RANGE => $paginacao ]); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 300 protected 'data' => array (size=2) 'estat' => array (size=2) 'qtde_clique' => int 300 'qtde_clique_unico' => int 11 'clique' => array (size=11) 0 => array (size=5) ... 1 => array (size=5) ...
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna a relação de todos os e-mails que foram devolvidos pelo servidor de destino separados por motivo
https://api.mediapost.com.br/resultado/devolvido/cod/[_cod_mensagem_]
GET
$mensagem = 50; $paginacao = array(0, 9); $params = array( 'data_inicio' => '2019-01-01T00:00:00', 'data_fim' => '2019-01-01T23:59:59' ); try { $arrResult = $mapi->get("resultado/devolvido/cod/" . $mensagem, $params, [ Mapi\Request\Config::RANGE => $paginacao ]); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 300 protected 'data' => array (size=7) 'estat' => array (size=7) 'qtde_devolvido' => int 300 'ret_anti_spam' => int 53 'ret_caixa_cheia' => int 11 'ret_dominio_inexistente' => int 2 'ret_tempo_entrega' => int 72 'ret_usuario_inexistente' => int 30 'ret_padrao' => int 39 'ret_padrao' => array (size=37) 0 => array (size=4) ... 'ret_anti_spam' => array (size=48) 0 => array (size=4) ... 'ret_tempo_entrega' => array (size=71) 0 => array (size=4) ... 'ret_usuario_inexistente' => array (size=26) 0 => array (size=4) ... 'ret_caixa_cheia' => array (size=11) 0 => array (size=4) ... 'ret_dominio_inexistente' => array (size=2) 0 => array (size=4) ...
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna a lista de contatos que atualizaram o cadastro
https://api.mediapost.com.br/resultado/atualizado/cod/[_cod_mensagem_]
GET
$mensagem = 769; $paginacao = array(0, 9); $params = array( 'data_inicio' => '2019-01-01T00:00:00', 'data_fim' => '2019-01-01T23:59:59' ); try { $arrResult = $mapi->get("resultado/atualizado/cod/" . $mensagem, $params, [ Mapi\Request\Config::RANGE => $paginacao ]); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 300 protected 'data' => array (size=2) 'estat' => array (size=1) 'qtde_atualizado' => int 300 'atualizado' => array (size=3) 0 => array (size=4) ...
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna a lista de contatos que cancelaram o cadastro (Opt Out)
https://api.mediapost.com.br/resultado/cancelado/cod/[_cod_mensagem_]
GET
$mensagem = 749; $paginacao = array(0, 9); $params = array( 'data_inicio' => '2019-01-01T00:00:00', 'data_fim' => '2019-01-01T23:59:59' ); try { $arrResult = $mapi->get("resultado/cancelado/cod/" . $mensagem, $params, [ Mapi\Request\Config::RANGE => $paginacao ]); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 300 protected 'data' => array (size=2) 'estat' => array (size=1) 'qtde_cancelado' => int 300 'cancelamento' => array (size=3) 0 => array (size=4) ...
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna a lista de contatos que encaminharam a mensagem e para quem ela foi encaminhada
https://api.mediapost.com.br/resultado/encaminhado/cod/[_cod_mensagem_]
GET
$mensagem = 749; $paginacao = array(0, 9); $params = array( 'data_inicio' => '2019-01-01T00:00:00', 'data_fim' => '2019-01-01T23:59:59' ); try { $arrResult = $mapi->get("resultado/encaminhado/cod/" . $mensagem, $params, [ Mapi\Request\Config::RANGE => $paginacao ]); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[6] protected 'totalCount' => int 300 protected 'data' => array (size=2) 'estat' => array (size=1) 'qtde_encaminhado' => int 300 'encaminhado' => array (size=1) 0 => array (size=6) ...
Parâmetros obrigatórios
Parâmetros opcionais
Este recurso retorna a lista de contatos para os quais a mensagem não foi enviada por este possuir algum tipo de bloqueio.
Os possíveis bloqueios são:
Este recurso possui paginação.
https://api.mediapost.com.br/resultado/bloqueado/cod/[_cod_mensagem_]
GET
$mensagem = 749; $paginacao = array(0,9); $params = array( 'data_inicio' => '2019-01-01T00:00:00', 'data_fim' => '2019-01-01T23:59:59' ); try { $arrResult = $mapi->get("resultado/bloqueado/cod/" . $mensagem, $params, [ Mapi\Request\Config::RANGE => $paginacao ]); var_dump($arrResult); } catch (Exception $e) { var_dump($e); }
object(Mapi\Response)[5] protected 'totalCount' => int 300 protected 'data' => array (size=2) 'estat' => array (size=1) 'qtde_bloqueado' => int 300 'bloqueado' => array (size=10) 0 => array (size=4) ...
Parâmetros obrigatórios
Parâmetros opcionais
Abaixo você encontrará uma lista com todos os códigos e descrições dos erros que a API pode retornar:
Código | Mensagem |
---|---|
1 | URL não encontrada |
2 | Cliente não reconhecido |
3 | Resposta inválida |
100 | Erro desconhecido |
125 | Conta não encontrada |
126 | Dados fora do padrão JSON |
127 | Contato não encontrado |
231 | Lista não informada |
232 | Lista informada não existe |
233 | Nenhuma lista não foi encontrada |
234 | Informe um nome para a lista |
235 | Erro ao criar a lista |
341 | Não foi possível encontrar a pasta informada |
342 | Você deve informar uma pasta |
343 | O remetente não pode ser usado |
344 | Não foi possível gravar o remetente |
345 | Mensagem sem assunto |
346 | Mensagem sem um texto em formato HTML |
347 | Não foi possível salvar a mensagem |
451 | Informe ao menos uma lista para envio |
452 | A mensagem foi excluída e não pode ser enviada. |
453 | A mensagem já foi enviada anteriormente |
454 | A mensagem não possui um remetente configurado |
455 | Com essa configuração de envio nenhum e-mail será enviado |
456 | Você não possui créditos suficientes para realizar esse envio |
457 | Erro ao agendar a mensagem |
458 | Informe o código da mensagem que deseja enviar |
459 | Erro ao cancelar o envio |
480 | Usuário ou senha inválidos |
Baixe o client e exemplos de uso de cada recurso da API em PHP
Baixar exemplosDatas e observações das atualizações da API ou documentação:
Data | Tipo | Descrição |
---|---|---|
05/05/2017 | Atualização | Inclusão da paginação nos recursos Listar listas, Listar mensagens, Resultados/Aberturas, Resultados/Cliques, Resultados/Devoluções, Resultados/Atualizações, Resultados/Cancelamentos, Resultados/Encaminhamentos. |
10/03/2017 | Inclusão | Inclusão do recurso Excluir lista. |
19/01/2017 | Inclusão e Atualização | Inclusão dos recursos Bloquear contato, Remove bloqueio de contato e Bloqueados, atualização do Client PHP e atualização dos arquivos de exemplo. |
10/06/2016 | Atualização | Inclusão do parâmetro id_usuário nos recursos de envio |
01/06/2016 | Inclusão | Agora é possível consultar o saldo de um usuário com o recurso Saldo do usuário |