Integración

Regístrate ahora y obten
1.000 envíos gratis cada mes

1. Listar contactos

Servicio:

/member/list

Lista todos los contactos de todas las listas filtradas por email

Parámetros:

ParámetroRequeridoTipoExplicaciónEjemplo
MailListsIdsNOArrayObtener solo miembros de las listas seleccionadas.MailListsIds[]=125
countNONúmero EnteroNúmero de contactos a devolver como máximo.count=10
absolutepageNONúmero EnteroPágina de "count" registros a la que se quiere ir.Si count vale 10 y absolutepage vale 3, entonces empezaremos a ver desde el contacto 31absolutepage=3
filterNOCadena de caracteresEmail o parte de email por el que se filtran los contactosfilter=nombre@dominio.com
orderByNONúmero entero Cadena de caracteres

Valores posibles:

name

id
Campo por el cual estará ordenado el listado..orderBy=name
descNONúmero entero

Valores posibles:

0

1
Determina si el orden del listado es ascendente o descendentedesc=1

Errores:

errorMsg_formValidationsUno o varios de los parámetros de entrada es incorrecto, falta o es requerido. Tiene asociada una estructura del tipo "Parámetro inválido"=>"error".
errorMsg_membersNotFoundNo se han podido recuperar los contactos.

Estructura de Salida:

list.item.MemberIDID del contacto
list.item.EmailEmail del contacto
list.item.BounceTypeTipo de rebote [1=Rebote Duro|2=Rebote Blando|3=Sin Rebotes]
list.item.MailLists.activeCountNúmero de listas en las que esta relacionado el miembro
list.item.MailLists.item.MailListIDId de lista de contactos
list.item.MailLists.item.SubscriptionStatusEstado de suscripción del miembro en la lista
list.item.MailLists.item.MailListNameNombre de la lista
list.item.CustomFields.item.CustomField<1..100>Campos personalizados del miembro
list.pager.absolutepagePágina que se esta mostrando
list.pager.pagecountNúmero total de páginas
list.pager.totalCountNúmero total de registros
list.pager.rowCountNúmero de registros en la página.
customfields Listado de los campos personalizados creados por el administrador
customfields.rows.CustomFieldIDIds de campos personalizados
customfields.rows.TitleTítulos de campos personalizados
criteria.filterFiltro ingresado como parámetro

** solo los campos relevantes son explicados y enumerados

2. Crear o Modificar la información de un Contacto

Servicio:

/member/edit

Recupera, crea o modifica información de un contacto.

Este servicio se comporta de formas distintas dependiendo la forma en la que realizamos la llamada. Si lo hacemos mediante GET y pasamos el parámetro MemberID, intentara recuperar la información del contacto. Si utilizamos POST intentara modificar o crear el contacto dependiendo si esta o no definido el parámetro MemberID.

Parametros:

ParámetroRequeridoTipoExplicaciónEjemplo
MemberIDNONúmero EnteroID del contacto que se quiere modificar. Solo necesario si se quiere recuperar la información o modificar el contacto..MemberID=2
MailListIDNONúmero EnteroLista a la cual se inscribirá inicialmente el contacto. Solo una lista debe ser asignada..MailListID=4
EmailNOCadena de caracteresDirección de correo que se quiere suscribirEmail=rogelio@donweb.com
CustomField<1..100>NOArreglo de cadenaValores para cada campo personalizado. La parte numérica del parámetro es el ID del campo personalizado "CustomFieldID"CustomField1=rogelio&CustomField3=hombre&CustomField5=argentina

Errores:

errorMsg_formValidationsUno o varios de los parámetros de entrada son incorrectos, faltan o son requeridos.
errorMsg_memberNotFoundNo se encuentra el miembro a modificar. Solo puede aparecer durante una modificación.
errorMsg_memberNotSavedEl contacto no se pudo guardar por un error inesperado.
errorMsg_memberBannedEl contacto no se pudo suscribir a la lista porque el email esta prohibido.

Estructura de Salida:

member.MemberIDID del contacto
member.EmailEmail del contacto
member.CustomFieldsmember.CustomFields.item.CustomField<1..100>

Campos personalizados del miembro

** Solo los campos relevantes son explicados y enumerados.

3. Cambiar el estado un Contacto (Suscribir, Desuscribir, Des-asociar, etc)

Servicio:

/member/changestaus

