Examples
On Demand API
# function to get data:
import requests
import json
MAINNET_API_URL = "https://sn13.api.macrocosmos.ai"
MAINNET_API_KEY = "" #input api key
# Create a headers for API access
headers = {
'Content-Type': 'application/json',
# The server uses `verify_api_key` Depends, so we should pass it as a header
'X-API-KEY': MAINNET_API_KEY
}
# function to get data:
import requests
# API endpoint for on demand requests
url = f'{MAINNET_API_URL}/api/v1/on_demand_data_request'
def get_data(data: dict):
try:
response = requests.post(url, headers=headers, json=data)
# Check if request was successful
response.raise_for_status()
# Parse and print the response
result = response.json()
print("Success!")
#print("Data:", result.get("data"))
#print("Meta:", result.get("meta"))
return result
except requests.exceptions.HTTPError as e:
print(f"HTTP Error: {e}")
print(f"Response content: {e.response.text}")
except requests.exceptions.RequestException as e:
print(f"Error: {e}")
# Get data
data = {
"source": "x", # Based on DataSource enum in the code
"usernames": ["@DecentralDev_"], #input username
"keywords": ["Macrocosmos"],
"limit": 1000, # Default is 100, max is 1000
"start_date": "2025-01-10T00:00:00Z" # Datetime should be in ISO format ( maybe I need to change it)
}
result = get_data(data)
# Print response:
data = result.get('data') # get data
print(f"You made: {len(data)} tweet posts since 10th of March")
# print first tweet
data[0]
List Hugging Face Repositories
import requests
# Config
MAINNET_API_URL = "https://sn13.api.macrocosmos.ai"
MAINNET_API_KEY = "" #input api key
# Headers
headers = {
'Content-Type': 'application/json',
'X-API-KEY': MAINNET_API_KEY
}
# Endpoint
url = f"{MAINNET_API_URL}/api/v1/list_repo_names"
# Function to fetch repo names
def list_repo_names():
try:
response = requests.get(url, headers=headers, timeout=30)
response.raise_for_status()
result = response.json()
# Expecting a dictionary with 'count' and 'repo_names'
count = result.get("count", 0)
repos = result.get("repo_names", [])
print(f"✅ Retrieved {count} repositories.\n")
for name in repos:
print("-", name)
return result
except requests.exceptions.HTTPError as e:
print(f"❌ HTTP Error: {e}")
print(f"Response content: {e.response.text}")
except requests.exceptions.RequestException as e:
print(f"❌ Request Error: {e}")
# Run it
list_repo_names()
Last updated