Skip to main content

An SDK for interacting with the Kadena Blockchain

Project description

To Use

from kadena_sdk import KadenaSdk, KeyPair

# Create your keypair and setup the SDK with the endpoint you desire in life.
key_pair = KeyPair(type='json',
  priv_key='5e8b125c89ed409f2cfcc6e863e8aafd60b9d80a4d2333a12592f7a961a62bf8',
  pub_key='ad273a54460305767e2e36f41d1a5fe78c48474a6e3bc18624d53fbbbb5974bb')

# base_url will default to https://api.testnet.chainweb.com
# KeyPair isn't required, but no sigs will be included in any local/send calls
kadena = KadenaSdk(base_url='https://api.chainweb.com',
  key_pair=key_pair)

# Very open ended: Work directly with the payload.
payload = kadena.build_exec_payload(
  '(format "{}" [(read-msg "test")])', 
  env_data={'test': 'hello'}
)

# SDK works with whichever chains you choose!
chain_ids = ['0', '1']

# Commands is a dictionary where each key is the chain id and the value
# is the command to be sent
cmds = kadena.build_command(payload, chain_ids)

# You can use local or send to dirty read or commit respectively.
# These are the /local and /send endpoints.
res = kadena.local(cmds)

# Responses are in a dictionary with keys being the chains 
# that were interacted with
print(res['0'].json())

# You can also listen to commands. This is a blocking command.
# Pass in the transaction id and the chain you want to listen on.
kadena.listen('tx_id', '0')

## Lastly, if you want to just run some pact code, you can do so
res = kadena.run_pact(
  '(format "Test {}" [(read-msg "test")])', 
  env_data={'test': 'hello'}
)

To Build and Deploy

python3 -m build
python3 -m twine upload dist/*

To Test

pytest

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

kadena_sdk-2.0.5.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

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

kadena_sdk-2.0.5-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file kadena_sdk-2.0.5.tar.gz.

File metadata

  • Download URL: kadena_sdk-2.0.5.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for kadena_sdk-2.0.5.tar.gz
Algorithm Hash digest
SHA256 f1bb9ee6f4a473678b9143dfe012f6825e2d8191d14f9ff41f8b29f54bb73d7a
MD5 94293fafb292272f48034a5572ca3193
BLAKE2b-256 a7f2655553fae207949e13fe75ea218b5925a313b688b18fe54497d918627917

See more details on using hashes here.

File details

Details for the file kadena_sdk-2.0.5-py3-none-any.whl.

File metadata

  • Download URL: kadena_sdk-2.0.5-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for kadena_sdk-2.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 36c308cca2cce48bd7804428977fab2d9b3b44af37acfcae091dfde6f642a642
MD5 f9fb4c863b53ef0ef87e7a1bc48262c0
BLAKE2b-256 ca79a25b99ae798507ea2074c11e3d185d809730c5be3fcf8a67c908247e3483

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