Python SDK

Hostinqinizi Python vasitəsilə idarə edin

zinn-sdk, Zinn Digital® API-si üçün tipləşdirilmiş Python müştərisidir və API-nin qurulduğu eyni OpenAPI spesifikasiyasından yaradılmışdır. Hər bir əməliyyatın sinxron və asyncio variantları mövcuddur və hər bir sorğu ilə cavab tipləşdirilmiş modeldir.

Bütün tərtibatçı sənədləri →

Quraşdırın

Paket PyPI üzərində zinn-sdk adındadır və zinn_sdk kimi idxal edilir. Bunun üçün Python 3.11 və ya daha sonrakı versiyası tələb olunur.

pip install zinn-sdk

Sürətli başlanğıc

Açar olmadan ictimai hostinq regionlarını sadalayın, sonra isə açarla öz saytlarınızı sadalayın.

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)

Autentifikasiya

Regionlar və planlar kimi ictimai kataloq son nöqtələri heç bir etimadnamə tələb etmir. Qalan hər şey AuthenticatedClient-ə ötürülən və onu daşıyıcı token kimi göndərən təşkilat üzrə API açarından istifadə edir. Açar yalnız siz onu yaradarkən ona verdiyiniz icazələri daşıyır və siz onu istənilən vaxt ləğv edə bilərsiniz. Onu mühit dəyişənində və ya məxfi məlumatlar anbarınızda saxlayın, heç vaxt mənbə kodunda saxlamayın.

İdarəetmə panelinizdə API açarı yaradın

Əldə edəcəkləriniz

Tipləşdirilmiş modellər

Sorğular və cavablar tip göstərişləri olan attrs modelləridir, buna görə də redaktorunuz və tip yoxlayıcınız hər bir sahəni başa düşür.

Sinxronizasiya və asyncio

Hər bir əməliyyatın sync, sync_detailed, asyncio və asyncio_detailed funksiyaları var; onlar əməliyyatın adı ilə snake case üslubunda adlandırılıb və zinn_sdk.api altında API sahəsinə görə qruplaşdırılıb.

Spesifikasiyadan yaradılıb

OpenAPI spesifikasiyası hər dəfə dəyişdikdə yeni versiya avtomatik olaraq dərc olunur. Generatorun hələ ifadə edə bilmədiyi az sayda əməliyyat hər buraxılışda siyahıya alınır və yoxlanılır, həmçinin REST API vasitəsilə əlçatan olaraq qalır.

Asinxron çağırışlar

Eyni çağırış asyncio ilə, həm HTTP statusunu, həm də təhlil edilmiş cavabı qaytarır.

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

Suallar

Sizin Python SDK-nız var?

Bəli. pip install zinn-sdk vasitəsilə PyPI-dən zinn-sdk quraşdırın və zinn_sdk idxal edin. Bu, sinxron və asyncio çağırışları olan, OpenAPI spesifikasiyamızdan yaradılmış tipləşdirilmiş müştəridir.

Müəyyən bir son nöqtə Python SDK-da harada yerləşir?

Əməliyyatlar zinn_sdk.api altında API sahəsinə görə qruplaşdırılır və snake case formatında əməliyyat id-sinə uyğun adlandırılır. Məsələn, saytların siyahıya alınması zinn_sdk.api.hosting.list_sites şəklindədir.

Hansı Python versiyaları dəstəklənir?

Python 3.11 və daha sonrakı versiyalar.

Hər bir son nöqtəni kəşf edin

SDK-nın çağıra biləcəyi hər bir əməliyyat parametrləri, cavabları və icazələri ilə birlikdə API sorğu kitabçasında təsvir edilmişdir.

API təlimatı