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)تایید
د عامه کتلاګ پای ټکي، لکه سیمې او پلانونه، هیڅ تصدیق پاڼې ته اړتیا نلري. نور هرڅه د هرې ادارې لپاره یو د API کلي کاروي چې AuthenticatedClient ته لیږل کیږي، کوم چې دا د bearer token په توګه لیږي. یو کلی یوازې هغه اجازې لري چې تاسو یې د جوړولو پرمهال ورکوئ، او تاسو کولی شئ دا هر وخت لغوه کړئ. دا په یوه چاپیریالي متغیر یا ستاسو د محرماتو ذخیره کې وساتئ، هیڅکله یې په سرچینه کوډ کې مه ساتئ.
هغه څه چې تاسو ترلاسه کوئ
ټایپ شوي ماډلونه
غوښتنې او ځوابونه د ډول اشارو لرونکي 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 لرئ؟
هو. zinn-sdk له PyPI څخه د pip install zinn-sdk سره ولګوئ او zinn_sdk وارد کړئ. دا یو ټایپ شوی پیرودونکی دی چې زموږ د OpenAPI مشخصاتو څخه جوړ شوی، د همغږي او asyncio زنګونو سره.
په Python SDK کې ورکړل شوی پای ټکی چیرته دی؟
عملیات د zinn_sdk.api لاندې د API ساحې له مخې ګروپ شوي او په snake case کې د دوی د عملیاتي id له مخې نومول شوي دي. د مثال په توګه، د سایټونو لیست کول zinn_sdk.api.hosting.list_sites دي.
د Python کومې نسخې ملاتړ کیږي؟
Python 3.11 او وروستي نسخې.
هر پای ټکی وپلټئ
هر هغه عملیات چې SDK یې غوښتنه کولی شي، د هغې د پیرامیټرونو، ځوابونو او اجازو سره یوځای د API په حواله کې تشریح شوي دي.