Python SDK

Spravujte svůj hosting přes Python

zinn-sdk je typovaný klient Python pro rozhraní API Zinn Digital®, vygenerovaný ze stejné specifikace OpenAPI, ze které je toto rozhraní API vytvořeno. Každá operace má synchronní varianty a varianty pro asyncio a každý požadavek i odpověď je typovaný model.

Veškerá dokumentace pro vývojáře →

Instalovat

Balíček je dostupný na PyPI jako zinn-sdk a importuje se jako zinn_sdk. Vyžaduje Python 3.11 nebo novější.

pip install zinn-sdk

Rychlý start

Uveďte veřejné hostingové regiony bez klíče a poté uveďte své vlastní weby s klíčem.

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)

Ověření

Koncové body veřejného katalogu, jako jsou regiony a plány, nevyžadují žádné přihlašovací údaje. Vše ostatní používá klíč API pro danou organizaci předaný klientovi AuthenticatedClient, který jej odesílá jako nosný token (bearer token). Klíč má pouze ta oprávnění, která mu udělíte při jeho vytvoření, a můžete jej kdykoli zneplatnit. Uchovávejte jej v proměnné prostředí nebo v úložišti tajných klíčů, nikdy ne ve zdrojovém kódu.

Vytvořte si na řídicím panelu klíč API

Co získáte

Typované modely

Požadavky a odpovědi jsou modely attrs s nápovědami typů, takže váš editor i nástroj pro kontrolu typů rozumí každému poli.

Synchronizace a asyncio

Každá operace má funkce sync, sync_detailed, asyncio a asyncio_detailed, pojmenované podle operace ve stylu snake case a seskupené podle oblasti API pod zinn_sdk.api.

Vygenerováno ze specifikace

Nová verze se publikuje automaticky pokaždé, když se změní specifikace OpenAPI. Těch několik operací, které generátor zatím nedokáže vyjádřit, je při každém vydání uvedeno v seznamu a zkontrolováno a zůstávají dostupné prostřednictvím REST API.

Asynchronní volání

Stejné volání s asyncio, vracející stav HTTP a také analyzovanou odpověď.

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())

Otázky

Máte Python SDK?

Ano. Nainstalujte zinn-sdk z PyPI pomocí pip install zinn-sdk a importujte zinn_sdk. Jedná se o typového klienta vygenerovaného z naší specifikace OpenAPI se synchronními voláními a voláními asyncio.

Kde se v Python SDK nachází daný koncový bod?

Operace jsou seskupeny podle oblasti API pod zinn_sdk.api a jsou pojmenovány podle svého ID operace (operation id) ve formátu snake case. Například výpis webů je zinn_sdk.api.hosting.list_sites.

Které verze Python jsou podporovány?

Python 3.11 a novější.

Prozkoumejte každý koncový bod

Každá operace, kterou může SDK volat, je popsána v referenční příručce k API, a to včetně svých parametrů, odpovědí a oprávnění.

Reference API