zitadel 5.3.2

An implementation of ZITADEL API access and authentication in Rust.
Documentation
[dependencies.actix-web]
optional = true
version = "4.5.1"

[dependencies.async-trait]
optional = true
version = "0.1.80"

[dependencies.axum]
features = ["macros"]
optional = true
version = "0.7.5"

[dependencies.axum-extra]
features = ["typed-header"]
optional = true
version = "0.9.3"

[dependencies.base64-compat]
optional = true
version = "1"

[dependencies.custom_error]
version = "1.9.2"

[dependencies.document-features]
optional = true
version = "0.2.8"

[dependencies.jsonwebtoken]
optional = true
version = "9.3.0"

[dependencies.moka]
features = ["future"]
optional = true
version = "0.12.8"

[dependencies.openidconnect]
optional = true
version = "3.5.0"

[dependencies.pbjson-types]
optional = true
version = "0.7.0"

[dependencies.prost]
optional = true
version = "0.13.1"

[dependencies.prost-types]
optional = true
version = "0.13.1"

[dependencies.reqwest]
default-features = false
features = ["json", "rustls-tls"]
optional = true
version = "0.11.27"

[dependencies.rocket]
optional = true
version = "0.5.0"

[dependencies.rocket_okapi]
default-features = false
optional = true
version = "0.9.0"

[dependencies.schemars]
optional = true
version = "0.8.21"

[dependencies.serde]
features = ["derive"]
optional = true
version = "1.0.200"

[dependencies.serde_json]
optional = true
version = "1.0.116"

[dependencies.serde_urlencoded]
optional = true
version = "0.7.1"

[dependencies.time]
optional = true
version = "0.3.36"

[dependencies.tokio]
features = ["macros", "rt-multi-thread"]
optional = true
version = "1.37.0"

[dependencies.tonic]
features = ["tls"]
optional = true
version = "0.12.1"

[dependencies.tonic-types]
optional = true
version = "0.12.1"

[dev-dependencies.chrono]
version = "0.4.38"

[dev-dependencies.http-body-util]
version = "0.1.0"

[dev-dependencies.tokio]
features = ["macros", "rt-multi-thread"]
version = "1.37.0"

[dev-dependencies.tower]
version = "0.5.0"

