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);પ્રમાણીકરણ
પ્રદેશો અને યોજનાઓ જેવા જાહેર કૅટેલૉગ એન્ડપૉઇન્ટ્સને કોઈ ઓળખપત્રની જરૂર નથી. બાકીનું બધું બેઅરર ટોકન તરીકે મોકલવામાં આવેલ સંસ્થા-દીઠ 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 સંદર્ભમાં તેના પરિમાણો, જવાબો અને પરવાનગીઓ સાથે કરવામાં આવ્યું છે.