Обвертка над API keksik.io
Project description
Keksik API wrapper
Обвертка над API keksik.io
Использование:
import os
from keksik_api import KeksikAPI, KeksikAPIException
GROUP_ID = int(os.environ.get('GROUP_ID'))
ACCESS_TOKEN = os.environ.get('ACCESS_TOKEN')
api = KeksikAPI(GROUP_ID, ACCESS_TOKEN)
last_donates = await api.donates.get_last()
for item in last_donates.items:
print(item.id)
# Передача токена динамически
await api.donates.answer(1, "Спасибо :3", group=GROUP_ID, token=ACCESS_TOKEN)
# Ошибочки
try:
await api.donates.answer(-666, '')
except KeksikAPIException as exc:
print("Произошла ошибка: ", exc.error_code, exc.message)
# Кастомные запросы
await api.request("{method}", dict(data='...'), raise_errors=False)
# Callback
import uvicorn
from fastapi import FastAPI
from keksik_api.callback import Callback, Router
from keksik_api import schemas
SECRET_KEY = os.environ.get('SECRET_KEY')
CONFIRMATION_CODE = os.environ.get('CONFIRMATION_CODE')
router = Router()
@router.on_new_donate()
async def on_new_donate_handler(event: schemas.DonateEvent):
print("New donate", event.donate.id)
callback = Callback(
KeksikAPI(GROUP_ID, ACCESS_TOKEN),
SECRET_KEY,
CONFIRMATION_CODE,
router=router
)
app = FastAPI()
@app.post("/")
async def app_route(params: dict):
return await callback.route_web_request(params)
if __name__ == "__main__":
uvicorn.run(app)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
keksik_api-0.2.5.tar.gz
(27.2 kB
view hashes)
Built Distribution
keksik_api-0.2.5-py3-none-any.whl
(16.7 kB
view hashes)
Close
Hashes for keksik_api-0.2.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1dc94d2c47e70efc55c7707a9d3cb4f8f749bd5dbfad21e97fe473c845236647 |
|
MD5 | 3c886f2fcce7275b94d0ecff03b2e06f |
|
BLAKE2b-256 | bdf3e96b2d2aed495ffc29d8de9f83055bead4ef1d982038058252f46373e0db |