Skip to content

Releases: hook0/hook0

play/v1.0.4

18 May 10:14

Choose a tag to compare

play/v1.0.4 - 2026-05-18

Added

  • Brand schema.org + canonical fix + comparisons title + CVE bumps (website,docs,play)

Fixed

  • Bump npm packages flagged by osv-scanner + clean atty + osv config (deps)

Other

  • Update dependencies and remove unused ones

Docker image

  • registry.gitlab.com/hook0/hook0/play:1.0.4

api/v1.0.2

13 May 09:39

Choose a tag to compare

api/v1.0.2 - 2026-05-13

Added

  • Server-side Google Ads conversion via gclid only (api,frontend)
  • Redesign transactional emails + Matomo + welcome (api)

Fixed

  • Commit event ingestion before sending request attempts to Pulsar (api)

Other

  • Update dependencies

Docker images

  • hook0/hook0-api:1.0.2 (DockerHub)
  • ghcr.io/hook0/hook0-api:1.0.2 (GHCR)
  • registry.gitlab.com/hook0/hook0/hook0-api:1.0.2 (GitLab)

mcp/v1.0.2

11 May 08:59

Choose a tag to compare

mcp/v1.0.2

  • chore(release): bump mcp to 1.0.2
  • chore(release): bump mcp to 1.0.1
  • fix(ci): opt cli/play/mcp into cargo-release + serialize trigger jobs
  • feat(ci): per-package release flow + monorepo tag convention
  • chore: update dependencies
  • chore: update dependencies
  • test(cli): do not run tests with external dependencies by default
  • chore: update dependencies
  • chore: update dependencies
  • chore: update dependencies
  • chore: update dependencies
  • chore: update dependencies
  • chore: update dependencies
  • chore: update dependencies
  • ci: fix build
  • chore: update dependencies
  • chore: update to reqwest 0.13
  • chore: update dependencies
  • chore: avoid running MCP integration tests by default
  • chore: update dependencies
  • fix(frontend): convert SVG files from LFS to regular git files
  • feat(mcp): add Hook0 MCP server for AI assistant integration

Install

cargo install hook0-mcp@1.0.2

play/v1.0.3

10 May 13:00

Choose a tag to compare

play/v1.0.3

  • chore(release): bump play to 1.0.3
  • chore(release): bump play to 1.0.2
  • chore(release): bump play to 1.0.1
  • fix(ci): opt cli/play/mcp into cargo-release + serialize trigger jobs
  • feat(ci): per-package release flow + monorepo tag convention
  • chore: update dependencies
  • ci: validate Dockerfile workspace coverage and migrate play.docker to BuildKit
  • feat(website,docs): SEO comparison pages, glossary, schema markup
  • fix(play): deploy job, smoke tests, E2E Playwright CI, auto-select first webhook, CLI link fix, pullPolicy fix
  • feat(play): web UI for webhook tester + Redis storage + cross-property navigation
  • chore(play): sort dependencies
  • chore: update dependencies
  • chore: update dependencies
  • chore: update dependencies
  • fix(play): replace Traefik IngressRoute with Kubernetes Ingress (kingress)
  • chore: update dependencies
  • feat(cli): add hook0 CLI with full API coverage

Docker image

  • registry.gitlab.com/hook0/hook0/play:1.0.3

output-worker/v1.0.2

10 May 06:56

Choose a tag to compare

[output-worker/v1.0.2] - 2026-05-10

