Metadata-Version: 2.1
Name: gospeed-api
Version: 2.1.1
Summary: Default template for PDM package
Author-Email: tick97115115 <32931796+tick97115115@users.noreply.github.com>
License: MIT
Requires-Python: >=3.10
Requires-Dist: pydantic>=2.8.2
Requires-Dist: requests>=2.32.3
Requires-Dist: httpx>=0.27.0
Requires-Dist: trio>=0.26.0
Requires-Dist: anyio>=4.4.0
Requires-Dist: mypy>=1.15.0
Description-Content-Type: text/markdown

# Go~~s~~peed_api

This project provide [Go~~s~~peed downloader](https://gopeed.com/) RestAPI full-covered interacting.

> Sorry about that I made a mistake about its name. I realized that when I finished version 2.0.4;
> 🎶~~It's too Laaaaate~ to Apologiiiiiize~, It's too Laaaaaaaaaaaate~~🎶

Every function's input and output will get type checking in runtime by using [Pydantic](https://docs.pydantic.dev/).

**🎉Async implementation is added in 2.0.0 Version, support both asyncio and [trio](https://github.com/python-trio/trio)!🎉**.

Please use the latest version.

Because in 2.0.2 there is a bug which handle url query parameter incorrectly, cause invoking delete endpoint to delete task and file failure!

And It's already resolved in the newest version! ☝️🤓

## install

gospeed-api package [address](https://pypi.org/project/gospeed-api/).

```powershell
pip install gospeed-api
```

## Usage Example

Every usage example is written in test file, for more detail please take a look: [test_index.py](./tests/test_index.py)

## The future improvements were on plan

2025/1/6/

1. After a few months at the end of development, I'm supposed to rewrite the usage guide. Because recently, when I was trying to write some script based on this library, I could feel there was not enough introduction to make things clear for the user.
2. Update to version 3.0.0. This major update will create a new implementation with a more intuitive usage experience.

I'm starting achiving these two objectives from the day I wrote above.

---

2025/2/22/

Now AsyncGospeedClient have an optional init paramter "httpx_async_client" to receive customized async httpx client object to send requests.
