Actualizar los ajustes de suscripción

PATCH /api/v1/settings/optin El doble opt-in y el correo de confirmación. Requiere el rol Admin. Solo el ajuste de la organización controla las suscripciones nuevas. Activado: pending con un correo de confirmación. Desactivado: subscribed sin confirmación. La API de contactos acepta el booleano heredado doubleOptIn pero lo ignora, sea true o false.

Autorización

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

Cuerpo de la solicitud

CampoTipoObligatorioDescripción
requiredbooleannotrue: las suscripciones nuevas quedan en pending con confirmación; false: en subscribed sin confirmación
subjectstringnoAsunto del correo de confirmación
contentstringnoSu HTML; se rechaza sin {{confirmationUrl}}
json
{"required": true}

Ejemplo

bash
curl -X PATCH -H "x-api-key: $AGENTMAIL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"required": true}' \
  "https://www.agentsmail.io/api/v1/settings/optin"

Respuesta

  • 200 OK: la llamada tuvo éxito.
  • 400 Bad Request: la validación falló; details lleva 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 es member de la organización, no admin.
  • 429 Too Many Requests: más de 120 peticiones en un minuto para esta clave.

Campos de la respuesta

Un contenido idéntico al predeterminado se guarda vacío, para que la organización siga heredando sus mejoras futuras. Eso es lo que te indica customized.
CampoTipoDescripción
successbooleanIndica si la operación tuvo éxito
data.requiredbooleanSi ahora se exige confirmación
data.subjectstringEl asunto vigente
data.contentstringEl HTML vigente
data.customizedbooleanfalse significa que ambos siguen siendo los predeterminados del producto

Ejemplo de respuesta

json
{
  "success": true,
  "data": {"required": true, "subject": "Confirm your subscription", "content": "<html>…{{confirmationUrl}}…</html>", "customized": true}
}

Notas

  • Cambiar este ajuste no cambia el estado de los contactos existentes.
  • Las importaciones conservan su estado declarado y nunca envían correos de confirmación.

Relacionado