Added

  • Use crate name as app name when connecting to PG
  • Implement output worker
  • Implement bounded linear retry delay
  • Rewrite Sentry integration & use it in both apps
  • Add authentication for application endpoints
  • Store worker ID and version when processing
  • Slow down or stop attempting requests after given numbers of retries
  • Improve JWT claims extraction & update dependencies
  • Use trust dns resolver and enable anyhow integration in Sentry
  • Add more trace messages
  • Sign webhook calls
  • Improve the way event playload content types are handled
  • Upsert response error names
  • Add event type in webhook requests
  • Add options to allow Sentry to trace and profile transactions
  • Add a Cargo feature to use rustls-native-certs for outgoing HTTPS requests
  • Add dedicated workers
  • Allow to set default organization workers
  • Allow to periodically send monitoring heartbeats (output-worker)
  • Allow to forbid HTTP requests that target IPs that are not globally reachable (output-worker)
  • Handle multiple request attempts concurrently (output-worker)
  • Improve resilience (output-worker)
  • When there is nothing to do, close DB transaction before waiting (output-worker)
  • When there is nothing to do, close DB transaction before waiting (output-worker)
  • Make timeouts configurable (output-worker)
  • Update dependencies
  • Configurable signature header name (worker)
  • Improve usage on signature_header_name (worker)
  • Support v1 signature verification (clients/rust)
  • Add a Pulsar-based worker mode
  • Use protobuf to serialize request attempts transported by Pulsar
  • Allow to load waiting request attempts from database into Pulsar on startup (output-worker)
  • Add support for storing events' payload in object storage
  • Enable retries in object storage client
  • Add support for storing responses' body and headers in object storage
  • Add OTLP metrics/traces support (output-worker)
  • Allow to configure maximum number of attempts for object storage operations
  • Improve retry logic (output-worker)
  • Add Hook0 MCP server for AI assistant integration (mcp)
  • Add comprehensive GitLab CI release automation workflow with version management and changelog generation
  • Allow to configure grace period for unfound request attempts in Pulsar mode (output-worker)
  • Do not block start of worker when loading waiting request attempts into Pulsar (output-worker)
  • Use latest behavior of S3 client
  • Add timeouts to object storage operations
  • Add Pulsar metrics (output-worker)
  • Improve S3 errors messages
  • Periodically display throughput information in logs (output-worker)
  • Migrate Rust loggers from log to tracing
  • Improve log messages (output-worker)
  • Make Sentry SDK debug mode OFF by default
  • Allow to configure sending default PII to Sentry
  • Allow to configure sending spans to Sentry
  • Add sdk release workflow with manual triggers (release)
  • Improve throughtput log (output-worker)
  • Make sure delayed request attempts are never processed ahead of time in Pulsar mode (output-worker)
  • Improve log messages (output-worker)
  • Improve static retry policy (output-worker)
  • Make Pulsar worker only handle its own request attempts (output-worker)
  • Per-package release flow + monorepo tag convention (ci)

Build

  • Use SQLx in offline mode

CI/CD

  • Split rust job
  • Check frontend & avoid downloading previous artifacts if not necessary
  • Update Clever Cloud Pipeline component
  • Update deployment component
  • Allow release jobs to run with alpha/beta/rc versions
  • Validate Dockerfile workspace coverage and migrate play.docker to BuildKit

Changed

  • Git ignore files
  • Let the DB compute the delay_until date
  • Split logic into several files (output-worker)
  • Make imports more readable
  • Fix
  • Improve SQL query coding style
  • Improve worker type log message (output-worker)
  • Pass the whole config to the work function (output-worker)
  • Add semver checks in CI, fixes #48 (repo)
  • Fix Dockerfile warnings
  • Format code (output-worker)
  • Improve signature (output-worker)
  • Improve string interpolation (output-worker)
  • Minor improvements
  • Improve logs related to object storage operations (api)
  • Improve logs related to object storage operations
  • Improve error messages related to object storage
  • Merge PG worker queries (output-worker)
  • Use a struct instead of a tuple (output-worker)