[features]
actix = ["credentials", "oidc", "dep:actix-web"]
api = ["api-admin-v1", "api-auth-v1", "api-management-v1", "api-system-v1", "api-oidc-v2", "api-org-v2", "api-session-v2", "api-settings-v2", "api-user-v2"]
api-admin-v1 = ["api-common", "zitadel-admin-v1"]
api-auth-v1 = ["api-common", "zitadel-auth-v1"]
api-common = ["dep:prost", "dep:prost-types", "dep:tonic", "dep:tonic-types", "dep:pbjson-types"]
api-management-v1 = ["api-common", "zitadel-v1-v1"]
api-oidc-v2 = ["api-common", "zitadel-oidc-v2"]
api-org-v2 = ["api-common", "zitadel-org-v2", "zitadel-user-v2"]
api-session-v2 = ["api-common", "zitadel-session-v2"]
api-settings-v2 = ["api-common", "zitadel-settings-v2"]
api-system-v1 = ["api-common", "zitadel-system-v1", "zitadel-authn-v1"]
api-user-v2 = ["api-common", "zitadel-user-v2"]
axum = ["credentials", "oidc", "dep:axum", "dep:axum-extra"]
credentials = ["dep:jsonwebtoken", "dep:openidconnect", "dep:reqwest", "dep:serde", "dep:serde_json", "dep:serde_urlencoded", "dep:time"]
default = ["tls-roots"]
interceptors = ["credentials", "dep:time", "dep:tokio"]
introspection_cache = ["dep:async-trait", "dep:time", "dep:moka"]
oidc = ["credentials", "dep:base64-compat"]
proto_full = ["zitadel-action-v1", "zitadel-admin-v1", "zitadel-app-v1", "zitadel-auth-v1", "zitadel-authn-v1", "zitadel-change-v1", "zitadel-event-v1", "zitadel-feature-v1", "zitadel-feature-v2", "zitadel-feature-v2beta", "zitadel-idp-v1", "zitadel-idp-v2", "zitadel-instance-v1", "zitadel-management-v1", "zitadel-member-v1", "zitadel-metadata-v1", "zitadel-milestone-v1", "zitadel-object-v2", "zitadel-object-v2beta", "zitadel-object-v3alpha", "zitadel-oidc-v2", "zitadel-oidc-v2beta", "zitadel-org-v1", "zitadel-org-v2", "zitadel-org-v2beta", "zitadel-policy-v1", "zitadel-project-v1", "zitadel-protoc_gen_zitadel-v2", "zitadel-quota-v1", "zitadel-resources-action-v3alpha", "zitadel-resources-debug_events-v3alpha", "zitadel-resources-object-v3alpha", "zitadel-resources-user-v3alpha", "zitadel-resources-userschema-v3alpha", "zitadel-resources-webkey-v3alpha", "zitadel-session-v2", "zitadel-session-v2beta", "zitadel-settings-object-v3alpha", "zitadel-settings-v1", "zitadel-settings-v2", "zitadel-settings-v2beta", "zitadel-system-v1", "zitadel-text-v1", "zitadel-user-v1", "zitadel-user-v2", "zitadel-user-v2beta", "zitadel-v1", "zitadel-v1-v1"]
rocket = ["credentials", "oidc", "dep:rocket"]
rocket_okapi = ["rocket", "dep:rocket_okapi", "dep:schemars"]
tls-roots = ["tonic/tls-roots"]
tls-webpki-roots = ["tonic/tls-webpki-roots"]
zitadel-action-v1 = ["zitadel-v1"]
zitadel-admin-v1 = ["zitadel-event-v1", "zitadel-idp-v1", "zitadel-instance-v1", "zitadel-management-v1", "zitadel-member-v1", "zitadel-milestone-v1", "zitadel-org-v1", "zitadel-policy-v1", "zitadel-settings-v1", "zitadel-text-v1", "zitadel-v1", "zitadel-v1-v1"]
zitadel-app-v1 = ["zitadel-v1"]
zitadel-auth-v1 = ["zitadel-change-v1", "zitadel-idp-v1", "zitadel-metadata-v1", "zitadel-org-v1", "zitadel-policy-v1", "zitadel-user-v1", "zitadel-v1"]
zitadel-authn-v1 = ["zitadel-v1"]
zitadel-change-v1 = ["zitadel-v1"]
zitadel-event-v1 = ["zitadel-v1"]
zitadel-feature-v1 = []
zitadel-feature-v2 = ["zitadel-object-v2"]
zitadel-feature-v2beta = ["zitadel-object-v2beta"]
zitadel-idp-v1 = ["zitadel-v1"]
zitadel-idp-v2 = ["zitadel-object-v2"]
zitadel-instance-v1 = ["zitadel-v1"]
zitadel-management-v1 = ["zitadel-action-v1", "zitadel-app-v1", "zitadel-authn-v1", "zitadel-change-v1", "zitadel-idp-v1", "zitadel-member-v1", "zitadel-metadata-v1", "zitadel-org-v1", "zitadel-policy-v1", "zitadel-project-v1", "zitadel-text-v1", "zitadel-user-v1", "zitadel-v1"]
zitadel-member-v1 = ["zitadel-user-v1", "zitadel-v1"]
zitadel-metadata-v1 = ["zitadel-v1"]
zitadel-milestone-v1 = []
zitadel-object-v2 = []
zitadel-object-v2beta = []
zitadel-object-v3alpha = []
zitadel-oidc-v2 = ["zitadel-object-v2"]
zitadel-oidc-v2beta = ["zitadel-object-v2beta"]
zitadel-org-v1 = ["zitadel-v1"]
zitadel-org-v2 = ["zitadel-object-v2"]
zitadel-org-v2beta = ["zitadel-object-v2beta"]
zitadel-policy-v1 = ["zitadel-idp-v1", "zitadel-v1"]
zitadel-project-v1 = ["zitadel-v1"]
zitadel-protoc_gen_zitadel-v2 = []
zitadel-quota-v1 = []
zitadel-resources-action-v3alpha = ["zitadel-object-v3alpha", "zitadel-resources-object-v3alpha"]
zitadel-resources-debug_events-v3alpha = ["zitadel-object-v3alpha", "zitadel-resources-object-v3alpha"]
zitadel-resources-object-v3alpha = ["zitadel-object-v3alpha"]
zitadel-resources-user-v3alpha = ["zitadel-object-v3alpha", "zitadel-resources-object-v3alpha"]
zitadel-resources-userschema-v3alpha = ["zitadel-object-v3alpha", "zitadel-resources-object-v3alpha"]
zitadel-resources-webkey-v3alpha = ["zitadel-object-v3alpha", "zitadel-resources-object-v3alpha"]
zitadel-session-v2 = ["zitadel-object-v2", "zitadel-v1"]
zitadel-session-v2beta = ["zitadel-object-v2beta", "zitadel-v1"]
zitadel-settings-object-v3alpha = ["zitadel-object-v3alpha"]
zitadel-settings-v1 = ["zitadel-v1"]
zitadel-settings-v2 = ["zitadel-object-v2"]
zitadel-settings-v2beta = ["zitadel-object-v2beta"]
zitadel-system-v1 = ["zitadel-feature-v1", "zitadel-instance-v1", "zitadel-member-v1", "zitadel-quota-v1", "zitadel-v1"]
zitadel-text-v1 = ["zitadel-v1"]
zitadel-user-v1 = ["zitadel-v1"]
zitadel-user-v2 = ["zitadel-object-v2"]
zitadel-user-v2beta = ["zitadel-object-v2beta"]
zitadel-v1 = []
zitadel-v1-v1 = ["zitadel-authn-v1", "zitadel-idp-v1", "zitadel-management-v1", "zitadel-org-v1", "zitadel-v1"]

[lib]
name = "zitadel"
path = "src/lib.rs"

[package]
authors = ["Christoph Bühler <christoph@smartive.ch>"]
autobenches = false
autobins = false
autoexamples = false
autotests = false
build = false
categories = ["authentication", "api-bindings"]
description = "An implementation of ZITADEL API access and authentication in Rust."
edition = "2021"
include = ["src/**/*.rs", "Cargo.toml", "LICENSE*", "README.md"]
keywords = ["ZITADEL", "gRPC", "clients", "authentication", "oidc"]
license = "MIT OR Apache-2.0"
name = "zitadel"
readme = "README.md"
repository = "https://github.com/buehler/zitadel-rust"
version = "5.3.2"

[package.metadata.docs.rs]
all-features = true