Skip to main content

PyYapper

An intuitive, async Python library for the Yapper bot API. Designed to feel familiar to discord.py users while staying small and dependency-light.

Install

pip install pyyapper

Requires Python 3.9+ and aiohttp.

Quick start

from pyyapper import Bot

bot = Bot("yb_...")  # your token from Settings -> Developer


@bot.command("ping", description="Is the bot alive?")
async def ping(ctx):
    await ctx.reply("pong")


@bot.event
async def on_ready(me):
    print("online as", me.username)


bot.run()

Features

  • Async-first, with a synchronous bot.run() entry point.
  • Decorator-based commands and events (@bot.command, @bot.event, @bot.button).
  • Rich message context: ctx.reply, ctx.say, ctx.author_mention, ctx.argv.
  • Button/interaction helpers: i.reply, i.ephemeral, i.update, i.ack.
  • Embed, Button, Row builders with chaining.
  • Typed data models (User, Message, Channel, ...) and a full exception hierarchy.
  • Automatic retry on 429 with Retry-After, exponential backoff, timeouts.
  • Long-polling event loop with cursor tracking (nothing lost on reconnect).
  • New in 1.1.0: cogs/extensions (bot.add_cog, bot.load_extension), periodic tasks (tasks.loop), type-hint converters, checks (has_permissions, cooldown, ...), command groups, pagination (Paginator), bot.wait_for, and a Webhook client.

Error handling

from pyyapper import Bot, NotFound, Forbidden, RateLimited

bot = Bot("yb_...")

async def main():
    try:
        await bot.delete("some-channel", "some-message")
    except NotFound:
        print("message already gone")
    except Forbidden:
        print("missing Manage messages permission")
    except RateLimited as e:
        print("slow down, retry after", e.retry_after)

import asyncio
asyncio.run(main())

Documentation

See the Yapper developer docs: https://www.yapper.website/developers

License

MIT

Metadata

Release files for pyyapper 1.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyyapper 1.7.0
File Size Uploaded Provenance
pyyapper-1.7.0.tar.gz 49.9 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pyyapper 1.7.0
File Interpreter ABI Platform
pyyapper-1.7.0-py3-none-any.whl Python 3 none any Details

Total release size: 103.9 kB

Release files / pyyapper-1.7.0.tar.gz

Download URL pyyapper-1.7.0.tar.gz
Size 49.9 kB
Tags Source
SHA-256 checksum
How to use checksums
f84572fd017567f242727c14ae1f34ab1dde2bc2c70802b1b32220b596c31479
BLAKE2b-256 checksum
How to use checksums
9ac4fa4fdba6c0c222f4f29d04be6444438546e0af50b05667988c16bb85272b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / pyyapper-1.7.0-py3-none-any.whl

Download URL pyyapper-1.7.0-py3-none-any.whl
Size 53.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e32d75d603afa9ad12e5fc4f52a45d9b370aaa80af0fd50301407bfaa7fdc3f0
BLAKE2b-256 checksum
How to use checksums
60f7bcc4a259610c44cbcdcb95df8a8d67709c8e2aaee06d5cae5a282d03e6b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Security for pyyapper 1.7.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page