Skip to main content
Building with Connect? Join our Discord!
The Connect SDK provides bindings for the x/oracle and x/marketmap modules.

Adding Connect SDK To Your Contract

The version of the Connect SDK for your contract depends on the Connect protocol version of the chain.
How to find the Connect Protocol versionThe protocol version of Connect can be found on the chain by either:
  1. Checking the chain’s go.mod file.
  2. Checking the required version in the quickstart
Add the following line to the dependencies section of your Cargo.toml: connect-sdk = { git = "https://github.com/skip-mev/connect-sdk", tag = "CONNECT SDK VERSION HERE", package = "connect-sdk" }

Safely Accessing Price Data

The following checks should be made before utilizing a price from Connect in a contract:
  1. currency-pair exists within the x/oracle and x/marketmap modules.
  2. currency-pair is enabled within the x/marketmap.
  3. price block_height is not older than a few blocks.
  4. price nonce is not 0.

Code Example

This code example is for v0.1.0 of the Connect SDK.
contract.rs

Full Example Contract

Example Contract here: example.