Listas de contactos

Listas estáticas o dinámicas de contactos para usar en broadcasts.

Base path: /organizations/:orgId/contact-lists·14 endpoints·Source: mosend-wb-backend/src/modules/contact-lists/contact-lists.controller.ts
GET/organizations/:orgId/contact-lists
bearer

Lista las listas de contactos de la organización.

Path params

  • orgIdstringrequerido

Respuestas

  • 200
curl -X GET 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>'
Response · 200
{
  "data": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "createdAt": "2026-05-01T03:42:18.123Z"
    }
  ],
  "timestamp": "2026-05-01T03:42:18.123Z"
}
GET/organizations/:orgId/contact-lists/:id
bearer

Obtiene el detalle de una lista de contactos por su id.

Path params

  • orgIdstringrequerido
  • idstringrequerido

Respuestas

  • 200
curl -X GET 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists/00000000-0000-0000-0000-000000000000' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "createdAt": "2026-05-01T03:42:18.123Z"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}
POST/organizations/:orgId/contact-lists
bearer

Crea una nueva lista de contactos.

Path params

  • orgIdstringrequerido

Body (JSON)

  • namestringrequerido
  • descriptionstring
  • colorstring

    Color en hexadecimal (#RRGGBB).

Respuestas

  • 201
curl -X POST 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>' \
  -H 'Content-Type: application/json' \
  -d '{"name": "<name>","description": "<description>","color": "<color>"}'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "phone": "+573000000000",
    "name": "Juan Pérez",
    "email": "juan@empresa.com"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}
PATCH/organizations/:orgId/contact-lists/:id
bearer

Actualiza nombre, descripción o color de una lista de contactos.

Path params

  • orgIdstringrequerido
  • idstringrequerido

Respuestas

  • 200
curl -X PATCH 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists/00000000-0000-0000-0000-000000000000' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "createdAt": "2026-05-01T03:42:18.123Z"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}
DELETE/organizations/:orgId/contact-lists/:id
bearer

Archiva una lista de contactos.

Path params

  • orgIdstringrequerido
  • idstringrequerido

Respuestas

  • 200
curl -X DELETE 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists/00000000-0000-0000-0000-000000000000' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "createdAt": "2026-05-01T03:42:18.123Z"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}
GET/organizations/:orgId/contact-lists/:id/members
bearer

Lista los contactos miembros de una lista.

Path params

  • orgIdstringrequerido
  • idstringrequerido

Query params

  • pagenumber
  • pageSizenumber

Respuestas

  • 200
curl -X GET 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists/00000000-0000-0000-0000-000000000000/members' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>'
Response · 200
{
  "data": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "createdAt": "2026-05-01T03:42:18.123Z"
    }
  ],
  "timestamp": "2026-05-01T03:42:18.123Z"
}
POST/organizations/:orgId/contact-lists/:id/members
bearer

Agrega contactos a una lista por sus ids.

Path params

  • orgIdstringrequerido
  • idstringrequerido

Body (JSON)

  • contactIdsstring[]requerido

Respuestas

  • 201
curl -X POST 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists/00000000-0000-0000-0000-000000000000/members' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>' \
  -H 'Content-Type: application/json' \
  -d '{"contactIds": []}'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "name": "string",
    "description": "string"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}
DELETE/organizations/:orgId/contact-lists/:id/members
bearer

Quita de la lista los contactos indicados (en bloque).

Path params

  • orgIdstringrequerido
  • idstringrequerido

Body (JSON)

  • contactIdsstring[]requerido

Respuestas

  • 200
curl -X DELETE 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists/00000000-0000-0000-0000-000000000000/members' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>' \
  -H 'Content-Type: application/json' \
  -d '{"contactIds": []}'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "name": "string",
    "description": "string"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}
POST/organizations/:orgId/contact-lists/:id/remove-by-filter
bearer

Quita de la lista todos los contactos que casan con un filtro.

