Skip to main content

A Python module for the Puush ( API.

Project description is a Python library for interfacing with Puush, a file host, web app, and desktop app with a great quick-upload screenshot feature. It’s very simple to use:

import puush
account = puush.Account("my_api_key")

To use, you will need either login credentials (e-mail and password), or an API key, which can be obtained from your account settings page.


Simply install it with pip, as following:

pip install


Mainly, you will be using the puush.Account class. It uses puush.File objects, however, so both of these are detailed below. On failure, all methods raise a puush.PuushError.

puush.Account(api_key_or_email[, password=None])

Initialize an Account using either an API key or login credentials:

# With API key
account = puush.Account("my_api_key")
# With login credentials
account = puush.Account("", "bestpassword")

If the API key or credentials are invalid, a puush.AuthenticationError (which subclasses puush.PuushError) will be raised.

puush.Account.upload(self, f)

Upload a file to the Puush account. The only parameter, f, can be either a path to a file or a file-like object. Return a puush.File.

puush.Account.delete(self, id)

Delete the file with the ID id from the Puush account.

Also consider using puush.File.delete if you already have a File.

puush.Account.thumbnail(self, id)

Get the 100x100px thumbnail of the file with the ID id, and return its raw PNG data.

Also consider using puush.File.thumbnail if you already have a File.


Return a list of the Puush account’s last 10 (or fewer, if the account has fewer) uploads. Each entry is a puush.File.


True if the account has premium status, False if not.

puush.File(id, url, filename, upload_time, views)

A file uploaded to Puush. Not meant to be initialized outside of the library.


Delete the file from Puush.


Get the 100x100 thumbnail of the file. Return the raw PNG data.

The Puush ID of the uploaded file. Is unique to the file, and can be used with puush.Account methods.


The URL to access the file.


The file’s original filename.


The file’s upload time, formatted “YYYY-MM-DD HH:MM:SS”.


How many times the file has been accessed.

Special thanks

I would like to thank blha303 for the Puush API documentation. Having it definitely saved me a lot of time reverse-engineering the desktop app.


If there’s a bug with the library or a feature you’d like, please open an issue on GitHub.

If you want to ask questions about the library, or just want to talk to me about… anything, really, you can do so through any of these:

To get a quick answer, Twitter is your best bet.


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 (11.6 kB view hashes)

Uploaded source

Built Distribution (8.4 kB view hashes)

Uploaded 2 7

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page