Skip to main content

Official Python SDK for the Nirium autonomous DeFi agent on Stellar

Project description

nirium

Official Python SDK for the Nirium Protocol — autonomous DeFi agent on Stellar/Soroban.

Install

pip install nirium

Quick Start

import asyncio
from nirium import Agent

agent = Agent(
    api_url="https://api.nirium.xyz",
    api_key="sk_inst_your_key_here",
)

async def main():
    # Health check
    alive = await agent.ping()
    print(f"Agent alive: {alive}")

    # Real market data from Stellar Horizon
    market = await agent.get_market()
    print(f"XLM Price: ${market['xlmPrice']:.4f}")

    # Execute a strategy
    result = await agent.execute("flash-loan-arb", "XLM-USDC", {"amount": 5000})
    print(f"Profit: {result['profit']}")

asyncio.run(main())

Real-Time Signals (WebSocket)

agent = Agent(api_url="https://api.nirium.xyz", api_key="sk_inst_...", token="eyJhbG...")

@agent.on("signal")
async def on_signal(data):
    print(f"Signal: {data['signal_type']}{data['data']['details']}")

asyncio.run(agent.subscribe())

Authentication

# API Key for REST endpoints
agent = Agent(api_url="https://api.nirium.xyz", api_key="sk_inst_...")

# With JWT token for WebSocket
agent = Agent(api_url="https://api.nirium.xyz", api_key="sk_inst_...", token="eyJhbG...")

Endpoint Access Model

Access Endpoints
Public (no key) health, loop/status, execute-demo, signals/recent, skills list
Protected (API key) execute, market, loop/start|stop|scan, subscriptions, skills/install, webhooks
WebSocket (JWT) /ws/signals — real-time signal stream

API Coverage

Category Methods
Health ping(), health(), system_health()
Execution execute(), execute_demo()
Market get_market(), get_loop_status(), start_loop(), stop_loop(), trigger_scan()
Signals get_recent_signals()
Skills get_skills(), install_skill(), uninstall_skill()
Webhooks register_webhook(), get_webhooks(), delete_webhook(), test_webhook()
WebSocket subscribe(), on() decorator

Requirements

  • Python >= 3.10
  • aiohttp >= 3.9.0
  • websockets >= 13.0

License

MIT — Nirium Protocol

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nirium-0.2.0.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nirium-0.2.0-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

Details for the file nirium-0.2.0.tar.gz.

File metadata

  • Download URL: nirium-0.2.0.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for nirium-0.2.0.tar.gz
Algorithm Hash digest
SHA256 74a9cb7686a343b7daa534320ac8b8c6fdb1bd0cc63918b4847281ad6725fd80
MD5 e8c831a7a0ce961632fafbfd071e61ad
BLAKE2b-256 454eecb5de9ffd7936c72ece076537cd9bda08947dcff5787da0c320e1ded716

See more details on using hashes here.

File details

Details for the file nirium-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: nirium-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for nirium-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b0358e50656d6070ec4ad28729d1b301b869fc75279d766cad96aa50317a982a
MD5 9ff776145bf7575302bd86ac793def71
BLAKE2b-256 3bbd1b15b8c7f65e67aa4706ea5d336805b18d24214146bb306c3bac36320087

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page