
Security News
Meet Socket at Black Hat and DEF CON 2025 in Las Vegas
Meet Socket at Black Hat & DEF CON 2025 for 1:1s, insider security talks at Allegiant Stadium, and a private dinner with top minds in software supply chain security.
spartera-api-python-sdk
Advanced tools
The Python SDK for Spartera API provides a convenient way to interact with the Spartera platform from Python applications.
Install: pip install spartera-api-sdk
Transform your data into revenue in under 5 minutes! Here's how to create and sell a data product on the Spartera marketplace:
import os
import json
from spartera_api_sdk import ApiClient, Configuration
from spartera_api_sdk.api import cloud_providers_api, connections_api, assets_api, asset_price_history_api
# Configure client
config = Configuration()
config.host = "https://api.spartera.com"
config.api_key = {'X-API-Key': 'your-api-key-here'}
client = ApiClient(config)
COMPANY_ID = "your-company-id"
USER_ID = "your-user-id"
# Step 1: Discover available data platforms
print("š Step 1: Discovering available platforms...")
storage_api = cloud_providers_api.CloudProvidersApi(client)
engines = storage_api.cloud_providers_get()
bigquery_engine_id = 1 # BigQuery engine ID
print(f"ā
Found {len(engines)} supported platforms")
# Step 2: Create a data connection (with credentials in one call!)
print("š Step 2: Creating BigQuery connection...")
connections_instance = connections_api.ConnectionsApi(client)
# Your BigQuery service account JSON (replace with your actual credentials)
service_account_json = {
"type": "service_account",
"project_id": "your-project-id",
"private_key_id": "key-id",
"private_key": "-----BEGIN PRIVATE KEY-----\nYOUR_PRIVATE_KEY\n-----END PRIVATE KEY-----\n",
"client_email": "your-service@your-project.iam.gserviceaccount.com",
"client_id": "client-id",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token"
}
connection_data = {
"company_id": COMPANY_ID,
"user_id": USER_ID,
"engine_id": bigquery_engine_id,
"name": "My BigQuery Data Warehouse",
"description": "Connection to our company's analytics data",
"visibility": "PRIVATE",
"credential_type": "SERVICE_ACCOUNT",
"credentials": json.dumps(service_account_json),
"verified_usage_ability": True # Legal compliance - you have rights to this data
}
connection = connections_instance.companies_company_id_connections_post(COMPANY_ID, connection_data)
connection_id = connection.connection_id
print(f"ā
Created connection: {connection_id}")
# Step 3: Create a marketplace asset
print("š Step 3: Creating marketplace asset...")
assets_instance = assets_api.AssetsApi(client)
asset_data = {
"name": "Average Temperature Analytics",
"description": "Real-time weather temperature analytics from our IoT sensors across major cities",
"company_id": COMPANY_ID,
"connection_id": connection_id,
"asset_type": "CALCULATION",
"sql_logic": "SELECT AVERAGE(temperature) AS avg_temp, city, COUNT(*) AS readings FROM `your-project.weather.sensor_data` WHERE timestamp >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 24 HOUR) GROUP BY city ORDER BY avg_temp DESC",
"sell_in_marketplace": True, # š„ This makes it available for purchase!
"source": "MANUAL",
"visibility": "PUBLIC"
}
asset = assets_instance.companies_company_id_assets_post(COMPANY_ID, asset_data)
asset_id = asset.asset_id
print(f"ā
Created marketplace asset: {asset_id}")
# Step 4: Set your price and start earning!
print("š° Step 4: Setting price...")
pricing_instance = asset_price_history_api.AssetPriceHistoryApi(client)
price_data = {
"price_usd": 2.00 # $2.00 per analysis (credits calculated automatically)
}
price = pricing_instance.companies_company_id_assets_asset_id_prices_post(COMPANY_ID, asset_id, price_data)
print(f"ā
Price set: ${price.price_usd} (ā{price.price_credits} credits)")
print("\nš SUCCESS! Your data product is now live on the Spartera marketplace!")
print(f"š Asset URL: https://marketplace.spartera.com/assets/{asset_id}")
print("š” Customers can now discover and purchase your analytics!")
That's it! You're now selling data analytics. Every time someone runs your analysis, you earn money!
Get your API key from the Spartera Dashboard:
import os
from spartera_api_sdk import ApiClient, Configuration
# Option 1: Direct configuration
config = Configuration()
config.host = "https://api.spartera.com"
config.api_key = {'X-API-Key': 'your-api-key-here'}
# Option 2: Environment variables (recommended)
os.environ['SPARTERA_API_KEY'] = "your-api-key"
os.environ['SPARTERA_COMPANY_ID'] = "your-company-id"
config = Configuration()
config.host = "https://api.spartera.com"
config.api_key = {'X-API-Key': os.getenv('SPARTERA_API_KEY')}
client = ApiClient(config)
export SPARTERA_API_KEY="your-api-key"
export SPARTERA_COMPANY_ID="your-company-id"
export SPARTERA_API_BASE_URL="https://api.spartera.com"
Create connections to different data platforms:
# BigQuery
bigquery_credentials = {
"type": "service_account",
"project_id": "your-project",
# ... your service account JSON
}
# Snowflake
snowflake_connection = {
"credential_type": "USERNAME_PASSWORD",
"username": "your-username",
"password": "your-password"
}
# API Data Source
api_connection = {
"credential_type": "API_KEY",
"api_endpoint": "https://api.yourcompany.com/data",
"api_key_param": "x-api-key",
"credentials": "your-api-key-value"
}
Create different types of marketplace products:
# SQL-based Analytics
calculation_asset = {
"asset_type": "CALCULATION",
"sql_logic": "SELECT COUNT(*) as total_sales, AVG(amount) as avg_order FROM sales WHERE date >= CURRENT_DATE()"
}
# Visualization/Dashboard
visualization_asset = {
"asset_type": "VISUALIZATION",
"viz_chart_type": "BAR",
"viz_dep_var_col_name": "sales_amount",
"viz_indep_var_col_name": "month"
}
Set different pricing models:
# Fixed price per analysis
basic_pricing = {"price_usd": 1.50}
# Premium analytics
premium_pricing = {"price_usd": 10.00}
# Bulk discount with sales
sale_pricing = {
"price_usd": 5.00,
"discount_percentage": 20.0,
"sale_start_date": "2024-01-01T00:00:00Z",
"sale_end_date": "2024-01-31T23:59:59Z"
}
Manage your products after launch:
# Update asset details
assets_instance.companies_company_id_assets_asset_id_patch(
COMPANY_ID,
asset_id,
{"description": "Updated description with new features"}
)
# Change pricing
new_price = {"price_usd": 3.00}
pricing_instance.companies_company_id_assets_asset_id_prices_post(
COMPANY_ID, asset_id, new_price
)
# Remove from marketplace (but keep private)
assets_instance.companies_company_id_assets_asset_id_patch(
COMPANY_ID,
asset_id,
{"sell_in_marketplace": False}
)
# Get sales analytics
analytics = companies_instance.companies_company_id_analytics_sales_get(COMPANY_ID)
print(f"Total revenue: ${analytics.total_revenue}")
from spartera_api_sdk.exceptions import ApiException
try:
asset = assets_instance.companies_company_id_assets_post(COMPANY_ID, asset_data)
except ApiException as e:
print(f"API Error: {e}")
print(f"Status: {e.status}")
print(f"Reason: {e.reason}")
# Handle specific errors
if e.status == 400:
print("Check your asset data format")
elif e.status == 401:
print("Check your API key")
elif e.status == 403:
print("Check your permissions")
# Batch operations
connection_ids = []
for platform in ['bigquery', 'snowflake', 'redshift']:
conn = connections_instance.companies_company_id_connections_post(COMPANY_ID, platform_config)
connection_ids.append(conn.connection_id)
# Asset recommendations
recommendations = assets_instance.companies_company_id_assets_asset_id_recommendations_get(
COMPANY_ID, asset_id, limit=10
)
# Performance analytics
performance = companies_instance.companies_company_id_analytics_assets_get(
COMPANY_ID,
start_date="2024-01-01",
end_date="2024-12-31"
)
pip install spartera-api-sdk
from spartera_api_sdk import ApiClient
python setup.py sdist bdist_wheel
twine upload dist/*
pip install spartera-api-sdk
FAQs
Official Python SDK for the Spartera API platform
We found that spartera-api-python-sdk demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago.Ā It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Meet Socket at Black Hat & DEF CON 2025 for 1:1s, insider security talks at Allegiant Stadium, and a private dinner with top minds in software supply chain security.
Security News
CAI is a new open source AI framework that automates penetration testing tasks like scanning and exploitation up to 3,600Ć faster than humans.
Security News
Deno 2.4 brings back bundling, improves dependency updates and telemetry, and makes the runtime more practical for real-world JavaScript projects.