ज्ञानकोष

TypeScript SDK (@zinn-digital/sdk) प्रयोग गर्दै

npm बाट @zinn-digital/sdk स्थापना गर्नुहोस्, एउटा API कुञ्जी सिर्जना गर्नुहोस्, र TypeScript बाट Zinn Digital® API मा आफ्ना पहिलो टाइप गरिएका कलहरू गर्नुहोस् — कुनै कुञ्जी बिनाका सार्वजनिक क्षेत्रहरू, त्यसपछि आफ्नै साइटहरू — साथै निर्यात गरिएका स्कीमा प्रकारहरू र त्रुटिहरू कसरी फिर्ता आउँछन्।

@zinn-digital/sdk npm मा प्रकाशित गरिएको, Zinn Digital® API का लागि हाम्रो आधिकारिक TypeScript क्लाइन्ट हो। यसमा रहेको प्रत्येक पाथ, प्यारामिटर र प्रतिक्रिया उही OpenAPI स्पेसिफिकेसनबाट उत्पन्न गरिएको हो जसबाट API निर्माण गरिएको छ, र जब त्यो स्पेसिफिकेसन परिवर्तन हुन्छ तब स्वचालित रूपमा नयाँ संस्करण प्रकाशित हुन्छ। यो गाइडले यसलाई स्थापना गर्दछ, प्रमाणीकरण गर्दछ र तपाइँका पहिलो कलहरू गर्दछ।

स्थापना गर्नुहोस्

npm install @zinn-digital/sdk

यो fetch भएको कुनै पनि JavaScript रनटाइममा काम गर्दछ: Node.js, ब्राउजर र एज रनटाइमहरू। यसमा एउटा रनटाइम निर्भरता (dependency), openapi-fetch छ, र यो MIT-इजाजतपत्र प्राप्त छ।

API कुञ्जी सिर्जना गर्नुहोस्

आफ्नो ड्यासबोर्डको API कुञ्जीहरू पृष्ठ (app.zinndigital.com/api-keys) खोल्नुहोस् र कुञ्जी सिर्जना गर्नुहोस् थिच्नुहोस्। कुञ्जीलाई एउटा नाम दिनुहोस् र तपाईंको कोडलाई आवश्यक पर्ने अनुमतिहरू मात्र दिनुहोस् — उदाहरणका लागि साइटहरू सूचीकृत गर्न sites.view। कुञ्जी एक पटक मात्र देखाइन्छ; यसलाई वातावरण चर (environment variable) वा आफ्नो गोप्य भण्डार (secret store) मा भण्डारण गर्नुहोस्, स्रोत कोडमा कहिल्यै पनि होइन। तपाईं सोही पृष्ठमा जुनसुकै बेला कुञ्जी खारेज गर्न सक्नुहुन्छ।

होस्टिङ क्षेत्रहरू र योजनाहरू जस्ता सार्वजनिक क्याटलग एन्डपोइन्टहरूलाई कुनै पनि कुञ्जीको आवश्यकता पर्दैन।

तपाईंको पहिलो कलहरू

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

यसलाई ZINN_API_KEY=zdk_live_… npx tsx first-calls.ts मार्फत चलाउनुहोस्। पहिलो लाइनले होस्टिङ क्षेत्रहरू प्रिन्ट गर्दछ, त्यसपछि प्रति साइट एक लाइन।

तपाईंको आफ्नै कोडका लागि प्रकारहरू

स्कीमा प्रकारहरू निर्यात गरिएका छन्, त्यसैले तपाईंका आफ्नै प्रकार्यहरूले API का आकारहरू प्रयोग गर्न सक्छन्:

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

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

गलत हिज्जे भएको पाथ, प्यारामिटर वा फिल्ड भनेको गुपचुप रूपमा गलत काम गर्ने अनुरोध हुनुको सट्टा कम्पाइल त्रुटि हो।

त्रुटिहरू

प्रत्येक कलले { data, error, response } फर्काउँछ। गैर-2xx प्रतिक्रियामा data अनडिफाइन्ड हुन्छ र error भनेको API को त्रुटि खाम हो: error.error.code, मानिसले पढ्न सकिने error.error.message र प्रमाणीकरण विफलताहरूको लागि प्रत्येक फिल्डको नाम दिने error.error.details। 403 को अर्थ की (key) सँग एन्डपोइन्टलाई चाहिने अनुमति छैन — धेरै अनुमति भएको की पुन: प्रयोग गर्नुको सट्टा त्यो अनुमति भएको की सिर्जना गर्नुहोस्।

अब कहाँ जाने

  • हाम्रो वेबसाइटको गाइड: zinndigital.com/developers/sdk-typescript
  • प्रत्येक एन्डपोइन्ट, यसका प्यारामिटरहरू र यसको अनुमति: zinndigital.com/developers/api
  • npm मा रहेको प्याकेज: npmjs.com/package/@zinn-digital/sdk

सबै विकासकर्ता कागजातहरू →

ब्लगबाट पछिल्लो

होस्टिङ, SEO र ठूलो मात्रामा साइटहरू सञ्चालन गर्ने बारे हामीले लेखेका कुराहरू।

होस्टिङ तहबाट एसइओ र लिङ्क निर्माण: २०२६ का अपरेटरको दृष्टिकोण

सन् २०२६ मा होस्टिङले इन्डेक्सिङ र लिङ्क इक्विटीलाई कसरी रूप दिन्छ: पृष्ठहरूलाई इन्डेक्समा राखिराख्ने, निर्माण गर्नुअघि पुराना डोमेनहरू जाँच गर्ने, कुनै सर्च फुटप्रिन्ट बिना लिङ्क निर्माण गर्ने, र पूर्वाधारले एसइओका लागि के गर्न सक्छ र के गर्न सक्दैन भन्ने बारेमा इमानदार दृष्टिकोण।

पोस्ट पढ्नुहोस् →

WordPress लाई द्रुत र सुरक्षित बनाउने: कार्यसम्पादन र प्लगइन चेकलिस्ट

द्रुत, सुरक्षित WordPress का लागि एक व्यावहारिक चेकलिस्ट: सर्भर-स्तरको क्यासिङ, प्रति-साइट अब्जेक्ट क्यास, चलाउन लायक केही सीमित प्लगइनहरू, स्ट्याकलाई अद्यावधिक राख्ने, र तपाईंले कहिल्यै क्यास गर्न नहुने WooCommerce पृष्ठहरू।

पोस्ट पढ्नुहोस् →

२०२६ मा व्यवस्थित वेब होस्टिङ कसरी छनौट गर्ने: एक खरिदकर्ताको गाइड

कन्ट्रोल प्यानल भएको सस्तो बक्सबाट राम्रो व्यवस्थित होस्टिङलाई वास्तवमा केले फरक पार्छ — माइग्रेसन, ब्याकअप, अलगाव, वास्तविक क्यासिङ र इमानदार स्केलिंग — र तपाईंले प्रतिबद्ध हुनुअघि यसलाई कसरी मूल्याङ्कन गर्ने।

पोस्ट पढ्नुहोस् →

ब्लग पढ्नुहोस् →

अझै पनि समस्या भइरहेको छ?

सबै योजनाहरूमा सहयोग समावेश गरिएको छ, हेल्पडेस्क दिनको 24 घण्टा खुला रहन्छ, र तपाईंले हाम्रा कुनै पनि 58 भाषाहरूमा हामीलाई लेख्न सक्नुहुन्छ—हामी तपाईंले बुझ्ने भाषामा जवाफ दिन्छौं।

सहयोगलाई सम्पर्क गर्नुहोस् → सबै लेखहरू →