mirror of
https://github.com/bohd4nx/FragmentAPI.git
synced 2026-07-25 06:14:29 +00:00
79 lines
2.0 KiB
Markdown
79 lines
2.0 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",
|
|
api_provider: str = "tonapi",
|
|
timeout: float = 30.0,
|
|
)
|
|
```
|
|
|
|
## Parameters
|
|
|
|
- `seed`: wallet mnemonic (**12 or 24 words**)
|
|
- `api_key`: API key — from [tonconsole.com](https://tonconsole.com) (tonapi) or [@toncenter](https://t.me/toncenter)
|
|
- `cookies`: Fragment cookies as a dictionary or JSON string
|
|
- `wallet_version`: `"V4R2"`, `"V5R1"`, `"HighloadV2"`, or `"HighloadV3R1"`
|
|
- `api_provider`: blockchain API provider — `"tonapi"` (default) or `"toncenter"`
|
|
- `timeout`: request timeout in seconds
|
|
|
|
**If `api_key` or cookies are missing, initialization fails immediately.**
|
|
|
|
## Required cookies
|
|
|
|
- `stel_ssid`
|
|
- `stel_dt`
|
|
- `stel_token`
|
|
- `stel_ton_token`
|
|
|
|
## Minimal initialization pattern
|
|
|
|
```python
|
|
from pyfragment import FragmentClient
|
|
|
|
async with FragmentClient(
|
|
seed="word1 word2 ... word24",
|
|
api_key="YOUR_API_KEY",
|
|
cookies={
|
|
"stel_ssid": "...",
|
|
"stel_dt": "...",
|
|
"stel_token": "...",
|
|
"stel_ton_token": "...",
|
|
},
|
|
) as client:
|
|
wallet = await client.get_wallet()
|
|
```
|
|
|
|
## Switching API provider
|
|
|
|
By default, the library uses [tonconsole.com](https://tonconsole.com) (tonapi). To use [toncenter](https://t.me/toncenter) instead, pass `api_provider="toncenter"`:
|
|
|
|
```python
|
|
async with FragmentClient(
|
|
seed="...",
|
|
api_key="YOUR_TONCENTER_API_KEY",
|
|
cookies={...},
|
|
api_provider="toncenter",
|
|
) as client:
|
|
...
|
|
```
|
|
|
|
Both providers work identically — the correct `tonutils` client is selected automatically based on `api_provider`.
|
|
|
|
## Validation behavior
|
|
|
|
At initialization, library validates:
|
|
|
|
- seed format,
|
|
- cookie shape and required keys,
|
|
- supported wallet version,
|
|
- supported API provider,
|
|
- parseability of cookie JSON strings.
|
|
|
|
Constructor-level issues are raised as `ConfigurationError` or `CookieError`.
|