6 releases

0.1.5 Jul 30, 2024
0.1.4 Mar 21, 2024
0.1.3 Dec 27, 2023
0.1.2 Jul 21, 2023
0.1.1 Jun 15, 2023

#411 in Web programming

37 downloads per month

Custom license

645KB
13K SLoC

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.

Dependencies

~5–18MB
~263K SLoC