PATCH /api/v1/signup-pages/{id}
Modifica una página de suscripción. Solo cambian los campos que envías: todo lo que omites queda exactamente como estaba, así que publicar una página es una llamada de un solo campo.
Autorización
| Rol en la organización | Este endpoint |
|---|---|
OWNER | Permitido |
ADMIN | Permitido |
MEMBER | Rechazado — 403 |
Parámetros de ruta
| Parámetro | Tipo | Descripción |
|---|---|---|
id | string | Obligatorio. La página que se modifica |
Cuerpo de la solicitud
Todos los campos son opcionales, y cada uno sigue las mismas reglas que en la creación.| Campo | Tipo | Descripción |
|---|---|---|
name | string | Nombre interno, de 1 a 100 caracteres |
slug | string | Última parte de la dirección pública. Cambiarlo cambia la dirección, y la antigua deja de responder |
listId | string | Otra lista de tu organización |
content | string | HTML nuevo. Debe llevar {{form}}, aquí igual que en la creación |
sourceTemplateName | string | null | El tema del que viene el HTML. null significa «HTML pegado, sin tema» |
heroTitle | string | El título que leen los visitantes |
heroSubtitle | string | Una cadena vacía lo elimina |
submitLabel | string | Texto del botón de suscripción |
successMessage | string | Se muestra tras una suscripción cuando no hay redirección |
redirectUrl | string | Una dirección http:// o https://. Una cadena vacía elimina la redirección |
collectFirstName | boolean | Si el formulario pide el nombre |
collectLastName | boolean | Si el formulario pide el apellido |
status | string | draft o published |
json
{"status": "published"}Ejemplo
bash
curl -X PATCH -H "x-api-key: $AGENTMAIL_API_KEY" -H "content-type: application/json" \
-d '{"status":"published"}' \
"https://www.agentsmail.io/api/v1/signup-pages/$SIGNUP_PAGE_ID"Respuesta
200 OK: la página tal como queda,contentincluido.400 Bad Request: un campo está mal formado, o el HTML nuevo no lleva{{form}}. Cuando el fallo está en la forma,detailslleva los problemas campo por campo.401 Unauthorized: clave ausente o no válida, o su propietario dejó la organización.403 Forbidden: el propietario de la clave esmemberde la organización, noadmin.404 Not Found: no existe esa página, o pertenece a otra organización; y la misma respuesta cuandolistIdnombra una lista que no es tuya. No se cambió nada.409 Conflict: otra página ya ocupa elslugque pediste; el mensaje la nombra.429 Too Many Requests: la clave superó su límite de peticiones.
Campos de la respuesta
Idénticos a Obtener una página de suscripción: la página completa, con los campos que cambiaste ya aplicados.Receta para agentes
Cambiar el tema reescribe el HTML, así que envía ambos campos juntos; si no, la página sigue declarando un tema que ya no usa:js
const theme = (await get('/api/v1/signup-page-templates')).data.find(
(t) => t.name === 'Editorial'
)
await patch(`/api/v1/signup-pages/${pageId}`, {
content: theme.content,
sourceTemplateName: theme.name,
})sourceTemplateName: null.
Notas
- Despublicar es
{"status": "draft"}. La dirección deja de responder de inmediato; los contactos ya recogidos no se tocan, pertenecen a la lista. - Cambiar
slugrompe todos los enlaces ya publicados hacia la dirección antigua. Nada redirige. - Mover una página a otra lista no mueve los contactos que ya recogió.