Python SDK
Хостингіңізді Python арқылы басқарыңыз
zinn-sdk — API құрастырылған бірдей OpenAPI сипаттамасынан жасалған Zinn Digital® API үшін типтелген Python клиенті. Әрбір операцияның синхронды және 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-ке берілетін және оны ұсынушы токені (bearer token) ретінде жіберетін ұйымдық API кілтін пайдаланады. Кілт тек сіз оны жасаған кезде берген рұқсаттарға ие болады және оны кез келген уақытта қайтарып алуға болады. Оны бастапқы кодта емес, орта айнымалысында немесе құпия сақтау орнында сақтаңыз.
Сіз не аласыз
Типтелген модельдер
Сұраулар мен жауаптар түр бойынша нұсқаулары бар attrs үлгілері болып табылады, сондықтан өңдегішіңіз бен түр тексерушіңіз әр өрісті түсінеді.
Синхрондау және asyncio
Әрбір операцияда snake case стилінде операция атауымен аталған және zinn_sdk.api астындағы API аймағы бойынша топтастырылған sync, sync_detailed, asyncio және asyncio_detailed функциялары бар.
Спецификациядан жасалған
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 бар ма?
Иә. PyPI жүйесінен zinn-sdk бағдарламасын pip install zinn-sdk арқылы орнатыңыз және zinn_sdk импорттаңыз. Бұл синхронды және asyncio шақырулары бар OpenAPI сипаттамамыздан жасалған типтелген клиент.
Python SDK-де белгілі бір соңғы нүкте қайда орналасқан?
Операциялар zinn_sdk.api астында API аймағы бойынша топтастырылған және олардың операция идентификаторына (operation id) сәйкес snake case стилінде аталған. Мысалы, сайттар тізімін алу — zinn_sdk.api.hosting.list_sites.
Python бағдарламасының қай нұсқаларына қолдау көрсетіледі?
Python 3.11 және одан кейінгі нұсқалар.
Әрбір соңғы нүктені зерттеу
SDK шақыра алатын әрбір әрекет параметрлерімен, жауаптарымен және рұқсаттарымен бірге API анықтамалығында сипатталған.