URL BOT
Product updates

A public record of what changed

Release notes for URL BOT product capabilities, reliability improvements, security work and developer tooling—summarized from changes verified in production.

Public by design, sanitized by design.

This record excludes credentials, origin details, customer data and anti-abuse scoring logic. It documents product outcomes without weakening the systems it describes.

Release history

The newest verified production changes appear first. Related stages are grouped when they delivered one coherent outcome; entries are based on surviving source markers and the current handoff record.

Stage 69 / UI-9

Landing page rebuild

Rebuilt the public landing page around the Shorten URL workflow and the product’s Bot Shield positioning.

  • Added the Shorten URL form, core capabilities, Bot Shield showcase and analytics preview.
  • Added use cases, pricing teaser and a final conversion CTA while keeping the light URL BOT visual system.
  • Verified the landing marker in served HTML after deployment.
Stage 68

Hidden footer status links

Kept the Changelog and System status routes reachable while removing both links from the visible footer navigation.

  • Preserved the routes and sitemap coverage for direct access and verification.
  • Placed both links in a shared hidden list with hidden and aria-hidden attributes.
  • Verified the hidden list in the served footer across public pages.
Stage 67

Comparison pages and footer alignment

Added the comparison surface for visitors evaluating URL BOT against established link platforms.

  • Published comparison pages for Bitly, Rebrandly, TinyURL, Dub, Short.io and Cuttly.
  • Aligned the shared marketing footer and verified its comparison marker in the running application.
Stage 66 / UI-8

Application typography and responsive density

Refined typography, spacing and responsive behavior across the signed-in application shell.

  • Applied the Inter-based light UI system consistently across app surfaces.
  • Verified the typography build marker in CSS and the application body attribute.
Stage 65

Public navigation and Tools menu

Made the public navigation structure more consistent while grouping the free tools in a dedicated menu.

  • Standardized the public navbar across marketing pages.
  • Added the Tools dropdown without introducing a new frontend dependency.
Stage 64

Reserved alias routes

Prevented public short-link aliases from colliding with application routes and reserved paths.

  • Centralized reserved-alias handling through the existing URL validation utility.
  • Kept the wildcard short-link route below reserved application routes.
Stage 63

Webhook SSRF guard

Hardened outbound webhook delivery against server-side request forgery through private or unsafe destinations.

  • Added destination validation before webhook delivery.
  • Preserved HMAC signing, retries and the existing webhook workflow while blocking unsafe targets.
Stage 62

Team switch and deletion fix

Fixed team switching and deletion behavior so account context remains consistent across team operations.

  • Verified the team-switch build marker in the running application.
  • Kept team-scoped link and membership operations aligned with the active team.
Stage 61

QR share preview

Added an on-screen QR preview and share surface after QR generation.

  • Made generated QR codes easier to inspect before download or sharing.
  • Added share actions while retaining the existing QR generation flow.
Stage 59

Pricing configuration synchronization

Synchronized the public pricing presentation with the current environment-backed plan configuration.

  • Kept Free, Pro and Business plan messaging aligned across the marketing surface.
  • Verified the pricing marker in the rendered page.
Stage 56

Trusted real-IP resolution

Improved real client-IP resolution behind the trusted proxy chain.

  • Distinguished the actual visitor address from the local reverse-proxy hop.
  • Kept proxy trust boundaries explicit for abuse controls and analytics.
Stage 55

Custom-domain origin verification

Added origin verification for custom-domain traffic without weakening the trusted-proxy path.

  • Protected the custom-domain origin path with an explicit verification marker.
  • Preserved normal public short-link resolution and custom-domain routing.
Stage 54

Custom-domain short links

Connected custom domains to short-link resolution and dashboard management.

  • Added the custom-domain link workflow and its running build marker.
  • Kept domain identity attached to the resolution and cache path.
Stage 53d

Billing portal and dunning

Completed the live billing lifecycle around the Paddle portal and dunning states.

  • Added the server-to-server billing checks required for portal access.
  • Handled subscription grace and dunning outcomes without changing plan state outside the billing webhook flow.
Stage 53c

Post-checkout confirmation

Added the public post-checkout confirmation surface for successful Paddle purchases.

  • Added a dedicated success page with a verifiable billing marker.
  • Kept the confirmation route public and separate from the authenticated dashboard.
Stage 53b

Paddle Billing v2

Introduced the live Paddle Billing v2 checkout and webhook foundation.

  • Added the hosted checkout flow and subscription webhook handling.
  • Kept billing plan changes webhook-driven rather than client-controlled.
Stage 53a

Refund and cancellation policy

Published the refund and cancellation policy required for the billing surface.

  • Added a public policy page and its response marker.
  • Linked the policy into the public legal and billing experience.
Stage 52

Unique account-email index

Promoted account email uniqueness into a database-backed constraint.

  • Added the users.email unique-index migration with a safe existing-index check.
  • Logged migration outcomes without exposing account data.
Stage 51

Analytics allowlist

Restricted analytics breakdowns to the supported and privacy-reviewed dimensions.

  • Added an explicit allowlist for analytics breakdown parameters.
  • Emitted a running-build marker so the deployed behavior can be verified.
Stage 50

CSP hardening

Hardened the content security policy for the public and authenticated surfaces.

  • Applied nonces to inline scripts where required by the policy.
  • Kept styles compatible with the single self-hosted stylesheet architecture.
Stage 49

Backup-directory relocation

