Clé du site pour WordPress
Le plugin AstroWay pour WordPress obtient la clé automatiquement, sans inscription : le site montre la preuve sur son endpoint REST, nous la vérifions et délivrons une clé liée à ce site.
Comment se passe la vérification
Section intitulée « Comment se passe la vérification »- Le plugin génère
proof_id(UUID v4) etproof(32 octets aléatoires en base64url, 43 caractères) et les conserve pendant 10 minutes. - Le site répond à
GET <home_url>/wp-json/astroway/v1/verify?nonce=<proof_id>avecContent-Type: application/jsonet le corps{"proof":"<proof>"}. - Le plugin envoie
POST /v1/site-keys:
{ "site_url": "https://example.com", "proof_id": "3f1c2a9e-8b7d-4c1e-9f3a-2b6d5e4c1a07", "proof": "<43 characters>" }site_url correspond exactement à home_url(), sans ? ni #. Pour les permaliens simples, passe verify_url avec ?rest_route=/astroway/v1/verify : il n’est accepté que sur le même site et uniquement sous ce chemin.
Ce que la clé offre
Section intitulée « Ce que la clé offre »- pour le serveur du site : une requête depuis le navigateur (avec l’en‑tête
Origin) reçoit un 403, et chaque appel doit indiquer le site dansX-AstroWay-Site-URL. L’association repose sur cet en‑tête, donc garde la clé comme un secret, et si elle fuit, récupère‑en une nouvelle : la précédente sera révoquée ; - un ensemble de lectures gratuites, 300 appels par heure par site, sans crédits ; les horoscopes avec date ne sont acceptés qu’autour de la date du jour ;
- une clé par installation (hôte et chemin racine), jusqu’à 5 installations par hôte avec une heure partagée.
Erreurs : 400 INVALID_SITE_URL, 422 SITE_VERIFICATION_FAILED avec details.reason, 429 SITE_KEY_RATE_LIMIT avec retry_after.
Connexion du compte
Section intitulée « Connexion du compte »Quand le propriétaire du site veut travailler sur son plan, le plugin migre le site vers la clé de compte en un clic.
- Le plugin ouvre dans le navigateur de l’administrateur
https://api.astroway.info/dashboard/connect?site=<home_url>&return=<admin_url>&state=<16-128 символів>&source=wp_plugin.returndoit être sur le même hôte quesite, et en https. - L’administrateur se connecte ou s’inscrit et choisit la clé pour le site ou en crée une nouvelle. Une clé déjà liée à un autre domaine ne peut être transférée qu’après une confirmation séparée.
- Le navigateur revient à
returnaveccodeet le mêmestate. L’annulation renvoieerror=access_denied. - Le serveur du site échange le code en envoyant sa clé de site dans
X-Api-Key:
POST /v1/site-keys/connect/exchange{ "code": "<43 characters>", "site_url": "https://example.com" }Réponse : { "key": "aw_live_…", "plan": "free", "domain": "example.com", "account": "j***@example.com" }. Le code vit 5 minutes. Un nouvel échange du même code avec la même clé de site dans les 10 minutes renvoie la même réponse. La clé du site cesse de fonctionner 24 heures après l’échange.
Erreurs : 400 INVALID_CODE, 410 CODE_EXPIRED, 403 SITE_MISMATCH.