Κλειδί ιστότοπου για WordPress
Το πρόσθετο AstroWay για WordPress λαμβάνει το κλειδί μόνο του, χωρίς εγγραφή: ο ιστότοπος εμφανίζει την απόδειξη στη διαδρομή REST του, την επαληθεύουμε και εκδίδουμε ένα κλειδί συνδεδεμένο με αυτόν τον ιστότοπο.
Πώς γίνεται η επαλήθευση
Ενότητα με τίτλο «Πώς γίνεται η επαλήθευση»- Το πρόσθετο δημιουργεί ένα
proof_id(UUID v4) και έναproof(32 τυχαία bytes σε base64url, 43 χαρακτήρες) και τα διατηρεί για 10 λεπτά. - Ο ιστότοπος επιστρέφει
GET <home_url>/wp-json/astroway/v1/verify?nonce=<proof_id>μεContent-Type: application/jsonκαι σώμα{"proof":"<proof>"}. - Το πρόσθετο στέλνει
POST /v1/site-keys:
{ "site_url": "https://example.com", "proof_id": "3f1c2a9e-8b7d-4c1e-9f3a-2b6d5e4c1a07", "proof": "<43 characters>" }Το site_url είναι ακριβώς το home_url(), χωρίς ? και #. Για απλούς μόνιμους συνδέσμους, πέρασε το verify_url με ?rest_route=/astroway/v1/verify: γίνεται δεκτό μόνο στον ίδιο ιστότοπο και μόνο ως αυτή η διαδρομή.
Τι προσφέρει το κλειδί
Ενότητα με τίτλο «Τι προσφέρει το κλειδί»- για τον διακομιστή του ιστότοπου: ένα αίτημα από το πρόγραμμα περιήγησης (με την κεφαλίδα
Origin) λαμβάνει 403, και κάθε κλήση πρέπει να αναφέρει τον ιστότοπο στηνX-AstroWay-Site-URL. Η σύνδεση βασίζεται σε αυτήν την κεφαλίδα, οπότε κράτησε το κλειδί ως μυστικό, και αν διαρρεύσει, λάβε ένα νέο: το προηγούμενο θα ανακληθεί· - ένα σύνολο δωρεάν αναγνώσεων, 300 κλήσεις ανά ώρα ανά ιστότοπο, χωρίς πιστώσεις· τα ωροσκόπια με ημερομηνία γίνονται δεκτά μόνο κοντά στη σημερινή ημερομηνία·
- ένα κλειδί ανά εγκατάσταση (host και home path), έως 5 εγκαταστάσεις ανά host με κοινή ώρα.
Σφάλματα: 400 INVALID_SITE_URL, 422 SITE_VERIFICATION_FAILED με details.reason, 429 SITE_KEY_RATE_LIMIT με retry_after.
Σύνδεση λογαριασμού
Ενότητα με τίτλο «Σύνδεση λογαριασμού»Όταν ο ιδιοκτήτης του ιστότοπου θέλει να εργαστεί με το δικό του πρόγραμμα, το πρόσθετο μεταφέρει τον ιστότοπο στο κλειδί λογαριασμού με ένα κλικ.
- Το πρόσθετο ανοίγει στο πρόγραμμα περιήγησης του διαχειριστή
https://api.astroway.info/dashboard/connect?site=<home_url>&return=<admin_url>&state=<16-128 χαρακτήρες>&source=wp_plugin. Τοreturnπρέπει να βρίσκεται στον ίδιο host με τοsiteκαι να είναι σε https. - Ο διαχειριστής συνδέεται ή εγγράφεται και επιλέγει ένα κλειδί για τον ιστότοπο ή δημιουργεί ένα νέο. Ένα κλειδί που είναι ήδη συνδεδεμένο με άλλο domain μεταφέρεται μόνο μετά από ξεχωριστή επιβεβαίωση.
- Το πρόγραμμα περιήγησης επιστρέφει στο
returnμεcodeκαι το ίδιοstate. Η ακύρωση επιστρέφειerror=access_denied. - Ο διακομιστής του ιστότοπου ανταλλάσσει τον κωδικό, στέλνοντας το κλειδί του ιστότοπου στην
X-Api-Key:
POST /v1/site-keys/connect/exchange{ "code": "<43 characters>", "site_url": "https://example.com" }Απάντηση: { "key": "aw_live_…", "plan": "free", "domain": "example.com", "account": "j***@example.com" }. Ο κωδικός ισχύει για 5 λεπτά. Η επανάληψη της ανταλλαγής του ίδιου κωδικού με το ίδιο κλειδί ιστότοπου εντός 10 λεπτών επιστρέφει την ίδια απάντηση. Το κλειδί ιστότοπου παύει να ισχύει 24 ώρες μετά την ανταλλαγή.
Σφάλματα: 400 INVALID_CODE, 410 CODE_EXPIRED, 403 SITE_MISMATCH.