Skip to main content

The Python Stellar SDK library provides APIs to build transactions and connect to Horizon and Soroban-RPC server.

Project description

GitHub Workflow Status Read the Docs PyPI - Downloads Maintainability Codecov PyPI Python - Version PyPI - Implementation Stellar Protocol

py-stellar-base is a Python library for communicating with a Stellar Horizon server and Soroban-RPC server. It is used for building Stellar apps on Python. It supports Python 3.8+ as well as PyPy 3.8+.

It provides:

  • a networking layer API for Horizon endpoints.

  • a networking layer API for Soroban-RPC server methods.

  • facilities for building and signing transactions, for communicating with a Stellar Horizon and Soroban-RPC instance, and for submitting transactions or querying network history.

Documentation

py-stellar-base’s documentation can be found at https://stellar-sdk.readthedocs.io.

Installing

pip install --upgrade stellar-sdk

If you need to use asynchronous, please use the following command to install the required dependencies.

pip install --upgrade stellar-sdk[aiohttp]

We follow Semantic Versioning 2.0.0, and I strongly recommend that you specify its major version number in the dependency file to avoid the unknown effects of breaking changes.

A Simple Example

You can find more examples here.

# Alice pay 10.25 XLM to Bob
from stellar_sdk import Asset, Server, Keypair, TransactionBuilder, Network

alice_keypair = Keypair.from_secret("SBFZCHU5645DOKRWYBXVOXY2ELGJKFRX6VGGPRYUWHQ7PMXXJNDZFMKD")
bob_address = "GA7YNBW5CBTJZ3ZZOWX3ZNBKD6OE7A7IHUQVWMY62W2ZBG2SGZVOOPVH"

server = Server("https://horizon-testnet.stellar.org")
alice_account = server.load_account(alice_keypair.public_key)
base_fee = 100
transaction = (
    TransactionBuilder(
        source_account=alice_account,
        network_passphrase=Network.TESTNET_NETWORK_PASSPHRASE,
        base_fee=base_fee,
    )
    .add_text_memo("Hello, Stellar!")
    .append_payment_op(bob_address, Asset.native(), "10.25")
    .set_timeout(30)
    .build()
)
transaction.sign(alice_keypair)
response = server.submit_transaction(transaction)
print(response)

stellar-contract-bindings

stellar-contract-bindings allows you to generate Python bindings for Stellar Soroban smart contracts, it makes calling Stellar Soroban contracts easier. click here for more information.

stellar-model

stellar-model allows you to parse the JSON returned by Stellar Horizon into the Python models, click here for more information.

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

stellar_sdk-12.2.1.tar.gz (296.8 kB view details)

Uploaded Source

Built Distribution

stellar_sdk-12.2.1-py3-none-any.whl (748.8 kB view details)

Uploaded Python 3

File details

Details for the file stellar_sdk-12.2.1.tar.gz.

File metadata

  • Download URL: stellar_sdk-12.2.1.tar.gz
  • Upload date:
  • Size: 296.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for stellar_sdk-12.2.1.tar.gz
Algorithm Hash digest
SHA256 87c46ec37329d944a0dfa74035df3aeb19289feb41fcc820c453078328ab4780
MD5 804cd961b5f45cd1cc7e65317983bfe4
BLAKE2b-256 926d5dc0526457e843cc57d40324d0bbfc1e1d4c84cf10933a103728c3a7133f

See more details on using hashes here.

Provenance

The following attestation bundles were made for stellar_sdk-12.2.1.tar.gz:

Publisher: continuous-integration-workflow.yml on StellarCN/py-stellar-base

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file stellar_sdk-12.2.1-py3-none-any.whl.

File metadata

  • Download URL: stellar_sdk-12.2.1-py3-none-any.whl
  • Upload date:
  • Size: 748.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for stellar_sdk-12.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e2fc33de5f12eaf9273648ab646b9aa7d0c42984eda4f3a3ab21cd939709e09b
MD5 a24a77279611d32545c721bac797cd0e
BLAKE2b-256 eaf99ba07f751017e8d05713f56b90b9b1191b760097dd2217e6617418d1fb09

See more details on using hashes here.

Provenance

The following attestation bundles were made for stellar_sdk-12.2.1-py3-none-any.whl:

Publisher: continuous-integration-workflow.yml on StellarCN/py-stellar-base

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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