Fixed

  • Move Cargo profile config to workspace root
  • Typo
  • Clippy warning
  • Attempt picking
  • Upgrade cargo version
  • Add license
  • Cargo warning
  • Regen sqlx offline data
  • Regen sqlx offline data
  • Allow to soft delete subscriptions
  • Regen sqlx offline data
  • Retries limits (output-worker)
  • Typo (output-worker)
  • Allow a public worker to pick work dedicated to itself (output-worker)
  • Disable jobs when on schedule (gitlab-ci)
  • Remove deprecated only/except & replace with rules (gitlab-ci)
  • Merge glitch (output-worker)
  • Add missing info in some log messages (output-worker)
  • Commit instead of rolling back (output-worker)
  • Avoid doing a rollback even if it does not change much (output-worker)
  • Enable a missing Cargo feature (output-worker)
  • Automate output-worker deploy to clever (ci)
  • Replace deprecated reqwest feature
  • Docker deployment
  • Remove wrong ignores
  • Concurrent builds with cache (docker)
  • Fix(output-worker)
  • Private workers (output-worker)
  • Avoid crashing if header names/values are invalid (output-worker)
  • Send heartbeat in pulsar mode even if worker is idle (output-worker)
  • Add protoc and protobuf mount to Docker build (api,output-worker)
  • Prevent pg workers to pick up request attempts from disabled or deleted subscriptions (output-worker)
  • Typo in metric name (output-worker)
  • TLS crypto provider
  • Switch release containers from docker:dind to BuildKit rootless (ci)
  • Allow to disable Pulsar consumer stats (output-worker)
  • Correctly handle waiting but delayed request attempts when loading them from DB in Pulsar mode (output-worker)
  • Pick up assigned-to-self work for public PG workers (output-worker)
  • Add ca-certificates to Dockerfile (output-worker)
  • Ensure request attempts cannot be both succeeded and failed
  • Make Pulsar worker more resilient to broker errors (output-worker)
  • Initialize rustls crypto provider for all queue types (output-worker)
  • Avoid processing the same request attempt several times concurrently in Pulsar mode (output-worker)
  • Make sure Pulsar messages are ACKed by the broker
  • Opt cli/play/mcp into cargo-release + serialize trigger jobs (ci)

Other

  • Update SQLx
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Rename crates
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Chore(ignore)
  • Migrate to actix-web 4
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Add missing env var
  • Update dependencies
  • Update dependencies
  • Update to Rust 2021 edition
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Improve debug compile time
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Remove support of Sentry profiling
  • Update dependencies
  • Update dependencies
  • Remove useless folder
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Remove keycloak deps (docker)
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update to Rust Edition 2024
  • Update dependencies & improve mailer
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Improve logging (output-worker)
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies & fix Dockerfiles
  • Update dependencies
  • Update dependencies
  • Change level of some log messages (output-worker)
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Update to reqwest 0.13
  • Update dependencies
  • Update dependencies
  • Up...
Read more

cli/v1.0.1

10 May 06:26

Choose a tag to compare

cli/v1.0.1 - 2026-05-10

Added

  • Add hook0 CLI with full API coverage (cli)
  • Make event ID optional and use UUIDv7 in big tables
  • Web UI for webhook tester + Redis storage + cross-property navigation (play)
  • Per-package release flow + monorepo tag convention (ci)

CI/CD

  • Enable CI (cli)
  • Run API for E2E tests (cli)
  • Fix build (cli)
  • Fix build (cli)

Documentation

  • Add CLI reference documentation
  • Improve CLI reference wording and structure

Fixed

  • Opt cli/play/mcp into cargo-release + serialize trigger jobs (ci)

Other

  • Update dependencies
  • Update dependencies
  • Update dependencies
  • Sort dependencies (cli)
  • Update Rust Edition to 2024 (cli)
  • Update dependencies
  • Update keyring (cli)

Testing

  • Do not run tests with external dependencies by default (cli)

Install

Download the binary for your platform from the assets below, or build from source:

cargo install --git https://github.com/hook0/hook0 --tag cli/v1.0.1 hook0-cli

frontend/v1.0.1

09 May 22:07

Choose a tag to compare

[frontend/v1.0.1] - 2026-05-09

