Skip to main content

Обвертка над API keksik.io

Project description

Keksik API wrapper

Обвертка над API keksik.io

PyPI - Downloads PyPI

Использование:

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)

Uploaded Source

Built Distribution

keksik_api-0.2.5-py3-none-any.whl (16.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page