Skip to content

drodil/op-api-rust-sdk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

op-api-rust-sdk

MIT License Contributors Issues PRs

Rust SDK for OP REST API

Installation

To use this library, simply add the following to your Cargo.toml:

op-api-sdk = "0.1.0"

See https://crates.io/crates/op-api-sdk for more versions and details of the crate.

Usage

See apis crate for all available clients. Example of getting account data:

use op_api_sdk::client::Client;
use op_api_sdk::options::Options;

#[tokio::main]
async fn main() {
    let options = Options::new_dev(String::from("X_API_KEY"));
    options.set_version("v3".to_string());
    let accounts = Client::new(options).accounts().await.unwrap();
    println!("{:?}", accounts);
}

Additional examples available in the Examples directory.

See requests for required headers.

For further reading, please see our API documentation

Developing

Few guidelines for developing this library:

  • Follow Rust API Guidelines
  • Keep formatting consistent by using cargo fmt for all changes
  • Use cargo clippy --workspace --all-targets --verbose --all-features to find possible lint errors and warnings
  • Always add tests to your functionality, prefer TDD. Use /tests/ folder.
  • Always run tests with cargo test before pushing to remote
  • Check that you have documented all public functionality with cargo doc --open

Running tests

Tests depend to real sandbox data.

To enable debug logging from the library set up the RUST_LOG environment variable

export RUST_LOG=op_api_sdk=debug