GET /api/v1/signup-pages/{id}
One sign-up page, with its content — this is the call that gives you the HTML the list does not
carry.
Authorization
| Role in the organization | This endpoint |
|---|---|
OWNER | Allowed |
ADMIN | Allowed |
MEMBER | Allowed |
Path parameters
| Parameter | Type | Description |
|---|---|---|
id | string | Required. The page to read |
Example
bash
curl -H "x-api-key: $AGENTMAIL_API_KEY" \
"https://www.agentsmail.io/api/v1/signup-pages/$SIGNUP_PAGE_ID"Response
200 OK— the page and its HTML.401 Unauthorized— missing or invalid key, or its owner left the organization.404 Not Found— no such page, or it belongs to another organization. The API never confirms that an id exists to a caller who has no right to it.429 Too Many Requests— the key is over its rate limit.
Response fields
| Field | Type | Description |
|---|---|---|
success | boolean | Indicates if the operation was successful |
data.id | string | Unique identifier for the page |
data.name | string | Internal name, the one only your team sees |
data.slug | string | Last part of the public address |
data.status | string | draft or published |
data.listId | string | The list that receives the subscribers |
data.content | string | The HTML of the page |
data.sourceTemplateName | string | null | The theme it was copied from, null for pasted HTML |
data.heroTitle | string | The title visitors read |
data.heroSubtitle | string | null | The subtitle, null when unset |
data.submitLabel | string | Label of the sign-up button |
data.successMessage | string | Shown after a sign-up when there is no redirect |
data.redirectUrl | string | null | Where the visitor goes after signing up, null for none |
data.collectFirstName | boolean | Whether the form asks for a first name |
data.collectLastName | boolean | Whether the form asks for a last name |
data.createdAt | string | ISO creation date |
data.updatedAt | string | ISO date of the last change |
Example response
json
{
"success": true,
"data": {
"id": "3d3d3d3d-4444-4eee-9fff-000011112222",
"name": "Newsletter footer",
"slug": "newsletter",
"status": "published",
"listId": "9f8e7d6c-1111-4bbb-8ccc-ddddeeeeffff",
"content": "<html><body><h1>{{heroTitle}}</h1>{{form}}</body></html>",
"sourceTemplateName": "Minimal",
"heroTitle": "Join the list",
"heroSubtitle": "One email a month, no more.",
"submitLabel": "Sign me up",
"successMessage": "Check your inbox.",
"redirectUrl": null,
"collectFirstName": true,
"collectLastName": false,
"createdAt": "2026-08-01T10:00:00.000Z",
"updatedAt": "2026-08-02T10:00:00.000Z"
}
}Notes
- The organization is never in the answer. It is the one your key opens, and you already know it.
- A
draftpage answers200here even though its public address answers a not-found page. The two are different questions.