Skip to Content
How-to guideSourcesManaged setup

Self-Host the Tracking Ingestion API

Plan and validate a customer-operated Vendo ingestion deployment on supported Node.js infrastructure.

Last reviewed July 25, 2026

Managed setup — Most workspaces should use the tracking host and snippet generated in Vendo. Self-host only when your agreement includes the ingestion package and your team can own its security, uptime, upgrades, and data routing.

The ingestion service runs as a Node.js container on the infrastructure of your choice, behind your own HTTPS reverse proxy. Vendo does not require a specific platform, concurrency, memory, scaling, or timeout value. (Vendo’s managed deployment runs on Hetzner behind Caddy at track.vendodata.com / track-staging.vendodata.com.)

Responsibilities

The operating team owns:

  • TLS, DNS, capacity, availability, and incident response;
  • secret storage and write-key rotation;
  • authentication-provider configuration;
  • warehouse permissions, schemas, retention, and cost controls;
  • Redis-backed features when enabled;
  • logs, metrics, alerts, backups, and upgrades;
  • privacy, consent, deletion, and regional requirements.

Required Configuration Families

FamilyPurpose
Write-key resolutionStatic key or Supabase
WarehouseProject, dataset, table names, and service identity
RuntimePort and deployment-specific process configuration
Optional RedisRate limiting, live events, sessions, and rules where enabled
Pipeline stagesRules, schema discovery, and live-event switches
Admin/demoDisabled in production unless explicitly required and separately protected

Use the environment-variable names and release notes shipped with the exact ingestion package version you deploy. Do not copy a production configuration from an example document.

Deployment Checklist

  1. Confirm the licensed package version and its release notes.
  2. Provision a dedicated runtime identity and minimum warehouse permissions.
  3. Create the required warehouse tables from the package schemas or approved setup utility.
  4. Store secrets in the deployment platform’s secret manager.
  5. Deploy a versioned, immutable image to a non-production environment.
  6. Configure HTTPS and the approved tracking domain.
  7. Test /health, SDK serving if enabled, authentication, consent, and /collect.
  8. Verify accepted and rejected events in the final warehouse or destination.
  9. Load-test the expected peak and confirm rate-limit behavior.
  10. Document rollback, key rotation, incident response, and upgrade ownership before production.

Authentication Modes

The API has exactly two auth modes:

  • Static is appropriate only for a deliberately single-tenant deployment.
  • Supabase resolves tenant write keys through Supabase, the sole write-key control plane. (The former Firebase and dual modes were retired.)

Provider service credentials stay on the server. Never expose them in the browser snippet.

Verify Every Release

For each upgrade, test a page, track, identify, group, and alias payload; malformed input; an invalid key; consent denied; a retry; and a duplicate event. Compare results with the previous version before shifting production traffic.

Need help?

Include your workspace, integration or job ID, and the first error message when you contact support.

support@vendodata.com
Last updated on