mirror of
https://github.com/bohd4nx/FragmentAPI.git
synced 2026-07-26 14:51:40 +00:00
70 lines
1.5 KiB
Markdown
70 lines
1.5 KiB
Markdown
# Library and Configuration
|
|
|
|
Main entry point of the library is `FragmentClient`.
|
|
|
|
```python
|
|
FragmentClient(
|
|
seed: str,
|
|
api_key: str,
|
|
cookies: dict[str, Any] | str,
|
|
wallet_version: str = "V5R1",
|
|
timeout: float = 30.0,
|
|
)
|
|
```
|
|
|
|
## Parameters
|
|
|
|
- `seed`: wallet mnemonic (**12, 18, or 24 words**)
|
|
- `api_key`: Tonapi key from https://tonconsole.com
|
|
- `cookies`: Fragment cookies as a dictionary or JSON string
|
|
- `wallet_version`: `"V4R2"` or `"V5R1"`
|
|
- `timeout`: request timeout in seconds
|
|
|
|
**If `api_key` is too short or cookies are incomplete, initialization fails immediately.**
|
|
|
|
## Required cookies
|
|
|
|
- `stel_ssid`
|
|
- `stel_dt`
|
|
- `stel_token`
|
|
- `stel_ton_token`
|
|
|
|
## Minimal initialization pattern
|
|
|
|
```python
|
|
from pyfragment import FragmentClient
|
|
|
|
client = FragmentClient(
|
|
seed="word1 word2 ... word24",
|
|
api_key="YOUR_TONAPI_KEY",
|
|
cookies={
|
|
"stel_ssid": "...",
|
|
"stel_dt": "...",
|
|
"stel_token": "...",
|
|
"stel_ton_token": "...",
|
|
},
|
|
)
|
|
```
|
|
|
|
Use it inside async context manager:
|
|
|
|
```python
|
|
async with client:
|
|
wallet = await client.get_wallet()
|
|
```
|
|
|
|
You can also create the client directly inside `async with` if you prefer one-block setup.
|
|
|
|
## Validation behavior
|
|
|
|
At initialization, library validates:
|
|
|
|
- seed format,
|
|
- cookie shape and required keys,
|
|
- supported wallet version,
|
|
- parseability of cookie JSON strings.
|
|
|
|
Constructor-level issues are raised as `ConfigurationError` or `CookieError`.
|
|
|
|
**Tip:** keep validation failures visible in logs during initial integration. They save a lot of debugging time.
|