hook0-api 0.1.0

Core REST API of Hook0 — Open-Source Webhooks as a service for SaaS
[package]
name = "hook0-api"
version = "0.1.0"
description = "Core REST API of Hook0 — Open-Source Webhooks as a service for SaaS"
repository = "https://gitlab.com/hook0/hook0/-/tree/master/api"
homepage = "https://www.hook0.com/"
edition = "2021"
license = "SSPL-1.0"
keywords = ["webhooks", "webhook", "webhook-server", "events", "saas"]

[dependencies]
actix = "0.13.5"
actix-cors = "0.7.0"
actix-files = "0.6.6"
actix-governor = { version = "0.5.0", features = ["log"] }
actix-web = "4.9.0"
anyhow = "1.0.86"
argon2 = "0.5.3"
async-recursion = "1.1.1"
base64 = "0.22.1"
biscuit-auth = { version = "5.0.0", features = ["uuid"] }
chrono = { version = "0.4.38", features = ["serde"] }
clap = { version = "4.5.16", features = ["derive", "env", "cargo", "wrap_help"] }
futures-util = "0.3.30"
governor = "0.6.3"
hook0-client = { path = "../clients/rust", version = "0.1.0" }
html2text = "0.12.5"
http-api-problem = { version = "0.57.0", features = ["actix-web"] }
ipnetwork = "0.20.0"
lazy_static = "1.5.0"
lettre = { version = "0.11.7", default-features = false, features = ["builder", "smtp-transport", "pool", "tokio1-rustls-tls"] }
log = "0.4.22"
mrml = "4.0.0"
nom = "7.1.3"
nom-regex = "0.2.0"
paperclip = { version = "0.8.2", default-features = false, features = ["actix4", "v3", "chrono", "uuid"] }
regex = "1.10.6"
reqwest = { version = "0.12.7", default-features = false, features = ["charset", "http2", "macos-system-configuration", "hickory-dns"] }
sentry-actix = "0.34.0"
hook0-sentry-integration = { path = "../sentry-integration", version = "0.1.0" }
serde = "1.0.208"
serde_json = "1.0.125"
sqlx = { version = "0.7.4", default-features = false, features = ["runtime-tokio", "tls-rustls", "postgres", "macros", "uuid", "chrono", "json", "ipnetwork", "migrate"] }
strum = { version = "0.26.3", features = ["derive"] }
thiserror = "1.0.63"
url = "2.5.2"
uuid = { version = "1.10.0", features = ["serde", "v4"] }
validator = { version = "0.16.1", features = ["derive", "unic"] }

[dev-dependencies]
test-log = { version = "0.2.16", features = ["unstable"] }

[features]
default = ["reqwest-rustls-tls-webpki-roots", "migrate-users-from-keycloak", "application-secret-compatibility"]
reqwest-rustls-tls-webpki-roots = ["reqwest/rustls-tls-webpki-roots", "hook0-client/reqwest-rustls-tls-webpki-roots"]
reqwest-rustls-tls-native-roots = ["reqwest/rustls-tls-native-roots", "hook0-client/reqwest-rustls-tls-native-roots"]
migrate-users-from-keycloak = []
application-secret-compatibility = []