# Κατασκευαστές ιστοσελίδων

Ο κατασκευαστής ιστοσελίδων δείχνει τη σελίδα σου στο πρόγραμμα περιήγησης του επισκέπτη, οπότε ο κανόνας είναι αντίστροφος από τις οδηγίες για αυτοματισμούς: εσύ ενσωματώνεις το widget, όχι το κλειδί. Και τα δύο αποσπάσματα παρακάτω έχουν φορτωθεί από μια σελίδα σε εξωτερικό domain στο Chrome 2026-09-17, και και τα δύο εμφανίστηκαν.

## Ενσωμάτωσε ένα από τα αποσπάσματα

Κανονικό iframe, όταν το μέγεθος είναι γνωστό:

```html
<iframe src="https://api.astroway.info/v1/embed/moon-phase?theme=light&lang=uk"
        width="320" height="360" style="border:0"></iframe>
```

Φορτωτής, όταν δεν θέλεις να προσαρμόσεις το μέγεθος: αντικαθιστά τον εαυτό του με iframe και προσαρμόζει το ύψος στο περιεχόμενο μέσω `postMessage`.

```html
<script src="https://cdn.astroway.info/embed.js"
        data-widget="moon-phase" data-lang="uk" data-theme="light"></script>
```

Δεκαπέντε widgets, όλες οι παράμετροι και κουμπί αντιγραφής για το καθένα στη σελίδα [Widgets](/products/embed-widgets/). Κάθε attribute `data-*` γίνεται παράμετρος του αιτήματος.

## Πού να ενσωματώσεις τον κώδικα

| Κατασκευαστής | Τι να ψάξεις |
|---|---|
| Wix | [στοιχείο ενσωμάτωσης HTML κώδικα](https://support.wix.com/en/article/wix-editor-embedding-a-site-or-a-widget) |
| Squarespace | [μπλοκ κώδικα](https://support.squarespace.com/hc/en-us/articles/205815908-Code-blocks) |
| Shopify | ενότητα custom liquid ή επεξεργαστής κώδικα θέματος |
| Webflow | στοιχείο embed |
| Tilda | μπλοκ HTML κώδικα, T123 |

Για το Wix και το Squarespace τα links οδηγούν στις τεκμηριώσεις τους· τα υπόλοιπα τρία ονομάζονται με το όνομα της λειτουργίας, επειδή οι σελίδες τεκμηρίωσης τους δεν ανοίγουν με αυτόματο έλεγχο, και δεν θα παραπέμψουμε σε αδόκιμα.

## Το κλειδί δεν χρειάζεται και δεν γίνεται αποδεκτό

Τα endpoints `/v1/embed/*` είναι δημόσια. Το κλειδί στο attribute της σελίδας θα το έβλεπε κάθε επισκέπτης, οπότε ο φορτωτής το αγνοεί και το καταγράφει στην κονσόλα.

Όρια: **30 αιτήματα ανά ώρα από το IP του επισκέπτη**, οι απαντήσεις cache-άρονται για πέντε λεπτά. Έτσι μια σελίδα με πολλούς επισκέπτες λειτουργεί καλά, ενώ ένας επισκέπτης που την επαναφορτώνει συνεχώς, όχι.

## Τι δεν μπορεί να καλέσει η σελίδα

Στον περιηγητή σε εξωτερικό domain απαντούν μόνο τα `/v1/public/*` και `/v1/embed/*`. Ό,τι άλλο κάτω από `/v1/*` απορρίπτεται από το preflight: από μια σελίδα σε εξωτερικό domain το `POST /v1/chart` επέστρεψε χωρίς το header `access-control-allow-origin`, και το Chrome το μπλόκαρε, ενώ το `POST /v1/public/chart` από την ίδια σελίδα επέστρεψε `200`.

Άρα αν θέλεις ο επισκέπτης να εισάγει τα δικά του δεδομένα γέννησης και να δει το χάρτη, χρησιμοποίησε τα [endpoints χωρίς κλειδί](/free/) ή το [widget‑υπολογιστή γενέθλιου χάρτη](/products/embed-widgets/#окремий-віджет-калькулятор-натальної-карти), που υπολογίζει απλώς στον περιηγητή. Ό,τι χρειάζεται μυστικό κλειδί τρέχει στον server: στον δικό σου ή σε ένα από τα εργαλεία της ενότητας [Ολοκλήρωση χωρίς κώδικα](/integrations/).

<Aside type="note" title="Όταν θα φανεί χρήσιμο το δημόσιο κλειδί">
Το κλειδί `pk_` αξίζει να το δημιουργήσεις αν η σελίδα καλεί μόνη της το `/v1/public/*` και το κοινό όριο ανά επισκέπτη δεν αρκεί: στο επί πληρωμή πακέτο το κλειδί έχει δικό του όριο, και η λίστα origin το καθιστά άχρηστο σε οποιονδήποτε άλλο domain. Για τα παραπάνω widgets δεν χρειάζεται καθόλου.
</Aside>