Added

  • Frontend
  • Feat
  • Improved frontend
  • Routing is working
  • Components
  • Application listing and application create
  • Error management + swagger-ui
  • Add organization metadata in database
  • Add support for working on another api environment
  • Add footer + universal button
  • Add Hook0Table and Hook0TableCellLink (frontend)
  • Application create, edit (frontend)
  • Organization crud
  • Complete organisation & application support + partial event_types support
  • Add support for event types deletion
  • Remove application and bug fixes
  • Support organization and application removal
  • Display problem as alert
  • Fill in default organization_id & application_id
  • Events and eventsdetail
  • Full organization support
  • Better event list display (frontend)
  • Fix types and add Hook0Code and Hook0DateTime (frontend)
  • Toggle on subscription list (frontend)
  • First version of logs
  • Add container and docker-compose (docker)
  • Add more lists to application dashboard (frontend)
  • Add ability to edit and view subscription's metadata (SubscriptionsEdit)
  • Improve navigation lisibility (frontend)
  • Display plan on organization dashboard (frontend)
  • Add a second name to plans for user-facing display
  • Allow to disable pricing
  • Do not override dedicated workers when editing a subscription (frontend)
  • Allow to select text in tables (frontend)
  • Improve several tables (frontend)
  • Improve several tables (frontend)
  • Improve event details (frontend)
  • Add subscriptions to application dashboard (frontend)
  • Hide unfinished search bar (frontend)
  • Adjust default column size for IPs (frontend)
  • DAST support (gitlab)
  • Updated logo
  • Add Crisp chatbox (frontend)
  • Handle organization members (frontend)
  • Never index pages from this app (frontend)
  • Improve some data tables (frontend)
  • Add subscription secret (frontend)
  • Add some personal information's and possibility to delete your account (frontend)
  • IAM v2
  • Login page form and field with iam-v2 (frontend)
  • Modification applied (check David's comment) (frontend)
  • Add iam-v2 form and routes (frontend)
  • Some modification and upgrade of Register / AuthPlugin (frontend)
  • Add email verification frontend + modify some details (@dsferruzza comment's) (frontend)
  • Tentative to add notifications system into hook0 project (frontend)
  • Modify the Hook0Problem with notification system (notivue) (frontend)
  • Add notification when user logged in (frontend)
  • Feat(frontend) add banner / logo to /public
  • Add automatically pushed user to login routes when registered (frontend)
  • Add and modify UserSettings to the new iam + add frontend change password (frontend)
  • Finish begin reset password && reset password frontend part (frontend)
  • Organization services tokens (frontend)
  • Add service token view page and start to implement biscuit auth (frontend)
  • Some updates (frontend)
  • Complete a part for get BiscuitToken deserialized (frontend)
  • Some updates (frontend)
  • Finish the part for attenuate biscuit token with some params (frontend)
  • Add function to get ServiceToken information by he's token_id (frontend)
  • Some updates in token view part. Changed the moment when receive the biscuit token not by getting routes params but an api call (frontend)
  • Some updates (frontend)
  • Check if attenuate expiration date is in the future and convert it to RFC 3339 (frontend)
  • Finished the work with attenuation token (frontend)
  • Add plugin (didn't work actually) for check on load if webassembly is supported on user browser. (frontend)
  • Display unattenuated biscuit token. (frontend)
  • Various improvements (frontend)
  • Add a message on organization's dashboard when no service token exist (frontend)
  • Add a button to return to service token list when viewing a service token (frontend)
  • Suppress reload and add notification when create/removing/editing organizations (frontend)
  • Add a message on organization's dashboard when no service token exist (frontend)
  • Add possibility to replay an event when he's already consume in the past (api/frontend)
  • Remove useless item in event list datatable (frontend)
  • Better displaying for login / registration part (frontend)
  • Prepare application secrets deprecation and hide service token UIs
  • Make logout safer (frontend)
  • Update Hook0Select.vue to use default props (api)
  • Update dependencies
  • Display the organization id in organizations/{org_id}/settings and add a copy button
  • Add better display of organization_id and application_id (#56)
  • Add copy button (#56)
  • Add better display of organization_id and application_id (#56)
  • Upgrade for the mobile ui
  • Better display for org id & app id (#56)
  • Add possibility to copy app and org id with text on mobile (#56) (frontend)
  • Add a system for revokate token of users when password changes (frontend/api)
  • Limit number of event types and subscriptions by application on the plans (#61) (frontend/api)
  • Add non persistant cache for api instance (frontend)
  • Start implementation of tutorial (not finished only 2 steps ) (frontend)
  • Rebase to iam-v2 for merging (frontend)
  • Add possibility to select an existing organization for the tutorial (frontend)
  • Partial init of progress bar component
  • #9
  • Lot of things (UX/UI edit (fg & david comment's)) (frontend)
  • Add CodeMirror in send event payload (frontend)
  • Add tutorial check flow for onboarding and application setup (frontend)
  • Feat(tutorial): replace TutorialOnboarding with TutorialIntroduction for better clarity and user experience
    feat(tutorial): create TutorialIntroduction.vue to provide a welcoming tutorial interface and guide users through initial steps
  • Feat(tutorial): refactor progress bar implementation to use a shared progressItems array for consistency and maintainability
    fix(tutorial): update step numbers in various components to reflect the correct order in the tutorial flow
    chore(tutorial): create TutorialService.ts to centralize progressItems data for better organization and reusability
  • Feat(frontend): enhance tutorial flow by passing organization and application IDs to the success page
    fix(frontend): remove unnecessary console log from event listing in OrganizationAndApplicationSelector.vue
    refactor(frontend): implement error handling for missing organization and application IDs in TutorialSuccess.vue
  • Add possibility to use an existing application or creating a new one in tutorial (frontend)
  • Feat(frontend)
  • Add tutorial's wizard in application dashboard (api/frontend)
  • Feat/fix(frontend)
  • Feat/fix(frontend)
  • Improve contents (frontend)
  • Add card tree structure for org & app (frontend)
  • Avoid concurrent config API calls (frontend)
  • Add Matomo integration (frontend)
  • Start impleting change user role in organization (api/frontend)
  • Implement consumption (frontend)
  • Add color changes on 80% and 100% on quotas progress bar (frontend)
  • Add support email adress to configuration field (frontend)
  • Add Cloudflare Turnstile on registration form
  • Improve subscription UI (frontend)
  • Only display request attempts that are more recent than 7 days (frontend)
  • Ask for confirmation when disabling a subscription (frontend)
  • Redesign login page with modern dark theme (frontend)
  • Add Hook0 MCP server for AI assistant integration (mcp)
  • Implement GDPR-compliant Matomo tracking with all goals (analytics)
  • Add animated 404 error page with fishing hook theme (ui)
  • Display login and error pages in full-screen mode (ui)
  • Allow to set API_ENDPOINT at runtime when using Docker image (frontend)
  • Allow to set API_ENDPOINT and API_TIMEOUT at runtime when using Docker image (frontend)
  • Add sdk release workflow with manual triggers (release)
  • Add organization/application consumption
  • Add response detail view to delivery logs (frontend)
  • Extract header filter to pure function with unit tests (frontend)
  • Add requestAttempt detail service, keys, and composable (frontend)
  • Extract and test formatBody and statusCodeClass (frontend)
  • Create LogDetailContent shared component (frontend)
  • Create LogSidePanel drawer component (frontend)
  • Create LogDetail page and update routes (frontend)
  • Redesign logs table and delivery drawer (frontend)
  • Split-panel layout, responsive mobile, lifecycle animations (frontend)
  • Add Hook0Section component (frontend)
  • Add Hook0SplitLayout component (frontend)
  • Google Ads landing pages, conversion tracking, SEO fixes (website,docs,frontend)
  • Improve health check (api)
  • Per-package release flow + monorepo tag convention (ci)

Build

  • Remove deprecated plugin (frontend)
  • Fix dev mode (frontend)
  • Add ARG for API endpoint in frontend Dockerfile and update dependencies

CI/CD

  • Fix watched paths
  • Check frontend & avoid downloading previous artifacts if not necessary
  • Fix a path
  • Remove some warnings (frontend)
  • Fix job rules
  • Add frontend container build and GitLab release to pipeline
  • Validate Dockerfile workspace coverage and migrate play.docker to BuildKit

Changed

  • Activate prettier everywhere
  • Display metadata and labels (EventsDetail)
  • Add a cell renderer for dates (frontend)
  • Remove a useless dependency (frontend)
  • Optimization and simplification of displaying errors (frontend)
  • Optimization and simplification of displaying errors (frontend)
  • Improve content (frontend)
  • Do not display optional section before checking if it should be displayed (frontend)
  • Remove a debug message (frontend)
  • Remove non-working WASM check (frontend)
  • Rename some components (frontend)
  • Add semver checks in CI, fixes #48 (repo)
  • Apply suggestions from David's review
  • Refactor(frontend)
  • Apply suggestions from David's review
  • Refactor(ci)
  • Fix Dockerfile warnings
  • Rename the routes and files for better naming (frontend)
  • Remove an useless comment (frontend)
  • Update header text to be more inviting and concise for better user experience (frontend)
  • Update text (frontend)
  • Update text (frontend)
  • Pdate subtitles and descriptions (frontend)
  • Change icons...
Read more

api/v1.0.1

09 May 21:40

Choose a tag to compare

[api/v1.0.1] - 2026-05-09

Added

  • Create API project
  • Add DB connection
  • Add OpenAPI doc generation
  • Add routes
  • Add CRUD handlers for applications
  • Use crate name as app name when connecting to PG
  • Add event_types endpoints
  • Put API URLs inside /api/
  • Serve webapp
  • Add application_secrets endpoints
  • Add endpoints to see events
  • Add event ingestion endpoint
  • Rewrite Sentry integration & use it in both apps
  • Feat
  • Add authentication for application endpoints
  • Add authentication for every endpoint that should require it
  • Add endpoint to list organizations
  • Add subscriptions endpoints
  • Error management + swagger-ui
  • Add request attempts endpoint
  • Allow to filter request attempts
  • Add responses endpoint
  • Add organization metadata in database
  • Enable auto DB migration by default
  • Improve JWT claims extraction & update dependencies
  • Allow authentication using both JWT or application secret
  • Improve auth module to better handle event ingestion
  • Add a registration endpoint
  • Allow to disable registration
  • Add API rate limiting
  • Expose instance config
  • Cors
  • Add input validation infrastructure
  • Add input validators
  • Check max length of input strings
  • Return JSON body parsing errors as Hook0 problems
  • Add more validators
  • Require front client ID to be set and expose it
  • Add a secure extractor for user's IP
  • Allow to configure CORS allowed origins
  • Add multiple rate limiters
  • Add an endpoint to list organization's users
  • Add endpoints to invite or remove users from organizations
  • Add an endpoint to create an organization
  • Add a created_by field for organizations
  • Add an endpoint to edit organizations
  • Switch API spec from OpenAPI v2 to v3
  • Add an endpoint to remove an organization
  • Improve the way event playload content types are handled
  • Add an endpoint to get a subscription
  • Expose application_id in subscriptions endpoints
  • Allow to not serve web app (api)
  • Initialize a Hook0 client in Hook0 API
  • Implement Hook0 client for some events
  • Implement Hook0 client for more events
  • Support the new way of handling payload content in events
  • Implement Hook0 client for more events
  • Upsert Hook0 client event types on startup
  • Improve labels of Hook0 events
  • Implement Hook0 client for more events
  • Implement Hook0 client for more events
  • Add user info in Sentry reports
  • Publish openapi to readme.io (api)
  • User must provide a password when registering (api)
  • Add options to allow Sentry to trace and profile transactions
  • Add Sentry middleware for Actix Web
  • Add a Cargo feature to use rustls-native-certs for outgoing HTTPS requests
  • Add server in OpenAPI spec (api)
  • Declare application secret authentication in OpenAPI (api)
  • Add quotas (api)
  • Allow fetching quotas to use transactions
  • Enforce some quotas
  • Add a second name to plans for user-facing display
  • Allow to disable pricing
  • Add dedicated workers
  • Allow to configure a master API key (api)
  • Allow to set default organization workers
  • Enforce events per day quota (api)
  • Check that subscriptions target URLs are valid (api)
  • Add health check endpoint (api)
  • Clean up old events (api)
  • Backup events per day before cleaning up and do some housekeeping after (api)
  • Only run housekeeping operations after actual data was deleted because of retention policy (api)
  • Add secured headers / HSTS with configuration (api)
  • Betters named give to configuration / enable by default the HSTS (api)
  • Init (api)
  • Add module for send some mails with template made in mjml (api)
  • #20 upgrade mails semantics / add reset password mail (api)
  • #20 upgrade variable system of each mail / add a new template (welcome) (api)
  • #20 remove subject field from Mails enum (api)
  • #20 add conversion for html to text (api)
  • Support SMTP authentication (api)
  • Some little updates (api)
  • IAM v2
  • IAM v2
  • Add mailer (api)
  • Implement module for email verification with mailer to send a mail (api)
  • Add /auth/verify-email process (not finished) (api)
  • Finished the part for email verification (api)
  • Implement "Forgot Password" + "Password Reset" + "Change Password" features (api)
  • Add email_logo_url config used for replace variable { $logo_url } in mail template (api)
  • Add route for get information about only one service token (api)
  • Add migration to replay an event (migrations)
  • Add possibility to replay an event when he's already consume in the past (api/frontend)
  • Add authorizer MAX_AUTHORIZATION_TIME_IN_MS config (api)
  • Add comment and constant for MAX_DURATION_TIME_IN_MS (api)
  • Make email case insensitive and return a proper error when registering with an already registered email (api)
  • Clean all unverfied users (api)
  • Prepare application secrets deprecation and hide service token UIs
  • Improve emails (api)
  • Change HSTS max age to 2 years (api)
  • Improve emails (api)
  • Add a security header (api)
  • Update api keywords (api)
  • Delete unreachable organizations (api)
  • Only clean up empty organizations (api)
  • Vacuum, analyze and reindex after unverified users cleanup (api)
  • Update dependencies
  • Add a system for revokate token of users when password changes (frontend/api)
  • Limit number of event types and subscriptions by application on the plans (#61) (frontend/api)
  • Add an index (api)
  • Feat(api)
  • Add tutorial's wizard in application dashboard (api/frontend)
  • Add Matomo integration (frontend)
  • Implement AuthEmailNotVerified problem (#68) (api)
  • Add routes for exposing default quotas (#61) (api)
  • Start impleting change user role in organization (api/frontend)
  • Send email when events per days quota reached (api)
  • Implement consumption (api)
  • Allow to whitelist trusted reverse proxies using CIDR IPs (api)
  • Support user IP extraction when behind Cloudflare (api)
  • Add support email adress to configuration field (api)
  • Add a default value for support email address (api)
  • Add Cloudflare Turnstile on registration form
  • Add pagination on the request attempts endpoint (api)
  • Add pagination on the request attempts endpoint (api)
  • Improve OpenAPI documentation for paginated responses (api)
  • Allow to extract profiling information (api)
  • Add a Pulsar-based worker mode
  • Improve health check (api)
  • Use protobuf to serialize request attempts transported by Pulsar
  • Prevent housekeeping tasks from running concurrently (api)
  • Add a timeout on materialized views refresh (api)
  • Allow to continue starting without Pulsar connection (api)
  • Improve housekeeping (api)
  • Add support for storing events' payload in object storage
  • Allow to configure health check timeout (api)
  • Enable retries in object storage client
  • Improve log message when finding orphan applications in object storage (api)
  • Add support for storing responses' body and headers in object storage
  • Allow to configure DB statement timeout (api)
  • Allow to configure maximum number of attempts for object storage operations
  • Marks subscription as failed when disabling/deleting a subscription or deleting and application.
  • Add OTLP metrics/traces support (api)
  • Report span when refreshing materialized views (api)
  • Track size of rate limiters (api)
  • Add event type filter and response to request attempts endpoint (api)
  • Add GET /api/v1/environments endpoint (api)
  • Add Hook0 MCP server for AI assistant integration (mcp)
  • Add comprehensive GitLab CI release automation workflow with version management and changelog generation
  • Add metrics related to events ingestion (api)
  • Use latest behavior of S3 client
  • Add timeouts to object storage operations
  • Improve token rate limiter (api)
  • Improve S3 errors messages
  • Migrate Rust loggers from log to tracing
  • Improve log messages (output-worker)
  • Make Sentry SDK debug mode OFF by default
  • Allow to configure sending default PII to Sentry
  • Allow to configure sending spans to Sentry
  • Add sdk release workflow with manual triggers (release)
  • Add organization/application consumption
  • Add updated_at timestamp to subscription API responses (api)
  • Add hook0 CLI with full API coverage (cli)
  • Add http_response_status to RequestAttempt list query (api)
  • Add GET /request_attempts/:id endpoint (api)
  • Make event ID optional and use UUIDv7 in big tables
  • Add concurrency and configurable timeouts to object storage cleanup (api)
  • Improve health check (api)
  • Per-package release flow + monorepo tag convention (ci)

Breaking Changes

  • Edit info! for dbg! (auth.rs) + remove useless .clone (api)

Build

  • Use SQLx in offline mode
  • Fix warning (api)

CI/CD

  • Split rust job
  • Fix jobs restricted to master branch
  • Check frontend & avoid downloading previous artifacts if not necessary
  • Update Clever Cloud Pipeline component
  • Update deployment component
  • Update readme CLI
  • Fix change rule
  • Fix publishing of API documentation (api)
  • Remove useless job & fix stages (documentation)
  • Allow release jobs to run with alpha/beta/rc versions
  • Validate Dockerfile workspace coverage and migrate play.docker to BuildKit

Changed

  • Sort dependencies
  • Fix indentation
  • Use sqlx DB migrations
  • Fix
  • Reformat imports
  • Improve queries formatting
  • Use a Hook0Problem to report user-facing errors
  • Use strum to implement Display
  • Fix
  • Log sqlx error messages
  • Create a service to use Keycloak API
  • Rephrase
  • Improve naming
  • Use validator wherever possible for the event ingestion endpoint
  • Separate user IP generic middleware from extractor
  • Rename middleware
  • Remove useless default config value
  • Cors allowed headers
  • Allow Role type in responses
  • Rename types and endpoints
  • Remove useless exception
  • Add a price table (api)
  • Fix typo (api)
  • Old events cleanup (api)
  • Mailer (api)
  • Improve a lot of things (api)
  • Run cargo fmt (api)
  • Improve a lot of things (api)
  • Improve a lot of things (api)
  • Run cargo fmt (api)
  • Clean up unverified users (api)
  • Add semver checks in CI, fixes #48 (repo)
  • Run cargo fmt (api)
  • Apply suggestions from David's review
  • Refactor(api)
  • Fix Dockerfile warni...
Read more

v1.0.0-alpha.3

19 Feb 23:55
535a457

Choose a tag to compare

1.0.0-alpha.3 - 2026-02-19

CI

  • Fix GitLab releases
  • Fix output worker package name

Docker Images

Image DockerHub GitHub Container Registry GitLab Registry
API hook0/hook0-api ghcr.io/hook0/hook0-api registry.gitlab.com/hook0/hook0/hook0-api
Output Worker hook0/hook0-output-worker ghcr.io/hook0/hook0-output-worker registry.gitlab.com/hook0/hook0/hook0-output-worker
Frontend hook0/hook0-frontend ghcr.io/hook0/hook0-frontend registry.gitlab.com/hook0/hook0/hook0-frontend

v1.0.0-alpha.2

14 Feb 00:25
f6b26ad

Choose a tag to compare

1.0.0-alpha.2 - 2026-02-13

Added

  • Add Pulsar metrics (output-worker)

CI

  • Improve release content
  • Improve release content
  • Add frontend container build and GitLab release to pipeline
  • Update tools
  • Improve GitLab releases contents

Other

  • Update dependencies

Docker Images

Image DockerHub GitHub Container Registry GitLab Registry
API hook0/hook0-api ghcr.io/hook0/hook0-api registry.gitlab.com/hook0/hook0/hook0-api
Output Worker hook0/hook0-output-worker ghcr.io/hook0/hook0-output-worker registry.gitlab.com/hook0/hook0/hook0-output-worker
Frontend hook0/hook0-frontend ghcr.io/hook0/hook0-frontend registry.gitlab.com/hook0/hook0/hook0-frontend