[package]
name = "workos"
version = "2.0.1"
edition = "2024"
rust-version = "1.88"
description = "Official Rust SDK for the WorkOS API"
license = "MIT"
repository = "https://github.com/workos/workos-rust"
homepage = "https://workos.com"
documentation = "https://docs.rs/workos"
readme = "README.md"
authors = ["WorkOS <sdk@workos.com>"]
keywords = ["workos", "sso", "authentication", "authkit", "sdk"]
categories = ["api-bindings", "authentication"]
exclude = [
"tests/**",
"script/**",
".github/**",
"release-please-config.json",
"renovate.json",
"CHANGELOG.md",
]
[features]
default = ["rustls-tls"]
native-tls = ["dep:reqwest", "reqwest/native-tls"]
rustls-tls = ["dep:reqwest", "reqwest/rustls-tls"]
[dependencies]
reqwest = { version = "0.12", default-features = false, features = [
"json",
], optional = true }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
thiserror = "2"
tokio = { version = "1", features = ["time", "sync"] }
futures-util = { version = "0.3", default-features = false, features = ["std"] }
http = "1"
async-trait = "0.1"
bytes = "1"
hmac = "0.12"
sha2 = "0.10"
aes-gcm = "0.10"
base64 = "0.22"
rand = "0.9"
subtle = "2.5"
url = "2.5"
hex = "0.4"
[dev-dependencies]
wiremock = "0.6"
tokio = { version = "1", features = ["macros", "rt-multi-thread"] }
[lints.rust]
unsafe_code = "forbid"
[lints.clippy]
unwrap_used = "warn"
expect_used = "warn"
dbg_macro = "warn"
todo = "warn"
[package.metadata.docs.rs]
features = ["rustls-tls"]
rustdoc-args = ["--cfg", "docsrs"]