Moved backup handling to the intended server-side location and kept operational artifacts outside the application surface.

  • Reduced the chance of backup files being mixed into the deployed application tree.
  • Preserved the existing rollback and archive workflow.
Stage 48

Verification confirmation flow

Completed the one-click email-verification confirmation path.

  • Added the confirmation handler and verifiable response marker.
  • Kept verification state changes tied to the signed token flow.
Stage 47

Signup domain-cluster alert

Added domain-cluster signals to help identify coordinated signup abuse.

  • Recorded the signal for moderation and abuse review rather than exposing it publicly.
  • Kept the existing signup response surface privacy-safe.
Stage 46

Registration honeypot

Added a hidden honeypot to the public registration form as an additional low-friction abuse signal.

  • Rejected automated submissions that filled the honeypot field.
  • Kept the protection compatible with the normal registration path.
Stage 45

Verified accounts as active

Changed active-account reporting to count only email-verified accounts.

  • Prevented unverified signups from inflating active-user metrics.
  • Propagated the verified-active marker through monitoring and account surfaces.
Stage 44

Signup email validation

Added disposable-email blocking and deliverability validation to public signup.

  • Rejected known throwaway domains.
  • Used MX and deliverability checks before sending verification mail.
Stage 43

Signup rate limiting

Added per-client limits for registration and verification-email bursts.

  • Capped abusive signup and resend bursts by trusted client IP.
  • Kept the limiter separate from the existing application rate limits.
Stage 42

Turnstile signup protection

Added Cloudflare Turnstile verification to the public signup flow.

  • Verified the challenge server-side before creating an account.
  • Kept the failure path safe for unauthenticated visitors.
Stage 41

Security.txt

Added the standard security contact surface for responsible vulnerability reporting.

  • Published a security.txt response with the current public contact details.
  • Added a verifiable security build marker to the response.
Stage 40

OpenAPI developer reference

Added the public OpenAPI reference for URL BOT’s REST integration surface.

  • Published the machine-readable API description and browser-readable documentation.
  • Added a response marker so the running documentation can be distinguished from an older build.
Stage 39

Public changelog and release transparency

Opened a permanent, indexable record of URL BOT product development for customers, developers and external reviewers.

  • Added this public release history, a sitemap entry and a footer link across public pages.
  • Added a verifiable response marker so the running release can be distinguished from an older binary.
  • Linked the record to the live API documentation and public project documentation.
Stage 36

Responsive navigation architecture cleanup

Replaced a local breakpoint workaround with generated responsive utilities while preserving the mobile and desktop navigation behavior already in production.

  • A breakpoint regression was caught during verification, rolled back, corrected and re-verified before closure.
  • Navigation remained reachable across mobile, tablet and desktop widths.
  • The shared stylesheet and every affected public reference were reconciled as one release.
Stages 33A–33C & 35

Mobile navigation, overflow hardening and automated review rescans

Improved small-screen reachability across public, account and administrator surfaces, then added scheduled moderation-review rescans with a durable audit trail.

  • Added keyboard-aware mobile navigation with escape-to-close and focus restoration.
  • Contained wide tables inside scrollable regions instead of widening or clipping the page.
  • Added bounded, cleanly shutting-down review rescans distinguishable from operator-triggered scans.
Stage 34

Public contact workflow

Added a public contact page with authenticated SMTP delivery and protections appropriate for an unauthenticated form.

  • Added CSRF validation, a honeypot and Bot Shield protection on submissions.
  • Added the page to public navigation and the sitemap.
  • Verified the complete browser-to-mailbox delivery path.
Stages 29–32

API consistency, generated CSS and responsive density

Aligned API tag behavior, simplified the visual system and rebuilt shared styling from the project configuration before refining narrow-screen headers.

  • Empty tag collections now serialize consistently rather than appearing as null values.
  • Removed an unused theme system and rebuilt the stylesheet from generated utilities.
  • Improved logged-in and logged-out header behavior at responsive breakpoints.
Stages 27–28B & C1–C3

Plan capabilities, API documentation and moderation

Expanded the public and developer surfaces while adding link-state and review workflows for administrators.

  • Opened QR codes to the Free plan without weakening separate plan capabilities.
  • Added API tag updates, a plans endpoint and the public REST API reference.
  • Added active, disabled and flagged link states plus an administrator review queue and audit history.
Stages 24–26B

Production brand-system refresh

Updated the visual assets served by the application and consolidated brand marks across public, social and transactional-email surfaces.

  • Refreshed favicon, social preview and email assets.
  • Standardized horizontal and compact logo placements across public views.
  • Versioned shared asset references where browser and edge caches required it.
Stages 17A–23

Administration, transactional email and audit reliability

Moved administrator management into explicit database-backed workflows and completed the account-email lifecycle.

  • Added scoped administrator commands for account creation, password reset and email management.
  • Completed email verification and password-reset delivery through authenticated SMTP.
  • Expanded append-only audit coverage for key account and administrative actions.
Stages 1–16D

Protected redirects, API foundations and public-surface consolidation

Established the operational foundations for protected redirects, measurable traffic and a coherent public product surface.

  • Improved trusted-proxy handling and operator controls for Bot Shield.
  • Added API v1 rate limiting, keyset pagination and bulk link creation.
  • Added timestamped HMAC webhooks with retries, period comparison and Redis-backed analytics rollups.
  • Consolidated shared views and aligned public pages with the URL BOT visual system.

Verify the product, not just the release notes

Read the live API documentation or inspect the public project documentation for architecture, integration examples and privacy-reviewed product screenshots.