מאגר ידע

שימוש ב-TypeScript SDK (@zinn-digital/sdk)

התקינו את @zinn-digital/sdk מ-npm, צרו מפתח API ובצעו את הקריאות הראשונות בעלות הטיפוסים אל Zinn Digital® API מתוך TypeScript — אזורים ציבוריים ללא מפתח, לאחר מכן האתרים שלכם — בנוסף לסוגי הסכמה המיוצאים ואופן החזרת השגיאות.

@zinn-digital/sdk הוא לקוח ה-TypeScript הרשמי שלנו עבור ה-API של Zinn Digital®, המפורסם ב-npm. כל נתיב, פרמטר ותגובה בו נוצרים מאותו מפרט OpenAPI שממנו נבנה ה-API, וגרסה חדשה מתפרסמת אוטומטית בכל פעם שמפרט זה משתנה. מדריך זה מתקין אותו, מאמת אותו ומבצע את הקריאות הראשונות שלכם.

התקנה

npm install @zinn-digital/sdk

הוא עובד בכל סביבת ריצה של JavaScript הכוללת את fetch: Node.js, הדפדפן וסביבות ריצה מסוג edge. יש לו תלות ריצה יחידה, openapi-fetch, והוא ברישיון MIT.

יצירת מפתח API

פתחו את דף מפתחות API בלוח הבקרה שלכם (app.zinndigital.com/api-keys) ולחצו על צור מפתח. תנו למפתח שם והעניקו לו אך ורק את ההרשאות שהקוד שלכם זקוק להן — לדוגמה sites.view כדי להציג את רשימת האתרים. המפתח מוצג פעם אחת בלבד; אחסנו אותו במשתנה סביבה או במאגר הסודות שלכם, לעולם לא בקוד המקור. באפשרותכם לבטל מפתח בכל עת באותו הדף.

נקודות קצה של קטלוג ציבורי, כגון אזורי אחסון ותוכניות, אינן דורשות מפתח כלל.

הקריאות הראשונות שלכם

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"];

נתיב, פרמטר או שדה עם שגיאת כתיב מהווים שגיאת הידור (compile error) ולא בקשה שמבצעת בשקט את הפעולה השגויה.

שגיאות

כל קריאה מחזירה { data, error, response }. בתגובה שאינה 2xx, הערך data אינו מוגדר ו-error היא מעטפת השגיאה של ה-API: error.error.code, הודעה קריאה לבני אדם error.error.message, ובמקרה של כשלי אימות, error.error.details המציינת כל שדה. המשמעות של 403 היא שלמפתח אין את ההרשאה שנקודת הקצה צריכה — צרו מפתח עם הרשאה זו במקום לעשות שימוש חוזר במפתח עם הרשאות יתר.

לאן להמשיך מכאן

  • המדריך באתר האינטרנט שלנו: zinndigital.com/developers/sdk-typescript
  • כל נקודת קצה, הפרמטרים שלה וההרשאה שלה: zinndigital.com/developers/api
  • החבילה ב-npm: npmjs.com/package/@zinn-digital/sdk

כל תיעוד המפתחים →

החדשות האחרונות מהבלוג

מה שכתבנו על אחסון אתרים, SEO והפעלת אתרים בקנה מידה רחב.

קידום אתרים ובניית קישורים משכבת האחסון: נקודת מבטו של מפעיל לשנת 2026

כיצד האחסון מעצב את יצירת האינדקס ואת ערך הקישורים בשנת 2026: שמירה על דפים מאונדקסים, בדיקת דומיינים ותיקים לפני בנייה עליהם, בניית קישורים ללא עקבות מנועי חיפוש, ומבט כנה על מה שתשתית יכולה ולא יכולה לעשות עבור SEO.

קרא את הפוסט ←

הפיכת WordPress למהיר ומאובטח: צ'ק-ליסט לביצועים ותוספים

צ'ק-ליסט מעשי עבור WordPress מהיר ומאובטח: שמירה במטמון ברמת השרת, מטמון אובייקטים לכל אתר, קומץ התוספים ששווה להפעיל, שמירה על עדכניות התשתית ודפי WooCommerce שלעולם אסור לשמור במטמון.

קרא את הפוסט ←

כיצד לבחור אחסון אתרים מנוהל בשנת 2026: מדריך לרוכש

מה באמת מבדיל בין אחסון מנוהל טוב לבין קופסה זולה עם לוח בקרה — העברות, גיבויים, בידוד, שמירה אמיתית במטמון ומדרגיות כנה — וכיצד לשפוט זאת לפני שאתם מתחייבים.

קרא את הפוסט ←

קראו את הבלוג ←

עדיין נתקלתם בבעיה?

התמיכה כלולה בכל תוכנית, שולחן העבודה פתוח 24 שעות ביממה, ותוכלו לכתוב לנו בכל אחת מ-58 השפות שלנו — אנו נענה לכם בשפה שלכם.

יצירת קשר עם התמיכה → כל המאמרים →