Ir para o conteúdo

Lista de Contactos

Entidade lista de contactos. Um contentor de contactos utilizado em Campanhas e Envios Transacionais.

Endpoints

Método URL
GET /contact_list/<list>
POST /contact_list
PUT /contact_list/<list>
DELETE /contact_list/<list>

GET /contact_list/<list>

Payload: Sem payload.

Devolve: A lista de contactos e um dicionário com a contagem de contactos por estado de subscrição.

Example:

curl -u "username:api_key" -H "Accept: application/json" \
  https://app.duo.pt/contact_list/{list_id}

Response:

{
  "success": true,
  "data": {
    "contact_list": {
      "id": 1,
      "owner": 1,
      "name": "Example...",
      "default_email_out": null,
      "unsubscribe_message": "You have been unsubscribed.",
      "email_out_custom_fields": null,
      "double_optin": false,
      "optout_allowed": false,
      "optout_category": null,
      "optin_email": null,
      "optin_sms": null,
      "shared_with_children": false,
      "read_shared_with_children": false,
      "segments": null
    },
    "custom_fields": [],
    "filter": [],
    "contacts": null,
    "contact_count": {
      "subscribed": {
        "filter": {
          "operator": "...",
          "arguments": "..."
        },
        "count": 0
      },
      "bouncing": {
        "filter": {
          "operator": "...",
          "arguments": "..."
        },
        "count": 0
      },
      "unsubscribed": {
        "filter": {
          "operator": "...",
          "arguments": "..."
        },
        "count": 0
      },
      "pending": {
        "filter": {
          "operator": "...",
          "arguments": "..."
        },
        "count": 0
      }
    }
  }
}

POST /contact_list

Parâmetro Tipo Descrição
name string Nome da lista de contactos
double_optin boolean Se os novos contactos requerem double opt-in
shared_with_children boolean Partilhar acesso de escrita com utilizadores filhos hierárquicos
read_shared_with_children boolean Partilhar acesso de utilização com utilizadores filhos hierárquicos
unsubscribe_message string Mensagem apresentada aos contactos que cancelam a subscrição

Devolve: A nova lista de contactos.

Example:

curl -u "username:api_key" -H "Accept: application/json" \
  -d "name=My+List&double_optin=false&unsubscribe_message=You+have+been+unsubscribed." \
  https://app.duo.pt/contact_list

Response:

{
  "success": true,
  "data": {
    "contact_list": {
      "id": 1,
      "owner": 1,
      "name": "Example...",
      "default_email_out": null,
      "unsubscribe_message": "You have been unsubscribed.",
      "email_out_custom_fields": null,
      "double_optin": false,
      "optout_allowed": null,
      "optout_category": null,
      "optin_email": null,
      "optin_sms": null,
      "shared_with_children": false,
      "read_shared_with_children": false,
      "segments": null
    },
    "success": true
  }
}

PUT /contact_list/<list>

Mesmo payload que o POST.

Nota

Os parâmetros devem ser enviados como query string (não como body).

Devolve: A lista de contactos editada.

Example:

curl -u "username:api_key" -H "Accept: application/json" -X PUT \
  "https://app.duo.pt/contact_list/{list_id}?name=Updated+List+Name&unsubscribe_message=You+have+been+unsubscribed."

Response:

{
  "success": true,
  "data": {
    "contact_list": {
      "id": 1,
      "owner": 1,
      "name": "Updated List Name",
      "double_optin": false,
      "unsubscribe_message": "You have been unsubscribed."
    }
  }
}

DELETE /contact_list/<list>

Payload: Sem payload.

Devolve: A lista de contactos eliminada.

Example:

curl -u "username:api_key" -H "Accept: application/json" -X DELETE \
  https://app.duo.pt/contact_list/{list_id}

Response:

{
  "success": true,
  "data": {
    "contact_list": {
      "id": 1,
      "owner": 1,
      "name": "Example...",
      "default_email_out": null,
      "unsubscribe_message": "You have been unsubscribed.",
      "email_out_custom_fields": null,
      "double_optin": false,
      "optout_allowed": false,
      "optout_category": null,
      "optin_email": null,
      "optin_sms": null,
      "shared_with_children": false,
      "read_shared_with_children": false,
      "segments": null
    }
  }
}