Skip to main content

No project description provided

Project description

Derive.xyz Python Client.

This repo provides a unified interface for the Derive Exchange.

Please checkout the examples directory for usage.

Here is a quick demonstration of the cli functionality.

alt text

Preparing Keys for the Client

To use the client, you will need to generate an API key from the Derive Exchange.

The process involves linking your local signer to the account you want to use programmatically.

Here are the steps:

  1. Generate a local signer using your preferred method. For example, you can use the Open Aea Ledger Ethereum Cli.

    aea generate-key ethereum
    

    This will generate a new private key in the ethereum_private_key.txt file.

  2. Go to the Derive Exchange and create an account.

  3. Go to the API section and create a new API key.

  4. Register a new Session key with the Public Address of the account your signer generated in step 0.

Once you have the API key, you can use it to interact with the Derive Exchange.

You need;

DERIVE_WALLET - The programtic wallet generated upon account creation. It can be found in the Developer section of the Derive Exchange. SIGNER_PRIVATE_KEY - The private key generated in step 0. SUBACCOOUNT_ID - The subaccount id you want to use for the API key.

derive_client = DeriveClient(
    private_key=TEST_PRIVATE_KEY, 
    env=Environment.TEST, # or Environment.PROD
    wallet=TEST_WALLET,
    subaccount_id = 123456
    )

Install

pip install derive-client

Dev

Formatting

make fmt

Linting

make lint

Tests

make tests

For convience, all commands can be run with:

make all

Releasing

We can use tbump to automatically bump our versions in preparation of a release.

export new_version=0.1.5
tbump $new_version

The release workflow will then detect that a branch with a v prefix exists and create a release from it.

Additionally, the package will be published to PyPI.

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

derive_client-0.2.21.tar.gz (302.4 kB view details)

Uploaded Source

Built Distribution

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

derive_client-0.2.21-py3-none-any.whl (587.2 kB view details)

Uploaded Python 3

File details

Details for the file derive_client-0.2.21.tar.gz.

File metadata

  • Download URL: derive_client-0.2.21.tar.gz
  • Upload date:
  • Size: 302.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for derive_client-0.2.21.tar.gz
Algorithm Hash digest
SHA256 78fa573aa126c0ad18b872e553258f10b9f5788f95bfb900c4e42e2492feb5fd
MD5 0b5e796977e1a72da0fd867e7add4bd6
BLAKE2b-256 1c34b6f161689b8b22566d49a6b4450a23786c18552f40e3fd8f930d16ae0db7

See more details on using hashes here.

File details

Details for the file derive_client-0.2.21-py3-none-any.whl.

File metadata

  • Download URL: derive_client-0.2.21-py3-none-any.whl
  • Upload date:
  • Size: 587.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for derive_client-0.2.21-py3-none-any.whl
Algorithm Hash digest
SHA256 3630772bacebd0142b963e3445b2720d38b8450d5e6456c959637f6a7a197b9a
MD5 c61c91eeb1d2316aae4db714cc9df83d
BLAKE2b-256 d3f36e15315d50bfe461cab0d8f5ed48ceeff34b6d6efaaf15d479a36729876c

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