Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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: about 1 month 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 (7 months ago)
- Default Branch: main
- Last Pushed: 2024-07-22T12:14:15.000Z (5 months ago)
- Last Synced: 2024-07-22T21:17:16.689Z (5 months ago)
- Topics: rss3
- Language: Python
- Homepage:
- Size: 64.5 KB
- Stars: 0
- Watchers: 5
- 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 RSS3Clientclient = 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.