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.3.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.3-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: kadena_sdk-2.0.3.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.3.tar.gz
Algorithm Hash digest
SHA256 40b7c83790a0193cf807a893dc45ed4d171833bada0c9ef93b518f6868a32f26
MD5 3835e0f9ab5113ae448449ae58555c58
BLAKE2b-256 314f027aeaa5f0dbd0d0b2542baf994f7c264a2952f2d602c38896cd2480ec48

See more details on using hashes here.

File details

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

File metadata

  • Download URL: kadena_sdk-2.0.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8fc1779d6dbbb91e79d6c1a89b034f0f0d58bff841753377d2c1c564691aa0cc
MD5 2f9ea380d8b5db9402957b8e779ea7af
BLAKE2b-256 ba1f1e58f39b77fb7baffb01468235252e7c09b055bf98e2adda1cbaf562d5e7

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