https://github.com/rss3-network/dsl-python-sdk
A client for interacting with the RSS3 Data Sub Layer (DSL) API.
https://github.com/rss3-network/dsl-python-sdk
rss3
Last synced: 4 months ago
JSON representation
A client for interacting with the RSS3 Data Sub Layer (DSL) API.
- Host: GitHub
- URL: https://github.com/rss3-network/dsl-python-sdk
- Owner: RSS3-Network
- License: mit
- Created: 2024-06-06T02:02:48.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-08-15T05:31:07.000Z (almost 2 years ago)
- Last Synced: 2025-07-03T14:56:28.713Z (11 months ago)
- Topics: rss3
- Language: Python
- Homepage:
- Size: 64.5 KB
- Stars: 3
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# RSS3 DSL SDK 📡
A client for interacting with the RSS3 Data Sub Layer (DSL) API.
## Features ✨
- Fetch various types of activities for an account including collectibles, exchanges, metaverse, social, and transactions.
- Supports pagination and filtering for activity retrieval.
- Retrieve RSS activity details by path.
## Installation 🚀
You can install the required dependencies using pip:
```bash
pip install git+https://github.com/RSS3-Network/DSL-python-sdk
```
## Usage 📘
### Initialize the Client
```python
from rss3_dsl_sdk import RSS3Client
client = RSS3Client()
```
### Fetch Social Post Activities
Here are some examples of fetching social post activities with different parameters:
```python
from rss3_dsl_sdk.schemas.common import PaginationOptions, ActivityFilter
from rss3_dsl_sdk.schemas.enums import Platform
# Example 1: Basic usage with pagination
social_post_activities = client.fetch_social_post_activities(
account="0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
pagination=PaginationOptions(limit=10)
)
print(social_post_activities)
# Example 2: Using filters for platform
social_post_activities = client.fetch_social_post_activities(
account="0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
filters=ActivityFilter(platform=[Platform.FARCASTER, Platform.LENS]),
pagination=PaginationOptions(limit=10)
)
print(social_post_activities)
# Example 3: Using filters with time range
social_post_activities = client.fetch_social_post_activities(
account="0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
filters=ActivityFilter(since_timestamp=1625097600, until_timestamp=1627689600),
pagination=PaginationOptions(limit=10)
)
print(social_post_activities)
```
### Fetch RSS Activity by Path
You can also fetch RSS activity details by path using the `fetch_rss_activity_by_path` method:
```python
rss_activity = client.fetch_rss_activity_by_path(path="abc")
print(rss_activity)
```
### Other Available Methods
The `RSS3Client` class provides various methods to fetch different types of activities. Below are the available methods:
- `fetch_collectible_approval_activities`
- `fetch_collectible_burn_activities`
- `fetch_collectible_mint_activities`
- `fetch_collectible_trade_activities`
- `fetch_collectible_transfer_activities`
- `fetch_exchange_liquidity_activities`
- `fetch_exchange_staking_activities`
- `fetch_exchange_swap_activities`
- `fetch_metaverse_burn_activities`
- `fetch_metaverse_mint_activities`
- `fetch_metaverse_trade_activities`
- `fetch_metaverse_transfer_activities`
- `fetch_social_comment_activities`
- `fetch_social_delete_activities`
- `fetch_social_mint_activities`
- `fetch_social_profile_activities`
- `fetch_social_proxy_activities`
- `fetch_social_revise_activities`
- `fetch_social_reward_activities`
- `fetch_social_share_activities`
- `fetch_transaction_approval_activities`
- `fetch_transaction_bridge_activities`
- `fetch_transaction_burn_activities`
- `fetch_transaction_mint_activities`
- `fetch_transaction_transfer_activities`
## Contributing 🤝
Contributions are welcome! Please open an issue or submit a pull request.
## License 📄
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.