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.

Barcha dasturchilar hujjatlari →

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-sdk

Tezkor 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.

Boshqaruv panelingizda API kalitini yarating

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.

API ma'lumotnomasi