Lister les pages d'inscription

GET /api/v1/signup-pages Toutes les pages d'inscription de l'organisation, les plus récentes d'abord. C'est d'ici que vient l'id qu'exigent les autres appels sur les pages d'inscription. Les lignes ne portent aucun HTML : le document d'une page pèse quelques kilo-octets, et vingt d'entre eux voyageraient pour rien. Demandez les pages une par une pour lire leur content.

Autorisation

Rôle dans l'organisationCet endpoint
OWNERAutorisé
ADMINAutorisé
MEMBERAutorisé
Une clé porte le rôle que son créateur détient dans cette organisation — jamais un rôle sur AgentsMail lui-même. Voir Clés d'API.

Paramètres de requête

ParamètreTypeDescription
pagenumberNuméro de page, 1 par défaut
limitnumberLignes par page, 20 par défaut, 100 au maximum
searchstringRecherche dans le nom interne et dans le slug
statusstringdraft ou published. Toute autre valeur répond 400
listIdstringUniquement les pages qui alimentent cette liste

Exemple

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

Réponse

  • 200 OK — les pages de l'organisation. Une organisation qui n'en a aucune répond par un tableau vide.
  • 400 Bad Request — status n'est ni draft ni published. Tout renvoyer laisserait croire qu'aucune page ne porte le statut demandé.
  • 401 Unauthorized — clé absente ou invalide, ou son propriétaire a quitté l'organisation.
  • 429 Too Many Requests — la clé a dépassé sa limite de débit.

Champs de la réponse

ChampTypeDescription
successbooleanIndique si l'opération a réussi
dataarrayLes pages d'inscription
data[].idstringIdentifiant unique — c'est l'identifiant que prend tout autre appel sur une page
data[].namestringNom interne, celui que seule votre équipe voit
data[].slugstringLa dernière partie de l'adresse publique
data[].statusstringdraft ou published
data[].listIdstringLa liste qui reçoit les inscrits
data[].listNamestringLe nom de cette liste, pour vous éviter de la lire séparément
data[].sourceTemplateNamestring | nullLe thème dont la page a été copiée, null pour un HTML collé
data[].createdAtstringDate de création ISO
data[].updatedAtstringDate ISO de la dernière modification
pagination.totalnumberNombre total de pages correspondant aux filtres
pagination.pagenumberNuméro de la page de résultats courante
pagination.limitnumberLignes par page
pagination.totalPagesnumberNombre de pages de résultats

Exemple de réponse

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}
}

Remarques

  • content ne figure pas dans les lignes. Lisez une page seule pour obtenir son HTML.
  • Un listId appartenant à une autre organisation ne correspond simplement à rien : le filtre ne franchit jamais la frontière de l'organisation.

Voir aussi