Python SDK
Pamahalaan ang iyong hosting mula sa Python
Ang zinn-sdk ay isang typed na Python client para sa Zinn Digital® API, na nabuo mula sa parehong detalye ng OpenAPI kung saan binuo ang API. Ang bawat operasyon ay may mga synchronous at asyncio na variant, at ang bawat kahilingan at tugon ay isang typed na modelo.
I-install
Ang package ay nasa PyPI bilang zinn-sdk at ini-import bilang zinn_sdk. Kinakailangan nito ang Python 3.11 o mas bago.
pip install zinn-sdkMabilisang pagsisimula
Ilista ang mga pampublikong rehiyon ng pag-host nang walang key, pagkatapos ay ilista ang sarili mong mga site gamit ang isa.
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)Pagpapatotoo
Ang mga pampublikong endpoint ng katalogo, tulad ng mga rehiyon at plano, ay hindi nangangailangan ng kredensyal. Ang lahat ng iba pa ay gumagamit ng API key bawat organisasyon na ipinapasa sa AuthenticatedClient, na nagpapadala nito bilang isang bearer token. Nagtataglay lamang ang isang key ng mga pahintulot na ibinibigay mo kapag ginawa mo ito, at maaari mo itong bawiin anumang oras. Panatilihin ito sa isang variable ng kapaligiran o sa iyong imbakan ng lihim, huwag kailanman sa source code.
Ang makukuha mo
Mga na-type na modelo
Ang mga request at response ay mga attrs model na may mga type hint, kaya nauunawaan ng iyong editor at ng iyong type checker ang bawat field.
I-sync at asyncio
Ang bawat operasyon ay may mga function na sync, sync_detailed, asyncio, at asyncio_detailed, na pinangalanan ayon sa operasyon sa snake case at pinagsama-sama ayon sa bahagi ng API sa ilalim ng zinn_sdk.api.
Binuo mula sa detalye
Awtomatikong naipapublish ang isang bagong bersyon sa tuwing nagbabago ang detalye ng OpenAPI. Ang ilang operasyon na hindi pa maipahayag ng generator ay nakalista at sinusuri sa bawat release, at nananatiling available sa pamamagitan ng REST API.
Mga async na call
Ang parehong tawag gamit ang asyncio, na nagbabalik ng HTTP status gayundin ang na-parse na tugon.
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())Mga Tanong
Mayroon ba kayong Python SDK?
Oo. I-install ang zinn-sdk mula sa PyPI gamit ang pip install zinn-sdk at i-import ang zinn_sdk. Isa itong typed client na binuo mula sa aming detalye ng OpenAPI, na may mga synchronous at asyncio na tawag.
Nasaan ang isang partikular na endpoint sa Python SDK?
Ang mga operasyon ay pinagsama-sama ayon sa bahagi ng API sa ilalim ng zinn_sdk.api at pinangalanan batay sa kanilang operation id sa snake case. Halimbawa, ang paglilista ng mga site ay zinn_sdk.api.hosting.list_sites.
Aling mga bersyon ng Python ang sinusuportahan?
Python 3.11 at mas bago.
I-explore ang bawat endpoint
Inilalarawan ang bawat operasyon na maaaring tawagin ng SDK sa sanggunian ng API, kasama ang mga parameter, tugon, at pahintulot nito.