Skip to content

⚠️ Community Driven ⚠️ Rust client library for the traQ API

License

Notifications You must be signed in to change notification settings

traPtitech/rust-traq

Repository files navigation

rust-traq

Rust Release LICENSE

GitHub release crate

⚠️ Community Driven ⚠️ This is a client library for the traQ API, written in Rust.

This crate is updated using openapi-generator.

Example

Add this crate using cargo add traq, then write in main.rs:

use std::{env::var, error::Error};
use traq::apis::{channel_api, configuration};

#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
    let access_token = var("BOT_ACCESS_TOKEN")?;
    let conf = configuration::Configuration {
        bearer_access_token: Some(access_token),
        ..Default::default()
    };
    let channels = channel_api::get_channels(&conf, Some(true)).await?;
    println!("there are {} public channels", channels.public.len());
    Ok(())
}

TLS Backend

This crate depends on reqwest as an HTTPS client. As with reqwest, you can select TLS backend through this crate's feature flags.

  • native-tls: the system-installed TLS backend
  • rustls-tls: the TLS library written in Rust

native-tls is used by default. To use only rustls-tls, write dependencies as:

[dependencies]
traq.version = "..."
traq.default-features = false
traq.features = ["rustls-tls"]

For more information, see docs in reqwest::tls.

About

⚠️ Community Driven ⚠️ Rust client library for the traQ API

Resources

License

Stars

Watchers

Forks

Packages

No packages published