Skip to content

Commit 7c58c16

Browse files
committed
fix: add README.md, authors, and classifiers for PyPI upload
1 parent 294ce58 commit 7c58c16

9 files changed

Lines changed: 181 additions & 3 deletions

File tree

README.md

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# bypasstools
2+
3+
Official Python SDK for the [BypassTools](https://bypass.tools) API.
4+
5+
## Installation
6+
7+
```bash
8+
pip install bypasstools
9+
```
10+
11+
## Quick Start
12+
13+
```python
14+
from bypasstools import BypassTools
15+
16+
client = BypassTools(api_key="bt_your_key_here")
17+
18+
# Direct (synchronous) bypass
19+
result = client.bypass("https://linkvertise.com/example")
20+
print(result.result_url)
21+
22+
# Async task — create and poll until done
23+
result = client.bypass_async("https://loot.link/example")
24+
print(result.result_url)
25+
```
26+
27+
## Authentication
28+
29+
Get your API key from your [dashboard](https://bypass.tools/dashboard/keys).
30+
31+
## Methods
32+
33+
### `bypass(url, *, refresh=False) -> BypassResult`
34+
Calls the direct bypass endpoint and blocks until a result is returned.
35+
36+
### `create_task(url) -> str`
37+
Creates an async task and returns the `taskId`.
38+
39+
### `get_task_result(task_id) -> TaskResult`
40+
Polls a single task for its current status.
41+
42+
### `bypass_async(url, *, poll_interval=1.5, timeout=90) -> BypassResult`
43+
Creates a task and polls until it completes or times out.
44+
45+
## Async Usage
46+
47+
Requires `aiohttp`:
48+
49+
```bash
50+
pip install bypasstools aiohttp
51+
```
52+
53+
```python
54+
import asyncio
55+
from bypasstools import AsyncBypassTools
56+
57+
async def main():
58+
client = AsyncBypassTools(api_key="bt_your_key_here")
59+
result = await client.bypass("https://linkvertise.com/example")
60+
print(result.result_url)
61+
62+
asyncio.run(main())
63+
```
64+
65+
## Error Handling
66+
67+
```python
68+
from bypasstools import BypassTools, BypassToolsError
69+
70+
client = BypassTools(api_key="bt_your_key_here")
71+
72+
try:
73+
result = client.bypass("https://linkvertise.com/example")
74+
except BypassToolsError as e:
75+
print(e.code) # e.g. "QUOTA_EXCEEDED"
76+
print(e.status) # HTTP status code
77+
print(str(e)) # error message
78+
```
79+
80+
## License
81+
82+
MIT

bypasstools.egg-info/PKG-INFO

Lines changed: 88 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,97 @@
11
Metadata-Version: 2.2
22
Name: bypasstools
3-
Version: 1.0.0
3+
Version: 1.0.1
44
Summary: Official Python SDK for the BypassTools API
5+
Author-email: BypassTools <support@bypass.tools>
56
License: MIT
67
Project-URL: Homepage, https://bypass.tools
78
Project-URL: Repository, https://github.com/XxEASTRxX/bypasstools-sdks-python.git
89
Keywords: bypasstools,bypass,linkvertise,api
10+
Classifier: Programming Language :: Python :: 3
11+
Classifier: License :: OSI Approved :: MIT License
12+
Classifier: Operating System :: OS Independent
913
Requires-Python: >=3.8
1014
Description-Content-Type: text/markdown
15+
16+
# bypasstools
17+
18+
Official Python SDK for the [BypassTools](https://bypass.tools) API.
19+
20+
## Installation
21+
22+
```bash
23+
pip install bypasstools
24+
```
25+
26+
## Quick Start
27+
28+
```python
29+
from bypasstools import BypassTools
30+
31+
client = BypassTools(api_key="bt_your_key_here")
32+
33+
# Direct (synchronous) bypass
34+
result = client.bypass("https://linkvertise.com/example")
35+
print(result.result_url)
36+
37+
# Async task — create and poll until done
38+
result = client.bypass_async("https://loot.link/example")
39+
print(result.result_url)
40+
```
41+
42+
## Authentication
43+
44+
Get your API key from your [dashboard](https://bypass.tools/dashboard/keys).
45+
46+
## Methods
47+
48+
### `bypass(url, *, refresh=False) -> BypassResult`
49+
Calls the direct bypass endpoint and blocks until a result is returned.
50+
51+
### `create_task(url) -> str`
52+
Creates an async task and returns the `taskId`.
53+
54+
### `get_task_result(task_id) -> TaskResult`
55+
Polls a single task for its current status.
56+
57+
### `bypass_async(url, *, poll_interval=1.5, timeout=90) -> BypassResult`
58+
Creates a task and polls until it completes or times out.
59+
60+
## Async Usage
61+
62+
Requires `aiohttp`:
63+
64+
```bash
65+
pip install bypasstools aiohttp
66+
```
67+
68+
```python
69+
import asyncio
70+
from bypasstools import AsyncBypassTools
71+
72+
async def main():
73+
client = AsyncBypassTools(api_key="bt_your_key_here")
74+
result = await client.bypass("https://linkvertise.com/example")
75+
print(result.result_url)
76+
77+
asyncio.run(main())
78+
```
79+
80+
## Error Handling
81+
82+
```python
83+
from bypasstools import BypassTools, BypassToolsError
84+
85+
client = BypassTools(api_key="bt_your_key_here")
86+
87+
try:
88+
result = client.bypass("https://linkvertise.com/example")
89+
except BypassToolsError as e:
90+
print(e.code) # e.g. "QUOTA_EXCEEDED"
91+
print(e.status) # HTTP status code
92+
print(str(e)) # error message
93+
```
94+
95+
## License
96+
97+
MIT

bypasstools.egg-info/SOURCES.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
README.md
12
pyproject.toml
23
bypasstools/__init__.py
34
bypasstools/client.py

bypasstools/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
from .client import BypassTools, BypassToolsError, BypassResult, TaskResult
33

44
__all__ = ["BypassTools", "BypassToolsError", "BypassResult", "TaskResult"]
5-
__version__ = "1.0.0"
5+
__version__ = "1.0.1"
-4.27 KB
Binary file not shown.

dist/bypasstools-1.0.0.tar.gz

-3.89 KB
Binary file not shown.
5.03 KB
Binary file not shown.

dist/bypasstools-1.0.1.tar.gz

4.64 KB
Binary file not shown.

pyproject.toml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,21 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "bypasstools"
7-
version = "1.0.0"
7+
version = "1.0.1"
88
description = "Official Python SDK for the BypassTools API"
99
readme = "README.md"
1010
license = { text = "MIT" }
1111
requires-python = ">=3.8"
1212
dependencies = []
1313
keywords = ["bypasstools", "bypass", "linkvertise", "api"]
14+
authors = [
15+
{ name = "BypassTools", email = "support@bypass.tools" }
16+
]
17+
classifiers = [
18+
"Programming Language :: Python :: 3",
19+
"License :: OSI Approved :: MIT License",
20+
"Operating System :: OS Independent",
21+
]
1422

1523
[project.urls]
1624
Homepage = "https://bypass.tools"

0 commit comments

Comments
 (0)