API SOAP - Customer Allowance Webservices
Privacy API
Webservice SOAP que permite hacer consultas y búsquedas de servicios y suscripciones. Adicionalmente, permite bloquear y desbloquear direcciones, suscribir direcciones a servicios y eliminar suscripciones de direcciones a servicios.
Acceso
Protocolo: HTTP
URL
Web Service
https://ws.danaconnect.com/danaconnect/privacy/PrivacyAPIDefinición del Web Service
https://ws.danaconnect.com/danaconnect/privacy/PrivacyAPI?wsdlCómo empezar a utilizar el Web Service
La compañía que va a utilizar el Web Service debe contar con un usuario y contraseña válidos.
Autenticación
Para poder acceder a los métodos de este API es necesario tener credenciales válidas. Se utiliza un método de autenticación BASIC para el acceso a los WebServices basado en un login y password.
Login: el login consiste en el nombre de usuario concatenado con un @ y seguido del código de la compañía.
Ejemplo
Nombre de usuario: administrador
Código de compañía: suempresa
Login: administrador@suempresa
Ejemplo de autenticación desde PHP
$client = new SoapClient(
"http://www03.danaconnect.com:18080/danaconnect/privacy/PrivacyAPI?wsdl",
array(
'login' => 'administrador@suempresa',
'password' => 'mipassword',
'authentication' => SOAP_AUTHENTICATION_BASIC
)
);Métodos
1. getServices
Lista los servicios activos. No recibe ningún parámetro y devuelve un JSON con información de los servicios.
String getServices()Detalle de método getServices
Este método se emplea para consultar todos los servicios activos de la compañía.
Valor devuelto
Retorna un JSON con el listado de servicios activos.
Solicitud
// Llamamos al método y obtenemos el resultado
$result = $client->getServices()->return;Resultado
[
{
"id": "1",
"name": "Servicio 1",
"description": "Primer Servicio"
},
{
"id": "2",
"name": "Servicio 2",
"description": "Segundo Servicio"
}
]2. addService
Agrega un nuevo servicio al listado de servicios activos. Devuelve un JSON con información del nuevo servicio, incluyendo el ID generado.
String addService(String name, String description)Detalle de método addService
Este método se emplea para agregar un nuevo servicio activo a la compañía.
Parámetros
Parámetro | Descripción |
|---|---|
| Nombre del servicio. Máximo 85 caracteres. |
| Breve descripción del servicio. Máximo 250 caracteres. |
Valor devuelto
Retorna un JSON con los detalles del servicio agregado. Puede lanzar Exception.
Solicitud
// Llamamos al método y obtenemos el resultado
$params = array(
'name' => 'Test Service',
'description' => 'Test Service Description'
);
$result = $client->addService($params)->return;Resultado
{
"id": 26,
"name": "Test Service",
"description": "Test Service Description"
}3. updateService
Dado un ID de servicio, actualiza su nombre y/o descripción.
String updateService(Integer id, String name, String description)Detalle de método updateService
Este método se emplea para actualizar el nombre y/o la descripción de un servicio dado su ID.
Parámetros
Parámetro | Descripción |
|---|---|
| ID del servicio. |
| Nombre del servicio. Máximo 85 caracteres. |
| Breve descripción del servicio. Máximo 250 caracteres. |
Valor devuelto
Retorna un JSON con los detalles del servicio actualizado. Puede lanzar Exception.
Solicitud
// Llamamos al método y obtenemos el resultado
$params = array(
'id' => 26,
'name' => 'Test Cambio',
'description' => 'Test Cambio Description'
);
$result = $client->updateService($params)->return;Resultado
{
"id": 26,
"name": "Test Cambio",
"description": "Test Cambio Description"
}4. deleteService
Elimina un servicio activo dado un ID.
boolean deleteService(Integer id)Detalle de método deleteService
Este método se emplea para eliminar un servicio activo dado su ID.
Parámetros
Parámetro | Descripción |
|---|---|
| ID del servicio. |
Valor devuelto
Retorna un booleano con el estatus de la operación. Puede lanzar Exception.
Solicitud
// Llamamos al método y obtenemos el resultado
$params = array(
'id' => 26
);
$result = $client->deleteService($params)->return;Resultado
true5. getRecords
Realiza una búsqueda sobre contactos en los registros del Privacy Policy. Permite filtrar por dirección y canales, además de paginar los resultados.
String getRecords(
String search,
List<Integer> idChannels,
Integer start,
Integer limit,
boolean displayTotal
)
Detalle de método getRecords
Este método se emplea para consultar registros de privacidad aplicando filtros opcionales.
Parámetros
Parámetro | Descripción |
|---|---|
| Filtro opcional de dirección. Permite búsquedas parciales. |
| Listado de filtros por canal. Por defecto incluye todos los canales. Ver canales. |
| Índice del primer registro. |
| Cantidad total de campos a mostrar. |
| Si es |
Valor devuelto
Retorna un JSON con los registros de privacidad y, opcionalmente, el total de la búsqueda. Puede lanzar Exception.
Solicitud
// Llamamos al método y obtenemos el resultado
$params = array(
'search' => '@gmail.com',
'idChannels' => array(1, 2, 3),
'start' => 1,
'limit' => 10,
'displayTotal' => true
);
$result = $client->getRecords($params)->return;Resultado
{
"total": 5,
"records": [
{
"address": "rebotameX1000@gmail.com",
"date": "2013-07-03 17:16:35",
"idConversation": 11269,
"hardBounced": true,
"idChannel": 1,
"idSource": 1,
"description": "Bounce / failed / 5.1.1",
"blocked": false,
"spam": false
},
{
"address": "marianisho@gmail.com",
"date": "2013-07-03 12:46:26",
"idConversation": 0,
"hardBounced": false,
"idChannel": 1,
"idSource": 2,
"description": "ggggggggggggggg gggg",
"blocked": true,
"spam": false
},
{
"address": "rebotameXkjhq@gmail.com",
"date": "2013-06-28 18:01:41",
"idConversation": 0,
"hardBounced": false,
"idChannel": 1,
"idSource": 4,
"description": "Bounce / failed / 5.1.1",
"blocked": true,
"spam": false
},
{
"address": "malosiouhsiud@gmail.com",
"date": "2012-07-03 12:59:28",
"idConversation": 0,
"hardBounced": false,
"idChannel": 1,
"idSource": 1,
"description": "Bounce / failed / 5.1.1",
"blocked": true,
"spam": false
}
]
}6. getSuscriptions
Realiza una búsqueda sobre el estatus de bloqueo y suscripción de una dirección, para un canal determinado, con respecto a los servicios.
String getSuscriptions(String address, Integer idChannel)Detalle de método getSuscriptions
Este método se emplea para consultar el estatus de suscripción de una dirección en un canal específico.
Parámetros
Parámetro | Descripción |
|---|---|
| Dirección completa del contacto. |
| ID del canal. Ver canales. |
Valor devuelto
Retorna un JSON con los detalles de suscripción. Puede lanzar Exception.
Solicitud
// Llamamos al método y obtenemos el resultado
$params = array(
'address' => 'administrador@domain.com',
'idChannel' => 1
);
$result = $client->getSuscriptions($params)->return;Resultado
[
{
"blocked": false,
"id": 26,
"name": "Test Service",
"description": "Test Service Description",
"suscribed": true
},
{
"blocked": false,
"id": 25,
"name": "Test 2",
"description": "Test 2",
"suscribed": true
},
{
"blocked": false,
"id": 21,
"name": "Mercadeo",
"description": "M",
"suscribed": false
},
{
"blocked": false,
"id": 20,
"name": "Newsletter",
"description": "Negocios",
"suscribed": true
},
{
"blocked": false,
"id": 11,
"name": "Politica",
"description": "Politica",
"suscribed": true
},
{
"blocked": false,
"id": 9,
"name": "Test",
"description": "Test",
"suscribed": true
}
]7. unblock
Desbloquea una dirección para un canal determinado.
Void unblock(String address, Integer idChannel)Detalle de método unblock
Este método se emplea para desbloquear una dirección asociada a un canal.
Parámetros
Parámetro | Descripción |
|---|---|
| Dirección completa del contacto. |
| ID del canal. Ver canales. |
Valor devuelto
No regresa ningún valor. Puede lanzar Exception.
Solicitud
// Llamamos al método y obtenemos el resultado
$params = array(
'address' => 'administrador@domain.com',
'idChannel' => 1
);
$result = $client->unblock($params)->return;8. block
Bloquea una dirección para un canal determinado. Permite definir parámetros adicionales para especificar si el bloqueo debe ser categorizado como spam, así como una breve descripción de la razón del bloqueo.
Integer block(
String address,
Integer idChannel,
boolean isSpam,
Integer idSource,
String description
)
Detalle de método block
Este método se emplea para bloquear una dirección asociada a un canal.
Parámetros
Parámetro | Descripción |
|---|---|
| Dirección completa del contacto. |
| ID del canal. Ver canales. |
| Si se desea marcar como spam, usar |
| ID del source. Ver sources. |
| Razón del bloqueo. |
Valor devuelto
Retorna un Integer con el ID del registro bloqueado. Puede lanzar Exception.
Solicitud
// Llamamos al método y obtenemos el resultado
$params = array(
'address' => 'administrador@domain.com',
'idChannel' => 1,
'isSpam' => true,
'idSource' => 4,
'description' => 'Solicitud del cliente'
);
$result = $client->block($params)->return;Resultado
269. suscribe
Habilita la recepción de comunicaciones a la dirección, para los servicios y canal indicados. Esta suscripción es particular a los servicios y canales especificados. No hay parámetros opcionales.
Void suscribe(Integer idChannel, String address, List<Integer> services)Detalle de método suscribe
Este método se emplea para suscribir una dirección a uno o varios servicios dentro de un canal.
Parámetros
Parámetro | Descripción |
|---|---|
| Dirección completa del contacto. |
| ID del canal. Ver canales. |
| Listado de IDs de servicios a los cuales suscribirse. |
Valor devuelto
No regresa ningún valor. Puede lanzar Exception.
Solicitud
// Llamamos al método y obtenemos el resultado
$params = array(
'address' => 'administrador@domain.com',
'idChannel' => 1,
'services' => array(26, 27, 28)
);
$result = $client->suscribe($params)->return;10. unsuscribe
Deshabilita la recepción de comunicaciones a la dirección, para los servicios y canal indicados. Esta suscripción es particular a los servicios y canales especificados. No hay parámetros opcionales.
String unsuscribe(
Integer idChannel,
String address,
Integer idSource,
List<Integer> services
)
Detalle de método unsuscribe
Este método se emplea para desuscribir una dirección de uno o varios servicios dentro de un canal.
Parámetros
Parámetro | Descripción |
|---|---|
| Dirección completa del contacto. |
| ID del canal. Ver canales. |
| ID del source. Ver sources. |
| Listado de IDs de servicios de los cuales desuscribirse. |
Valor devuelto
Regresa un listado de IDs de registros de suscripción en el orden correspondiente al enviado. Puede lanzar Exception.
Solicitud
// Llamamos al método y obtenemos el resultado
$params = array(
'address' => 'administrador@domain.com',
'idChannel' => 1,
'idSource' => 1,
'services' => array(26)
);
$result = $client->unsuscribe($params)->return;Resultado
[
1831600
]Actualizado el: 23/06/2026
¡Gracias!
