TypeScript SDK

TypeScript वरून तुमचे होस्टिंग व्यवस्थापित करा

@zinn-digital/sdk हे Zinn Digital® API साठी पूर्णपणे टाइप केलेले क्लायंट आहे. प्रत्येक मार्ग, पॅरामीटर आणि प्रतिसाद त्याच OpenAPI तपशीलावरून तयार केले जातात ज्यावरून API तयार केले आहे, त्यामुळे तुमच्या संपादकाला संपूर्ण API माहित असते आणि टायपिंगची चूक ही कंपाइल एरर ठरते.

सर्व विकासक दस्तऐवज →

स्थापित करा

हे पॅकेज @zinn-digital स्कोप अंतर्गत npm वर उपलब्ध आहे. हे fetch असलेल्या कोणत्याही JavaScript रनटाइममध्ये कार्य करते.

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);

प्रमाणीकरण

प्रदेश आणि योजनांसारख्या सार्वजनिक कॅटलॉग एंडपॉइंट्ससाठी कोणत्याही क्रेडेंशियलची आवश्यकता नसते. इतर सर्व घटक bearer token म्हणून पाठवलेली प्रति-संस्था API की वापरतात. की तयार करताना तुम्ही त्यास दिलेल्या परवानग्याच केवळ तिच्याकडे असतात आणि तुम्ही ती कधीही रद्द करू शकता. ती पर्यावरण व्हेरिएबलमध्ये किंवा तुमच्या सिक्रेट स्टोअरमध्ये ठेवा, सोर्स कोडमध्ये कधीही ठेवू नका.

तुमच्या डॅशबोर्डमध्ये API की तयार करा

तुम्हाला काय मिळते

संपूर्ण सार्वजनिक API, टाइप केलेले

साइट्स, डोमेन्स आणि DNS, बिलिंग, सपोर्ट आणि सार्वजनिक API चे इतर प्रत्येक क्षेत्र. प्रतिसाद आणि त्रुटी टाइप केल्या आहेत, आणि स्कीमा प्रकार तुमच्या स्वतःच्या कोडसाठी निर्यात केले जातात.

व्युत्पन्न केले, कधीही हाताने लिहिलेले नाही

क्लायंट हा आमच्या OpenAPI तपशीलांमधून व्युत्पन्न केलेल्या प्रकारांवरील openapi-fetch आहे. जेव्हा जेव्हा तपशील बदलतो तेव्हा नवीन आवृत्ती आपोआप प्रकाशित होते, त्यामुळे कोणीही रॅपर न लिहिता नवीन एंडपॉईंट SDK पर्यंत पोहोचतो.

लहान आणि कमी अवलंबित्व असलेले

एक रनटाईम अवलंबित्व आणि नेटिव्ह fetch. हे Node.js मध्ये, ब्राउझरमध्ये आणि एज रनटाईममध्ये चालते आणि ते 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);

प्रश्न

तुमच्याकडे TypeScript किंवा JavaScript SDK आहे का?

होय. npm वरून @zinn-digital/sdk इन्स्टॉल करा. हा आमच्या OpenAPI तपशीलावरून तयार केलेला पूर्णपणे टाइप केलेला क्लायंट आहे, आणि तो संपूर्ण सार्वजनिक API कव्हर करतो.

मी प्रमाणीकरण कसे करू?

तुमच्या डॅशबोर्डवरील API की पृष्ठावर API की तयार करा आणि ती Authorization शीर्षलेखात बेअरर टोकन म्हणून पाठवा. सार्वजनिक कॅटलॉग एंडपॉइंट्सना कोणत्याही की ची आवश्यकता नसते.

SDK अद्ययावत कसे ठेवले जाते?

हे त्याच OpenAPI तपशीलावरून तयार केले जाते ज्यावरून API तयार केले आहे आणि जेव्हा जेव्हा त्या तपशीलात बदल होतो तेव्हा आपोआप एक नवीन आवृत्ती प्रकाशित केली जाते.

प्रत्येक एंडपॉइंट एक्सप्लोर करा

SDK कॉल करू शकणारे प्रत्येक ऑपरेशन त्याच्या पॅरामीटर्स, प्रतिसाद आणि परवानग्यांसह API संदर्भात वर्णन केले आहे.

API संदर्भ