TypeScript SDK

Διαχειριστείτε τη φιλοξενία σας από το TypeScript

Το @zinn-digital/sdk είναι ένας πλήρως πληκτρολογημένος (fully typed) πελάτης για το Zinn Digital® API. Κάθε διαδρομή, παράμετρος και απάντηση δημιουργείται από την ίδια προδιαγραφή OpenAPI από την οποία έχει δημιουργηθεί το API, επομένως το πρόγραμμα επεξεργασίας σας γνωρίζει ολόκληρο το API και ένα τυπογραφικό λάθος αποτελεί σφάλμα μεταγλώττισης.

Όλα τα έγγραφα προγραμματιστών →

Εγκατάσταση

Το πακέτο είναι διαθέσιμο στο npm υπό το πεδίο @zinn-digital. Λειτουργεί σε οποιοδήποτε περιβάλλον εκτέλεσης JavaScript που διαθέτει fetch.

npm install @zinn-digital/sdk

Γρήγορη εκκίνηση

Καταχωρίστε τις δημόσιες περιοχές φιλοξενίας χωρίς κλειδί και, στη συνέχεια, καταχωρίστε τους δικούς σας ιστότοπους με ένα κλειδί.

import { createApiClient } from "@zinn-digital/sdk";

const api = createApiClient({ baseUrl: "https://api.zinndigital.com" });

// Public catalogue endpoints need no key.
const { data: regions } = await api.GET("/v1/catalog/regions");
console.log(regions?.data.map((r) => r.slug));

// Everything else uses a per-organisation API key.
api.use({
  onRequest({ request }) {
    request.headers.set("Authorization", `Bearer ${process.env.ZINN_API_KEY}`);
  },
});

const { data, error } = await api.GET("/v1/sites", { params: { query: { limit: 5 } } });
if (error) throw new Error(error.error.message);
for (const site of data.data) console.log(site.name, site.status);

Έλεγχος ταυτότητας

Τα δημόσια τελικά σημεία καταλόγου, όπως οι περιοχές και τα προγράμματα, δεν απαιτούν διαπιστευτήρια. Όλα τα υπόλοιπα χρησιμοποιούν ένα κλειδί API ανά οργανισμό που αποστέλλεται ως διακριτικό φορέα. Ένα κλειδί φέρει μόνο τα δικαιώματα που του εκχωρείτε κατά τη δημιουργία του και μπορείτε να το ανακαλέσετε ανά πάσα στιγμή. Διατηρήστε το σε μια μεταβλητή περιβάλλοντος ή στο χώρο αποθήκευσης μυστικών σας, ποτέ στον πηγαίο κώδικα.

Δημιουργήστε ένα κλειδί API στον πίνακα ελέγχου σας

Τι περιλαμβάνεται

Ολόκληρο το δημόσιο API, με τύπους

Ιστότοποι, τομείς και DNS, χρέωση, υποστήριξη και κάθε άλλος τομέας του δημόσιου API. Οι απαντήσεις και τα σφάλματα είναι τυποποιημένα και οι τύποι σχημάτων εξάγονται για τον δικό σας κώδικα.

Δημιουργημένο αυτόματα, ποτέ χειρόγραφο

Το πρόγραμμα-πελάτης είναι το openapi-fetch πάνω από τύπους που δημιουργούνται από την προδιαγραφή OpenAPI μας. Μια νέα έκδοση δημοσιεύεται αυτόματα κάθε φορά που αλλάζει η προδιαγραφή, επομένως ένα νέο τελικό σημείο φτάνει στο SDK χωρίς να χρειάζεται να γράψει κανείς έναν wrapper.

Μικρό και με λίγες εξαρτήσεις

Μία εξάρτηση χρόνου εκτέλεσης και εγγενές fetch. Εκτελείται στο Node.js, στο πρόγραμμα περιήγησης και σε περιβάλλοντα εκτέλεσης edge, και διαθέτει άδεια χρήσης MIT.

Πληκτρολογήθηκε μέχρι κάτω

Διαβάστε τις εγγραφές DNS ενός τομέα και φιλτράρετέ τες με βάση τον τύπο εγγραφής που ορίζει η προδιαγραφή.

import type { components } from "@zinn-digital/sdk";

type DnsRecord = components["schemas"]["DnsRecord"];

// Paths, parameters and responses are all typed from the OpenAPI spec:
// a misspelt query parameter is a compile error, not a silent no-op.
const { data: records } = await api.GET("/v1/domains/{domainId}/dns/records", {
  params: { path: { domainId: "YOUR_DOMAIN_ID" } },
});
const txt: DnsRecord[] = (records?.data ?? []).filter((r) => r.type === "TXT");
for (const record of txt) console.log(record.name, record.value);

Ερωτήσεις

Διαθέτετε SDK για TypeScript ή JavaScript;

Ναι. Εγκαταστήστε το @zinn-digital/sdk από το npm. Πρόκειται για έναν πλήρως πληκτρολογημένο πελάτη που δημιουργήθηκε από τις προδιαγραφές OpenAPI μας και καλύπτει ολόκληρο το δημόσιο API.

Πώς μπορώ να πραγματοποιήσω έλεγχο ταυτότητας;

Δημιουργήστε ένα κλειδί API στη σελίδα Κλειδιά API του πίνακα ελέγχου σας και στείλτε το ως διακριτικό φορέα (bearer token) στην κεφαλίδα Authorization. Τα δημόσια τελικά σημεία καταλόγου δεν χρειάζονται κλειδί.

Πώς διατηρείται το SDK ενημερωμένο;

Δημιουργείται από την ίδια προδιαγραφή OpenAPI από την οποία έχει κατασκευαστεί το API, και μια νέα έκδοση δημοσιεύεται αυτόματα κάθε φορά που αλλάζει αυτή η προδιαγραφή.

Εξερευνήστε κάθε τελικό σημείο

Κάθε λειτουργία που μπορεί να καλέσει το SDK περιγράφεται στην αναφορά του API, με τις παραμέτρους, τις αποκρίσεις και τα δικαιώματά της.

Αναφορά API