Python SDK
Python-ൽ നിന്ന് നിങ്ങളുടെ ഹോസ്റ്റിംഗ് നിയന്ത്രിക്കുക
zinn-sdk എന്നത് Zinn Digital® API-യ്ക്കായുള്ള ഒരു ടൈപ്പ് ചെയ്ത Python ക്ലയന്റാണ്, ഇത് API നിർമ്മിച്ചിരിക്കുന്ന അതേ OpenAPI സ്പെസിഫിക്കേഷനിൽ നിന്നാണ് ജനറേറ്റ് ചെയ്തിരിക്കുന്നത്. ഓരോ പ്രവർത്തനത്തിനും സിൻക്രണസ്, 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-ലേക്ക് നൽകുന്ന ഓർഗനൈസേഷൻ തിരിച്ചുള്ള API കീ ഉപയോഗിക്കുന്നു, അത് അതിനെ ഒരു ബെയറർ ടോക്കണായി അയയ്ക്കുന്നു. ഒരു കീ ഉണ്ടാക്കുമ്പോൾ നിങ്ങൾ നൽകുന്ന അനുമതികൾ മാത്രമേ അതിൽ ഉണ്ടാകൂ, നിങ്ങൾക്ക് എപ്പോൾ വേണമെങ്കിലും അത് പിൻവലിക്കാവുന്നതാണ്. ഇത് ഒരിക്കലും സോഴ്സ് കോഡിൽ സൂക്ഷിക്കരുത്, ഒരു എൻവയോൺമെന്റ് വേരിയബിളിലോ നിങ്ങളുടെ രഹസ്യ സ്റ്റോറിലോ സൂക്ഷിക്കുക.
നിങ്ങൾക്ക് ലഭിക്കുന്നത്
ടൈപ്പ് ചെയ്ത മോഡലുകൾ
അഭ്യർത്ഥനകളും പ്രതികരണങ്ങളും ടൈപ്പ് സൂചനകളുള്ള attrs മോഡലുകളാണ്, അതിനാൽ നിങ്ങളുടെ എഡിറ്ററും ടൈപ്പ് ചെക്കറും ഓരോ ഫീൽഡും മനസ്സിലാക്കുന്നു.
സമന്വയവും asyncio-യും
ഓരോ പ്രവർത്തനത്തിനും sync, sync_detailed, asyncio, asyncio_detailed എന്നീ ഫംഗ്ഷനുകൾ ഉണ്ട്, ഇവ പ്രവർത്തനത്തിന്റെ പേരിൽ snake case-ൽ നൽകിയിട്ടുള്ളതും zinn_sdk.api-ക്ക് കീഴിലുള്ള API മേഖലയനുസരിച്ച് ഗ്രൂപ്പുചെയ്തിട്ടുള്ളതുമാണ്.
വ്യക്തമാക്കലിൽ നിന്ന് സൃഷ്ടിച്ചത്
OpenAPI വിവരണം മാറുമ്പോഴെല്ലാം ഒരു പുതിയ പതിപ്പ് സ്വയമേവ പ്രസിദ്ധീകരിക്കുന്നു. ജനറേറ്ററിന് ഇതുവരെ പ്രകടിപ്പിക്കാൻ കഴിയാത്ത ചില പ്രവർത്തനങ്ങൾ ഓരോ റിലീസിലും പട്ടികപ്പെടുത്തുകയും പരിശോധിക്കുകയും ചെയ്യുന്നു, കൂടാതെ അവ REST API വഴി ലഭ്യമായി തുടരുകയും ചെയ്യുന്നു.
അസിൻക് കോളുകൾ
HTTP സ്റ്റാറ്റസും പാഴ്സ് ചെയ്ത പ്രതികരണവും നൽകുന്ന asyncio ഉപയോഗിച്ചുള്ള അതേ കോൾ.
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 ഉണ്ടോ?
അതെ. pip install zinn-sdk ഉപയോഗിച്ച് PyPI-ൽ നിന്ന് zinn-sdk ഇൻസ്റ്റാൾ ചെയ്യുകയും zinn_sdk ഇമ്പോർട്ട് ചെയ്യുകയും ചെയ്യുക. സിൻക്രണസ്, asyncio കോളുകൾ ഉള്ള, ഞങ്ങളുടെ OpenAPI സ്പെസിഫിക്കേഷനിൽ നിന്ന് ജനറേറ്റ് ചെയ്ത ഒരു ടൈപ്പ് ചെയ്ത ക്ലയന്റാണിത്.
Python SDK-ൽ നിർദ്ദിഷ്ട എൻഡ്പോയിന്റ് എവിടെയാണ് സ്ഥിതിചെയ്യുന്നത്?
ഓപ്പറേഷനുകൾ zinn_sdk.api എന്നതിന് കീഴിൽ API ഏരിയ പ്രകാരം ഗ്രൂപ്പുചെയ്തിരിക്കുന്നു, കൂടാതെ അവയുടെ ഓപ്പറേഷൻ ഐഡി അടിസ്ഥാനമാക്കി snake case-ൽ പേരുനൽകിയിരിക്കുന്നു. ഉദാഹരണത്തിന്, സൈറ്റുകൾ ലിസ്റ്റ് ചെയ്യുന്നത് zinn_sdk.api.hosting.list_sites ആണ്.
ഏതൊക്കെ Python പതിപ്പുകൾ പിന്തുണയ്ക്കുന്നുണ്ട്?
Python 3.11-ഉം അതിനുശേഷമുള്ളവയും.
എല്ലാ എൻഡ്പോയിന്റും പര്യവേക്ഷണം ചെയ്യുക
SDK-യ്ക്ക് വിളിക്കാൻ കഴിയുന്ന ഓരോ പ്രവർത്തനവും അതിന്റെ പാരാമീറ്ററുകൾ, പ്രതികരണങ്ങൾ, അനുമതികൾ എന്നിവയോടൊപ്പം API റഫറൻസിൽ വിവരിച്ചിട്ടുണ്ട്.