Listar las páginas de suscripción

GET /api/v1/signup-pages Todas las páginas de suscripción de la organización, de la más reciente a la más antigua. De aquí sale el id que exigen las demás llamadas de páginas de suscripción. Las filas no llevan HTML: el documento de una página pesa unos kilobytes, y veinte de ellos viajarían para nada. Pide las páginas una a una para leer su content.

Autorización

Rol en la organizaciónEste endpoint
OWNERPermitido
ADMINPermitido
MEMBERPermitido
Una clave lleva el rol que su creador tiene en esta organización, nunca un rol en AgentsMail en sí. Consulta Claves de API.

Parámetros de consulta

ParámetroTipoDescripción
pagenumberNúmero de página, 1 por defecto
limitnumberFilas por página, 20 por defecto, 100 como máximo
searchstringCoincide con el nombre interno y con el slug
statusstringdraft o published. Cualquier otro valor responde 400
listIdstringSolo las páginas que alimentan esta lista

Ejemplo

bash
curl -H "x-api-key: $AGENTMAIL_API_KEY" \
  "https://www.agentsmail.io/api/v1/signup-pages?status=published&limit=50"

Respuesta

  • 200 OK: las páginas de la organización. Una organización sin ninguna responde con un array vacío.
  • 400 Bad Request: status no es ni draft ni published. Devolverlo todo daría a entender que ninguna página tiene el estado que pediste.
  • 401 Unauthorized: clave ausente o no válida, o su propietario dejó la organización.
  • 429 Too Many Requests: la clave superó su límite de peticiones.

Campos de la respuesta

CampoTipoDescripción
successbooleanIndica si la operación tuvo éxito
dataarrayLas páginas de suscripción
data[].idstringIdentificador único: es el id que reciben todas las demás llamadas de páginas
data[].namestringNombre interno, el que solo ve tu equipo
data[].slugstringLa última parte de la dirección pública
data[].statusstringdraft o published
data[].listIdstringLa lista que recibe a los suscriptores
data[].listNamestringNombre de esa lista, para que no tengas que leerla por separado
data[].sourceTemplateNamestring | nullEl tema del que se copió la página, null para HTML pegado
data[].createdAtstringFecha de creación ISO
data[].updatedAtstringFecha ISO del último cambio
pagination.totalnumberNúmero total de páginas que cumplen los filtros
pagination.pagenumberNúmero de la página actual
pagination.limitnumberFilas por página
pagination.totalPagesnumberNúmero de páginas de resultados

Ejemplo de respuesta

json
{
  "success": true,
  "data": [
    {
      "id": "3d3d3d3d-4444-4eee-9fff-000011112222",
      "name": "Newsletter footer",
      "slug": "newsletter",
      "status": "published",
      "listId": "9f8e7d6c-1111-4bbb-8ccc-ddddeeeeffff",
      "listName": "Subscribers",
      "sourceTemplateName": "Minimal",
      "createdAt": "2026-08-01T10:00:00.000Z",
      "updatedAt": "2026-08-02T10:00:00.000Z"
    }
  ],
  "pagination": {"total": 1, "page": 1, "limit": 20, "totalPages": 1}
}

Notas

  • content no está en las filas. Lee una página individual para obtener su HTML.
  • Un listId que pertenece a otra organización simplemente no coincide con nada: el filtro nunca cruza el límite de la organización.

Relacionado