Modifica el estado de uno o mas contactos en relación a una lista o mas listas.

Parametros:

ParámetroRequeridoTipoExplicaciónEjemplo
MemberIdsSIArreglo de enterosTodos los IDs de contactos a los que se desea modificar el estado..MemberIds[]=1&MemberIds[]=2
MailListsIdsSIArreglo de enterosTodas las listas de contactos co las que se desea operar..MailListsIds[]=4&MailListsIds[]=9
SubscriptionStatusSICadena de caracteresIndica el estado que se quiere asignar a los contactos.

Valores posibles:PendingOptIn (pendiente de confirmación)

Subscribed (suscripto)

Unsubscribed (desuscripto)

Deleted (remover de la lista)
SubscriptionStatus=Subscribed

Errores:

errorMsg_formValidationsUno o varios de los parámetros de entrada son incorrecto, faltan o son requerido
invalidMaillist Lista de IDs de lista de contactos invalidas. Inexistentes
invalidMemberLista de IDs de contactos inválidos. Inexistentes
subscribedLista de IDs de contactos suscritos correctamente. Este parámetro solo esta presente si hubo un error y esta presente "notSubscribed"
notSubscribedLista de IDs de contactos validos NO suscritos
countNotSubscribedCantidad de contactos no suscritos (notSubscribed invalidMember).

Estructura de Salida:

countChanged=numbercantidad de members que se han modificado satisfactoriamente..
changestatuschangestatus.detail
changestatus.detail.changed
arreglo que contiene una key por cada MemberID cuyo valor es un arreglo de cada MaillistID para la cual se ha modificado el estado.

Ejemplo

changestatus: {
detail: {
changed: {
2:["4","9"],
1:["4","9"]
}
}
SubscriptionStatus: "Subscribed"
}
countChanged: 2

4. De-suscribir Contactos por email

Servicio:

/member/unsubscribebyemail

Remueve uno o mas contactos de una o varias listas de contactos filtrándolos por email.

Parametros:

ParámetroRequeridoTipoExplicaciónEjemplo
emailsSIArreglo de cadenasTodos los email de contactos a des-suscribiremails[]=toto@tritolo.com&emails[]=juena@gmail.com
MailListsIdsSIArreglo de enterosTodas las listas de contactos a la que se quieren des-suscribir los MembersIds.MailListsIds[]=4&MailListsIds[]=9
banNOEntero[0|1]Crea una regla de exclusión por cada email del parámetro emailsban=1

Errores:

errorMsg_formValidationsUno o varios de los parámetros de entrada son incorrecto, faltan o son requerido.

Estructura de Salida:

countUnsubscribedNúmero de miembros suscritos correctamente.
notUnsubscribedArreglo de emails de contactos validos NO des-suscritos..
countNotUnsubscribedCantidad de contactos no des-suscritos (notUnsubscribed invalidMember)

5. Ejemplos útiles de implementación en PHP:

En este ejemplo vamos a:

Crear un contacto con email=juanperez@gmail.com, nombre=Juan, apellido=Perez y suscripto a la lista con ID = 1.

Suscribimos el contacto a la lista con ID = 2.

Desuscribimos de la lista 1 al contacto creado en el paso 1

Buscamos el contacto creado en el paso 1 dentro de la lista 2

Script

textarea con el codigo del script member.php

Salida Script PHP

Nuevo Contacto: 19962 – juanperez@gmail.com: Juan Perez

Usuario suscripto correctamente a la lista 2

Usuario desuscripto correctamente de la lista 1

El usuario 19962 – juanperez@gmail.com (Juan Perez) esta suscripto a la lista 2


