An asynchronous Python wrapper for the discord.bio API
pip install discordbio
- Setting up the client
This will be used to make requests to the API
from discordbio import DBioClient
client = DBioClient()
- Exceptions
Error | Description |
---|---|
discordbio.errors.BaseDBioException | Exception others subclass from, can be used to catch any error thrown from the wrapper |
discordbio.errors.DBioError | Raised when discord.bio doesn't return a successful response |
discordbio.errors.HTTPException | Raised when the request to discord.bio itself fails |
- Getting a user's details, via username or Discord ID
All methods of DBioClient are typed meaning your IDE should auto complete the attributes If not, you can import the types (UserDetails and UserConnections) and manually set the type
details = await client.details("geek")
# With Type
from discordbio import UserDetails
details: UserDetails = await client.details("geek")
- Getting a specific value from a user's details, e.g. description or a users flags
description = (await client.details("geek")).settings.description
flags = (await client.details("geek")).discord.flags
# Flags can be used to determine a user's badges
- Getting a user's connections
connections = await client.connections("geek")
# With Discord connections
connections = await client.connections("geek", with_discord=True)
# With Type
from discordbio import UserConnections
connections: UserConnections = await client.connections("geek", with_discord=True)
- Miscellaneous Endpoints
users: int = await client.total_users() # Returns total user count
from discordbio import PartialUser
from typing import List
upvoted: List[PartialUser] = await client.top_upvoted()
- UserDetails (from client.details)
user: DBioUser
discord: Discord
- DBioUser
user_id: int
name: str
status: Optional[str]
description: Optional[str]
verified: bool
upvotes: int
premium: bool
location: Optional[str]
gender: Optional[str]
birthday: Optional[datetime]
email: Optional[str]
occupation: Optional[str]
created_at: datetime
banner: Optional[str]
- Discord
id: int
username: str
avatar: Optional[str]
avatar_url: str
is_avatar_animated: bool
discriminator: str
flags: int
- Partial User (from client.top_upvoted)
user_id: int
name: str
description: Optional[str]
verified: bool
upvotes: int
premium: bool
discord: Discord
- Connections (from client.connections)
github: Optional[str]
website: Optional[str]
instagram: Optional[str]
snapchat: Optional[str]
linkedin: Optional[str]
discord: List[DiscordConnection]
- Discord Connections
connection_type: str
name: str
url: str