Για προγραμματιστές
Ο ιστότοπος παραμένει δικός σας. Το Citron είναι το back end από το οποίο διαβάζει.
Χρησιμοποιήστε όποιο framework θέλετε. Διαβάστε το δημοσιευμένο περιεχόμενο μέσω REST ή GraphQL, στείλτε φόρμες και κρατήσεις στα δημόσια endpoints και ανανεώστε μόνο τις σελίδες που άλλαξε ένας συντάκτης.
Το SDK δεν είναι ακόμη στο npm. Μέχρι τότε το στέλνουμε ως αρχείο πακέτου· ζητήστε το και θα το μοιραστούμε με την ομάδα σας.
Γρήγορη εκκίνηση#
Τρία βήματα από ένα κενό έργο σε μια σελίδα που ενημερώνεται μόνη της όταν ένας συντάκτης δημοσιεύει.
Δημιουργήστε ένα κλειδί API#
Στην κονσόλα, ανοίξτε Ρυθμίσεις → Προγραμματιστές → Κλειδιά API και δημιουργήστε ένα κλειδί για δημοσιευμένο περιεχόμενο. Ξεκινά με
ck_pub_και εμφανίζεται μόνο μία φορά, οπότε βάλτε το αμέσως στο περιβάλλον του διακομιστή σας..env.local # .env.local (server only) CITRON_BASE_URL=https://api.console.citronos.com CITRON_API_KEY=ck_pub_… CITRON_WEBHOOK_SECRET=whsec_…Ανακτήστε περιεχόμενο#
Ζητήστε μια συλλογή με βάση το slug της. Το
localeπεριορίζει τα μεταφρασμένα πεδία σε μία γλώσσα. Η αναφορά REST καλύπτει φίλτρα, ταξινόμηση, σελιδοποίηση και συσχετίσεις.curl "https://api.console.citronos.com/v1/content/products?locale=en&pageSize=20" \ -H "Authorization: Bearer $CITRON_API_KEY"import { createClient } from '@citron/sdk'; const citron = createClient({ baseUrl: 'https://api.console.citronos.com', apiKey: process.env.CITRON_API_KEY, // ck_pub_… locale: 'en', }); const { data: products, meta } = await citron.collection('products').list({ limit: 20 }); console.log(meta.total, products.map((p) => p.slug));Επανεπικύρωση με webhooks#
Προσθέστε μια διαδρομή που ελέγχει την υπογραφή και επανεπικυρώνει τις σελίδες που άλλαξαν, έπειτα καταχωρίστε τη διεύθυνσή της στο Ρυθμίσεις → Προγραμματιστές → Webhooks και αντιγράψτε το μυστικό στο
CITRON_WEBHOOK_SECRET. Περισσότερα για τα webhooks.app/api/citron-webhook/route.ts // app/api/citron-webhook/route.ts import { revalidateTag } from 'next/cache'; import { citronTags, createRevalidateHandler } from '@citron/sdk/next'; export const POST = createRevalidateHandler({ secret: process.env.CITRON_WEBHOOK_SECRET, onEvent: (e) => citronTags(e.collection, e.entry.slug).forEach((tag) => revalidateTag(tag)), });
Αναφορά#
REST API παράδοσης
Δύο διαδρομές μόνο για ανάγνωση για κάθε συλλογή: γλώσσες, φίλτρα, ταξινόμηση, σελιδοποίηση, συσχετίσεις, ETags και υπογεγραμμένες προεπισκοπήσεις προχείρων.
GraphQL
Ένα σχήμα που δημιουργείται από τις συλλογές σας, με φίλτρα, συσχετίσεις, πρόχειρα, αποθηκευμένα ερωτήματα και όρια ερωτημάτων.
Σύνδεσμοι AI (σύντομα)
Σύντομα: συνδέστε το Claude, το ChatGPT, το Cursor και άλλα εργαλεία AI με έναν χώρο εργασίας μέσω MCP, με OAuth ή προσωπικό token και με τα δικαιώματα του ίδιου του μέλους.
Webhooks
Συμβάντα δημοσίευσης, απόσυρσης και διαγραφής, υπογραφές HMAC, επαναλήψεις και επανεπικύρωση στο Next.js.
Φόρμες, επικοινωνία και κρατήσεις
Δημόσια endpoints για επικοινωνία, φόρμες και κρατήσεις, με Turnstile, κλειδιά idempotency και προστασία από spam.
TypeScript SDK
Ένας τυποποιημένος client χωρίς εξαρτήσεις, με δημιουργία τύπων από τις συλλογές σας και βοηθητικά εργαλεία για το Next.js.
Σφάλματα και όρια ρυθμού
Το σώμα σφάλματος, οι κωδικοί κατάστασης και σφάλματος, τα αναγνωριστικά αιτημάτων και όλα τα όρια ρυθμού.
Κλειδιά και περιβάλλοντα#
ck_pub_…- Διαβάζει δημοσιευμένο περιεχόμενο. Όριο ρυθμού ανά κλειδί. Κρατήστε το σε διακομιστή ή στο edge.
ck_prev_…- Διαβάζει πρόχειρα για προεπισκοπήσεις. Κρατήστε το στον διακομιστή· μην το στέλνετε ποτέ στο πρόγραμμα περιήγησης.
Πού- Ρυθμίσεις → Προγραμματιστές → Κλειδιά API και Webhooks, στην κονσόλα.
Βασικό URL- https://api.console.citronos.com
Δοκιμάστε το σε έναν πραγματικό χώρο εργασίας
Ζητήστε πρόσβαση, έπειτα δημιουργήστε μια συλλογή και ένα δημόσιο κλειδί και διαβάστε τα δεδομένα από τον ιστότοπό σας.