Python SDK

Python से अपनी होस्टिंग प्रबंधित करें

zinn-sdk Zinn Digital® API के लिए एक टाइप्ड Python क्लाइंट है, जिसे उसी OpenAPI विनिर्देश से तैयार किया गया है जिससे API बनाया गया है। प्रत्येक ऑपरेशन में सिंक्रोनस और asyncio वेरिएंट होते हैं, और प्रत्येक अनुरोध और प्रतिक्रिया एक टाइप्ड मॉडल होती है।

सभी डेवलपर दस्तावेज़ →

इंस्टॉल करें

पैकेज PyPI पर zinn-sdk के रूप में उपलब्ध है और इसे zinn_sdk के रूप में आयात किया जाता है। इसके लिए Python 3.11 या बाद के संस्करण की आवश्यकता है।

pip install zinn-sdk

त्वरित शुरुआत

कुंजी के बिना सार्वजनिक होस्टिंग क्षेत्रों को सूचीबद्ध करें, फिर किसी कुंजी के साथ अपनी स्वयं की साइटों को सूचीबद्ध करें।

import os

from zinn_sdk import AuthenticatedClient, Client
from zinn_sdk.api.catalog import list_public_hosting_regions
from zinn_sdk.api.hosting import list_sites

# Public catalogue endpoints need no key.
public = Client(base_url="https://api.zinndigital.com")
regions = list_public_hosting_regions.sync(client=public)
print([region.slug for region in regions.data])

# Everything else uses a per-organisation API key.
api = AuthenticatedClient(base_url="https://api.zinndigital.com", token=os.environ["ZINN_API_KEY"])
page = list_sites.sync(client=api, limit=5)
for site in page.data:
    print(site.name, site.status)

प्रमाणीकरण

सार्वजनिक कैटलॉग एंडपॉइंट्स, जैसे कि क्षेत्र और योजनाएं, को किसी क्रेडेंशियल की आवश्यकता नहीं होती है। बाकी सब कुछ AuthenticatedClient को दिए गए प्रति-संगठन API की का उपयोग करता है, जो इसे बेयरर टोकन के रूप में भेजता है। किसी की में केवल वही अनुमतियां होती हैं जो आप इसे बनाते समय प्रदान करते हैं, और आप इसे किसी भी समय निरस्त कर सकते हैं। इसे किसी एनवायरनमेंट वेरिएबल या अपने सीक्रेट स्टोर में रखें, स्रोत कोड में कभी नहीं।

अपने डैशबोर्ड में एक API कुंजी बनाएं

आपको क्या मिलता है

टाइप किए गए मॉडल

अनुरोध और प्रतिक्रियाएं प्रकार संकेतों के साथ attrs मॉडल हैं, ताकि आपका संपादक और आपका प्रकार परीक्षक प्रत्येक फ़ील्ड को समझ सकें।

सिंक और asyncio

प्रत्येक ऑपरेशन में sync, sync_detailed, asyncio और asyncio_detailed फ़ंक्शन होते हैं, जिनका नाम ऑपरेशन के अनुसार snake case में रखा गया है और zinn_sdk.api के तहत API क्षेत्र के अनुसार समूहीकृत किया गया है।

विनिर्देश से जनरेट किया गया

OpenAPI विनिर्देश में बदलाव होने पर हर बार स्वचालित रूप से एक नया संस्करण प्रकाशित किया जाता है। वे कुछ संचालन जिन्हें जनरेटर अभी तक व्यक्त नहीं कर सकता है, उन्हें प्रत्येक रिलीज़ पर सूचीबद्ध और जाँचा जाता है, और वे REST API के माध्यम से उपलब्ध रहते हैं।

एसिंक्रोनस कॉल्स

asyncio के साथ वही कॉल, जो पार्स की गई प्रतिक्रिया के साथ-साथ HTTP स्थिति भी लौटाता है।

import asyncio

from zinn_sdk.api.hosting import list_sites

# Every operation has sync, sync_detailed, asyncio and asyncio_detailed variants.
async def main() -> None:
    response = await list_sites.asyncio_detailed(client=api, limit=5)
    print(response.status_code, len(response.parsed.data))

asyncio.run(main())

प्रश्न

क्या आपके पास Python SDK है?

हाँ। pip install zinn-sdk के साथ PyPI से zinn-sdk स्थापित करें और zinn_sdk आयात करें। यह हमारे OpenAPI विनिर्देश से उत्पन्न एक टाइप किया गया क्लाइंट है, जिसमें सिंक्रोनस और asyncio कॉल शामिल हैं।

Python SDK में कोई दिया गया एंडपॉइंट कहाँ है?

ऑपरेशन्स को zinn_sdk.api के अंतर्गत API क्षेत्र द्वारा समूहीकृत किया गया है और उनके ऑपरेशन आईडी के आधार पर snake case में नामित किया गया है। उदाहरण के लिए, साइटों को सूचीबद्ध करना zinn_sdk.api.hosting.list_sites है।

Python के कौन से संस्करण समर्थित हैं?

Python 3.11 और बाद के संस्करण।

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

SDK द्वारा कॉल किए जा सकने वाले प्रत्येक ऑपरेशन का विवरण, उसके मापदंडों, प्रतिक्रियाओं और अनुमतियों के साथ API संदर्भ में दिया गया है।

एपीआई संदर्भ