A client for interacting with the RSS3 Data Sub Layer (DSL) API.
- 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.
You can install the required dependencies using pip:
pip install git+https://github.com/RSS3-Network/DSL-python-sdk
from rss3_dsl_sdk import RSS3Client
client = RSS3Client()
Here are some examples of fetching social post activities with different parameters:
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)
You can also fetch RSS activity details by path using the fetch_rss_activity_by_path
method:
rss_activity = client.fetch_rss_activity_by_path(path="abc")
print(rss_activity)
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
Contributions are welcome! Please open an issue or submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.