Clave del sitio para WordPress
El plugin AstroWay para WordPress obtiene la clave por sí mismo, sin registro: el sitio muestra una prueba en su ruta REST, la verificamos y emitimos una clave vinculada a ese sitio.
Cómo funciona la verificación
Sección titulada «Cómo funciona la verificación»- El plugin genera un
proof_id(UUID v4) y unproof(32 bytes aleatorios en base64url, 43 caracteres) y los mantiene durante 10 minutos. - El sitio devuelve un
GET <home_url>/wp-json/astroway/v1/verify?nonce=<proof_id>conContent-Type: application/jsony el cuerpo{"proof":"<proof>"}. - El plugin envía un
POST /v1/site-keys:
{ "site_url": "https://example.com", "proof_id": "3f1c2a9e-8b7d-4c1e-9f3a-2b6d5e4c1a07", "proof": "<43 characters>" }site_url es exactamente home_url(), sin ? ni #. Para enlaces permanentes simples, pasa verify_url con ?rest_route=/astroway/v1/verify: solo se acepta en el mismo sitio y solo como esta ruta.
Qué ofrece la clave
Sección titulada «Qué ofrece la clave»- para el servidor del sitio: una solicitud desde el navegador (con el encabezado
Origin) recibe un 403, y cada llamada debe nombrar el sitio enX-AstroWay-Site-URL. La vinculación se mantiene en este encabezado, así que guarda la clave como un secreto, y si se filtra, obtén una nueva: la anterior será revocada; - un conjunto de lecturas gratuitas, 300 llamadas por hora por sitio, sin créditos; los horóscopos con fecha solo se aceptan cerca de la fecha actual;
- una clave por instalación (host y ruta de inicio), hasta 5 instalaciones por host con una hora compartida.
Errores: 400 INVALID_SITE_URL, 422 SITE_VERIFICATION_FAILED con details.reason, 429 SITE_KEY_RATE_LIMIT con retry_after.
Conexión de la cuenta
Sección titulada «Conexión de la cuenta»Cuando el propietario del sitio quiere trabajar con su propio plan, el plugin cambia el sitio a la clave de la cuenta con un solo clic.
- El plugin abre en el navegador del administrador
https://api.astroway.info/dashboard/connect?site=<home_url>&return=<admin_url>&state=<16-128 caracteres>&source=wp_plugin.returndebe estar en el mismo host quesitey usar https. - El administrador inicia sesión o se registra y elige una clave para el sitio o crea una nueva. Una clave ya vinculada a otro dominio solo se transfiere después de una confirmación separada.
- El navegador regresa a
returnconcodey el mismostate. La cancelación devuelveerror=access_denied. - El servidor del sitio intercambia el código, enviando su clave de sitio en
X-Api-Key:
POST /v1/site-keys/connect/exchange{ "code": "<43 characters>", "site_url": "https://example.com" }Respuesta: { "key": "aw_live_…", "plan": "free", "domain": "example.com", "account": "j***@example.com" }. El código vive 5 minutos. Un intercambio repetido del mismo código con la misma clave de sitio dentro de 10 minutos devuelve la misma respuesta. La clave del sitio deja de ser válida 24 horas después del intercambio.
Errores: 400 INVALID_CODE, 410 CODE_EXPIRED, 403 SITE_MISMATCH.