LN Markets API Python SDK
Project description
LN Markets SDK v3
This is the Python version of the LN Markets API SDK. It provides a client-based interface for interacting with the LN Markets API.
Usage
For public endpoints, you can just do this:
from lnmarkets_sdk.v3.http.client import LNMClient
import asyncio
async with LNMClient() as client:
ticker = await client.futures.get_ticker()
await asyncio.sleep(1)
leaderboard = await client.futures.get_leaderboard()
Remember to sleep between requests, as the rate limit is 1 requests per second for public endpoints.
For endpoints that need authentication, you need to create an instance of the LNMClient class and provide your API credentials:
from lnmarkets_sdk.v3.http.client import APIAuthContext, APIClientConfig, LNMClient
config = APIClientConfig(
authentication=APIAuthContext(
key=your_key,
secret=your_secret,
passphrase=your_passphrase,
),
network="mainnet",
timeout=60.0, # 60 second timeout (default is 30s)
)
async with LNMClient(config) as client:
account = await client.account.get_account()
For endpoints that requires input parameters, you can find the corresponding models in the lnmarkets_sdk.models module.
from lnmarkets_sdk.v3.http.client import APIAuthContext, APIClientConfig, LNMClient
from lnmarkets_sdk.v3.models.account import GetLightningDepositsParams
config = APIClientConfig(
authentication=APIAuthContext(
key=your_key,
secret=your_secret,
passphrase=your_passphrase,
),
network="mainnet",
timeout=60.0, # 60 second timeout (default is 30s)
)
async with LNMClient(config) as client:
deposits = await client.account.get_lightning_deposits(
GetLightningDepositsParams(limit=5)
)
Check our example for more details.
Available Methods
🔒 = requires API credentials
# Ping
client.ping()
# Account 🔒
client.account.get_account()
client.account.get_bitcoin_address()
client.account.add_bitcoin_address()
client.account.deposit_lightning()
client.account.withdraw_lightning()
client.account.withdraw_internal()
client.account.withdraw_on_chain()
client.account.get_lightning_deposits()
client.account.get_lightning_withdrawals()
client.account.get_internal_deposits()
client.account.get_internal_withdrawals()
client.account.get_on_chain_deposits()
client.account.get_on_chain_withdrawals()
# Futures
client.futures.get_ticker()
client.futures.get_leaderboard()
client.futures.get_candles()
client.futures.get_funding_settlements()
# Futures Isolated 🔒
client.futures.isolated.new_trade()
client.futures.isolated.get_running_trades()
client.futures.isolated.get_open_trades()
client.futures.isolated.get_closed_trades()
client.futures.isolated.close()
client.futures.isolated.cancel()
client.futures.isolated.cancel_all()
client.futures.isolated.add_margin()
client.futures.isolated.cash_in()
client.futures.isolated.update_stoploss()
client.futures.isolated.update_takeprofit()
client.futures.isolated.get_funding_fees()
# Futures Cross 🔒
client.futures.cross.new_order()
client.futures.cross.get_position()
client.futures.cross.get_open_orders()
client.futures.cross.get_filled_orders()
client.futures.cross.close()
client.futures.cross.cancel()
client.futures.cross.cancel_all()
client.futures.cross.deposit()
client.futures.cross.withdraw()
client.futures.cross.set_leverage()
client.futures.cross.get_transfers()
client.futures.cross.get_funding_fees()
# Oracle
client.oracle.get_index()
client.oracle.get_last_price()
# Synthetic USD
client.synthetic_usd.get_best_price()
client.synthetic_usd.get_swaps() # 🔒
client.synthetic_usd.new_swap() # 🔒
API Reference
For full API documentation, see: LNM API v3 Documentation
Contributing
Contributions are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lnmarkets_sdk-0.0.19.tar.gz.
File metadata
- Download URL: lnmarkets_sdk-0.0.19.tar.gz
- Upload date:
- Size: 48.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4bc9360b79d9e3ebc84c8d8d25b5154822a20409e5e2485bf4247e3dda0806fc
|
|
| MD5 |
22bcd7896cccc992ef16d4e0704cb002
|
|
| BLAKE2b-256 |
159b4cfce994a53aff243096e7022cb3906cd74e652089fef43bbfde4ddac829
|
File details
Details for the file lnmarkets_sdk-0.0.19-py3-none-any.whl.
File metadata
- Download URL: lnmarkets_sdk-0.0.19-py3-none-any.whl
- Upload date:
- Size: 29.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bbb046123163d00db72d8cfd4a5194ff397029f6e46553e3fb3a4fd7613decd1
|
|
| MD5 |
31e3fa3e00b726dff3af432afb002cab
|
|
| BLAKE2b-256 |
59a90d0fcdd5b070a91e9084824e3f837ae9a8c285e75e9b685c8bc951443d02
|