Python SDK
Xostingingizni Python orqali boshqaring
zinn-sdk — bu API yaratilgan ayni OpenAPI spetsifikatsiyasi asosida shakllantirilgan, Zinn Digital® API uchun turlashtirilgan Python mijozi. Har bir amal sinxron va asyncio variantlariga ega boʻlib, har bir soʻrov va javob turlashtirilgan model hisoblanadi.
Oʻrnatish
Paket PyPI platformasida zinn-sdk sifatida mavjud va zinn_sdk sifatida import qilinadi. U Python 3.11 yoki undan keyingi versiyasini talab qiladi.
pip install zinn-sdkTezkor boshlash
Kalitsiz ommaviy xosting hududlarini sanab oʻting, soʻngra kalit yordamida oʻz saytlaringizni sanab oʻting.
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)Autentifikatsiya
Hududlar va rejalar kabi ommaviy katalog oxirgi nuqtalari hech qanday hisob maʼlumotlarini talab qilmaydi. Qolgan barcha narsalar AuthenticatedClient ga uzatiladigan har bir tashkilot uchun API kalitidan foydalanadi, u esa uni eltuvchi token sifatida yuboradi. Kalit faqat siz uni yaratishda bergan ruxsatlarga ega boʻladi va siz uni istalgan vaqtda bekor qilishingiz mumkin. Uni muhit oʻzgaruvchisida yoki maxfiy maʼlumotlar omboringizda saqlang, hech qachon manba kodida saqlamang.
Nimaga ega boʻlasiz
Tiplangan modellar
Soʻrovlar va javoblar tur koʻrsatmalariga ega attrs modellari hisoblanadi, shuning uchun muharriringiz va tur tekshiruvchingiz har bir maydonni tushunadi.
Sinxronlash va asyncio
Har bir operatsiya sync, sync_detailed, asyncio va asyncio_detailed funksiyalariga ega boʻlib, ular operatsiya nomi boʻyicha snake case formatida nomlangan va zinn_sdk.api ostida API sohalari boʻyicha guruhlangan.
Spetsifikatsiyadan yaratilgan
OpenAPI spetsifikatsiyasi oʻzgargan har bir holatda yangi versiya avtomatik ravishda chop etiladi. Generator hali ifodalay olmaydigan sanoqli amallar har bir nashrda roʻyxatga olinadi va tekshiriladi, hamda REST API orqali mavjud boʻlib qolaveradi.
Asinxron chaqiruvlar
asyncio bilan bir xil chaqiruv, HTTP holatini hamda tahlil qilingan javobni qaytaradi.
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())Savollar
Sizda Python SDK bormi?
Ha. PyPI dan zinn-sdk ni pip install zinn-sdk orqali oʻrnating va zinn_sdk ni import qiling. Bu bizning OpenAPI spetsifikatsiyamizdan yaratilgan, sinxron hamda asyncio chaqiruvlariga ega tiplashtirilgan mijozdir.
Python SDK-da ma'lum bir so'nggi nuqta qayerda joylashgan?
Amallar zinn_sdk.api ostida API sohasi boʻyicha guruhlangan va snake case uslubidagi amal identifikatori boʻyicha nomlangan. Masalan, saytlar roʻyxatini olish — zinn_sdk.api.hosting.list_sites.
Qaysi Python versiyalari qoʻllab-quvvatlanadi?
Python 3.11 va undan keyingi versiyalar.
Har bir soʻnggi nuqtani oʻrganing
SDK chaqirishi mumkin bo'lgan har bir operatsiya uning parametrlari, javoblari va ruxsatlari bilan birga API ma'lumotnomasida tavsiflangan.