Path params

  • orgIdstringrequerido
  • idstringrequerido

Body (JSON)

  • qstring
  • channelstring
    whatsappweball
  • identifiedOnlyboolean
  • tagIdstring · uuid
  • optInStatusstring
    UNKNOWNOPTED_INOPTED_OUT
  • countrystring

    Prefijo numérico del país, p. ej. "57".

  • languagestring
  • hasConversationsboolean
  • lastActivityDaysGtnumber

Respuestas

  • 201
curl -X POST 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists/00000000-0000-0000-0000-000000000000/remove-by-filter' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>' \
  -H 'Content-Type: application/json' \
  -d '{"q": "<q>","channel": "whatsapp","identifiedOnly": true,"tagId": "00000000-0000-0000-0000-000000000000","optInStatus": "UNKNOWN","country": "<country>","language": "<language>","hasConversations": true,"lastActivityDaysGt": 0}'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "name": "string",
    "description": "string"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}
POST/organizations/:orgId/contact-lists/:id/clear
bearer

Vacía la lista: quita todos sus miembros. La lista se conserva.

Path params

  • orgIdstringrequerido
  • idstringrequerido

Respuestas

  • 201
curl -X POST 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists/00000000-0000-0000-0000-000000000000/clear' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "createdAt": "2026-05-01T03:42:18.123Z"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}
DELETE/organizations/:orgId/contact-lists/:id/members/:contactId
bearer

Quita un contacto de una lista.

Path params

  • orgIdstringrequerido
  • idstringrequerido
  • contactIdstringrequerido

Respuestas

  • 200
curl -X DELETE 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists/00000000-0000-0000-0000-000000000000/members/00000000-0000-0000-0000-000000000000' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "createdAt": "2026-05-01T03:42:18.123Z"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}
POST/organizations/:orgId/contact-lists/:id/add-by-tag
bearer

Agrega a la lista todos los contactos que tengan alguna de las etiquetas indicadas.

Path params

  • orgIdstringrequerido
  • idstringrequerido

Body (JSON)

  • tagIdsstring[]requerido

Respuestas

  • 201
curl -X POST 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists/00000000-0000-0000-0000-000000000000/add-by-tag' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>' \
  -H 'Content-Type: application/json' \
  -d '{"tagIds": []}'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "name": "cliente-vip",
    "color": "#16a34a"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}
POST/organizations/:orgId/contact-lists/:id/add-by-filter
bearer

Agrega a la lista todos los contactos que casan con un filtro (el mismo del listado de contactos).

Path params

  • orgIdstringrequerido
  • idstringrequerido

Body (JSON)

  • qstring
  • channelstring
    whatsappweball
  • identifiedOnlyboolean
  • tagIdstring · uuid
  • optInStatusstring
    UNKNOWNOPTED_INOPTED_OUT
  • countrystring

    Prefijo numérico del país, p. ej. "57".

  • languagestring
  • hasConversationsboolean
  • lastActivityDaysGtnumber

Respuestas

  • 201
curl -X POST 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists/00000000-0000-0000-0000-000000000000/add-by-filter' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>' \
  -H 'Content-Type: application/json' \
  -d '{"q": "<q>","channel": "whatsapp","identifiedOnly": true,"tagId": "00000000-0000-0000-0000-000000000000","optInStatus": "UNKNOWN","country": "<country>","language": "<language>","hasConversations": true,"lastActivityDaysGt": 0}'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "name": "string",
    "description": "string"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}
POST/organizations/:orgId/contact-lists/:id/import
bearer

Importa un CSV de contactos y los deja dentro de esta lista (multipart/form-data, campo file).

Path params

  • orgIdstringrequerido
  • idstringrequerido

Query params

  • defaultCountrystringrequerido
  • defaultOptInstringrequerido

Respuestas

  • 201
curl -X POST 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/contact-lists/00000000-0000-0000-0000-000000000000/import' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "createdAt": "2026-05-01T03:42:18.123Z"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}