<?php

    $baseURL = 'https://app.envialosimple.com';
    $apiKey = ' TU LLAVE';

    // Creo un nuevo contacto en la lista 1
    $params = array();
    $params['APIKey']=$apiKey;
    $params['MailListID']=1;
    $params['Email']='juanperez@gmail.com';
    $params['CustomField1']='Juan';
    $params['CustomField2']='Perez';

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $baseURL.'/member/edit/format/json');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
    $jsonResponse = curl_exec($ch);
    curl_close($ch);

    $response = json_decode($jsonResponse, true);

    $id = $response['root']['ajaxResponse']['member']['MemberID'];
    $email = $response['root']['ajaxResponse']['member']['Email'];
    $nombre = $response['root']['ajaxResponse']['member']['CustomFields']['item']['CustomField1']['Values']['Option'][0]['Value'];
    $apellido = $response['root']['ajaxResponse']['member']['CustomFields']['item']['CustomField2']['Values']['Option'][0]['Value'];
    echo "Nuevo Contacto: $id - $email: $nombre $apellido \n";

    //Suscricribo el contacto antes creado a la lista 2
    $params = array();
    $params['APIKey']=$apiKey;
    $params['MailListsIds']=array(2);
    $params['MemberIds']=array($id);

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $baseURL.'/member/changestatus/SubscriptionStatus/Subscribed/format/json');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
    $jsonResponse = curl_exec($ch);
    curl_close($ch);

    $response = json_decode($jsonResponse, true);
    $exito = $response['root']['ajaxResponse']['success'];
    $count = $response['root']['ajaxResponse']['countSubscribed'];
    if($exito && $count=1)
    {
        echo "Contacto suscripto correctamente a la lista 2\n";
    }
    else
    {
        echo "No se pudo suscribir correctamente a la lista 2\n";
        print_r($response);
        exit;
    }

    // De-Suscricribo el contacto antes creado de la lista 1
    $params = array();
    $params['APIKey']=$apiKey;
    $params['MailListsIds']=array(1);
    $params['MemberIds']=array($id);

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $baseURL.'/member/changestatus/SubscriptionStatus/Unsubscribed/format/json');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
    $jsonResponse = curl_exec($ch);
    curl_close($ch);

    $response = json_decode($jsonResponse, true);
    $exito = $response['root']['ajaxResponse']['success'];
    $count = $response['root']['ajaxResponse']['countUnsubscribed'];
    if($exito && $count=1)
    {
        echo "Contacto desuscripto correctamente de la lista 1\n";
    }
    else
    {
        echo "No se pudo desuscribir correctamente de la lista 1\n";
        print_r($response);
        exit;
    }

    //Busco el contacto antes creado en la lista 2
    $params = array();
    $params['APIKey']=$apiKey;
    $params['MailListID']=2;
    $params['filter']='juanperez';

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $baseURL.'/member/listbymaillist/format/json?'.http_build_query($params));
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $jsonResponse = curl_exec($ch);
    curl_close($ch);

    $response = json_decode($jsonResponse, true);
    foreach ($response['root']['ajaxResponse']['list']['item'] as $item)
    {
        $tmpid = $item['MemberID'];
        $tmpemail = $item['Email'];
        $tmpnombre = $item['CustomFields']['item']['CustomField1']['Values']['Option'][0]['Value'];
        $tmpapellido = $item['CustomFields']['item']['CustomField2']['Values']['Option'][0]['Value'];
        echo "El Contacto $tmpid - $tmpemail ($tmpnombre $tmpapellido) esta suscripto a la lista 2\n";
    }
?>
Regístrate en EnvialoSimple ahora y obtén 1000 ENVÍOS GRATIS POR MES

CUIDADO ¡Riesgo de adicción!
Te invitamos a probar nuestro Newsletter. Recibirás pequeñas dosis del mejor contenido y alguna invitación especial para nuestros seminarios de email marketing.

Tranquilo,... no compartimos tu dirección.

  • ARGENTINA

    Buenos Aires: +54 11 52388127

    Córdoba: +54 351 5681826

    Mendoza: +54 261 4058337

    Rosario: +54 341 6075300

    Fax: +54 341 5169001


    USA

    Miami: +1 305 6776829

  • BRASIL

    Rio: +55 21 35219672

    São Paulo: +55 11 30135046

    Brasília: 55 61 37175051

    Porto Alegre: +55 51 32512951



    VENEZUELA

    Caracas: +58 212 3357430

  • COLOMBIA

    Bogotá: +57 1 5087540

    Cali: +57 26 205104

    Barranquilla: 57 53 161012

    Medellin: +57 4 6042535




    PERU

    Lima: +51 17185400

  • CHILE

    Santiago: +56 2 24958462

    Valparaíso: +56 32 2768422

    Antofagasta: +56 55 2 539786




    ESPAÑA

    Madrid: +34 917 610945

  • MEXICO

    D.F.: +52 55 53509210

    Guadalajara: +52 33 53501808

    Monterrey: +52 81 53501838

Contacto

El mensaje ha sido enviado con Éxito


Cerrar
Ingresa el texto verificador

Enviando Enviar