Provenance records every interaction across your distributed systems — then triggers notifications, fires alerts, and gives your AI agents live context to act on it. One API. Zero guesswork.
# Install the CLI $ npm install -g provenance-cli # Configure your endpoint $ provenance config set apiUrl https://api.provenance.dev $ provenance config set apiKey $API_KEY # Track a deployment $ provenance track -r my-svc -t SERVICE -a DEPLOY ✔ Interaction recorded (14ms) # Query recent activity $ provenance search --type SERVICE --last 24h ┌──────────┬────────┬─────────┬────────────────────┐ │ Resource │ Action │ Type │ Created │ ├──────────┼────────┼─────────┼────────────────────┤ │ my-svc │ DEPLOY │ SERVICE │ 2 minutes ago │ └──────────┴────────┴─────────┴────────────────────┘
The Problem
When something goes wrong — or right — you're piecing it together across five tools. Provenance is the single system that records, understands, and acts on everything.
How it works
Every interface — CLI, SDK, API, MCP — feeds the same pipeline. Record interactions, analyze patterns, act in real time.
Send interactions via REST API, CLI, SDK, or MCP. Every action, resource, and origin is captured with full context.
Build dashboards with custom widgets. Query by time, resource type, action, or any custom field.
Subscribe to events and get notified via email, webhook, Slack, or custom adapters. Set threshold-based alerts.
Single Source of Truth
A single customer action can trigger a cascade across your entire backend — API gateway, order service, payment, inventory, notifications, analytics. Each service logs its interaction to Provenance as it processes. The result: a unified, correlated timeline of everything that happened to fulfill that request.
A single Unit of Work ID ties every service invocation back to the original customer request — across queues, APIs, and async jobs.
Every service logs its own interaction independently. Even if one fails, the rest of the trail is already recorded.
Search by resource, transaction, service, time range, or any field from the payload. Reconstruct any request in seconds.
Capabilities
One platform for provenance tracking, analytics, event-driven notifications, and alerting — accessible through every interface you need.
See detailed breakdown↓|Why Provenance?→Record every action on every resource with full context, metadata, and unit-of-work correlation across distributed systems.
Visualize interaction flows and dependencies. Follow distributed transactions across services. See the full chronological history of any resource.
Build custom dashboards with bar, line, pie, stat, and table widgets. Drag-and-drop grid layout with real-time data and time range controls.
Subscribe to resource + action combinations. Deliver via email, webhook, Slack, Lambda, or build your own adapter with the plugin system. Zero-latency DB triggers, not polling.
See how it works ↓Set thresholds on interaction patterns. Get alerted before problems become incidents. Configurable conditions, recipients, and retry logic.
Turn incoming webhooks into provenance interactions automatically. Validate signatures, match payloads to mappings, extract fields, and record — no integration code required.
See how it works ↓Store API keys, tokens, and credentials encrypted in the database or fetch from AWS SM, Azure KV, GCP SM, or HashiCorp Vault. Reference in templates with {{secrets.path}} syntax.
See how it works ↓Deep Dive
Every feature is designed for production use — from the data model to the notification queue to the analytics engine.
Every action performed on every resource is recorded with full context. Define your own resource types, actions, and origins to model your domain exactly. Attach arbitrary JSON metadata to any interaction and correlate related operations across services with Unit of Work IDs.
Build custom dashboards with a step-by-step widget builder. Choose your resource type, action, time range, metrics, filters, and grouping — then pick a visualization. Drag widgets around the grid, resize them, and apply global time range overrides. Color overrides let you map specific values to specific colors across all charts.
The subscription engine is the backbone of Provenance's event-driven architecture. When an interaction is recorded, a database trigger instantly finds all matching subscriptions and enqueues notifications — no polling, no delays. Subscribers define who gets notified, subscriptions define what triggers it, and adapters define how it's delivered.
Subscribers are the destinations for your notifications — the people, services, and systems that need to know when something happens. Each subscriber is paired with an adapter that controls how the notification is delivered. Use the built-in adapters or build your own in minutes.
See the complete history of any resource as a chronological timeline. Follow distributed transactions across services by tracing Unit of Work IDs. Visualize interaction flows and dependencies to understand exactly what happened, when, and where.
Store sensitive credentials encrypted in the database or fetch them at runtime from your existing secrets manager. Reference secrets in notification templates, adapter settings, and webhook configs using {{secrets.path}} syntax — the actual value is never stored in configs, logs, or audit trails.
Alerts aren't just for failures. Define threshold-based alerts on any interaction pattern — catch error rate spikes, but also celebrate when your team hits a KPI target, track campaign milestones, monitor SLA compliance, or get notified when deployment frequency drops. Pair alerts with the subscription engine to email your team when a target is reached.
Ecosystem
Use the REST API directly, build dashboards in the UI, automate with the CLI, chat with your data via MCP, integrate natively with SDKs — and receive events from any external service via inbound webhooks.
The foundation of Provenance. A complete REST API with Swagger documentation, rate limiting, and webhook-based notifications. Every feature is API-accessible.
# Record an interaction$ curl -X POST https://api.provenance.dev/api/interactions \-H "x-api-key: $API_KEY" \-H "Content-Type: application/json" \-d '{"resourceId":"order-789","resourceTypeId":"...","actionId":"..."}'# Query analytics$ curl -X POST https://api.provenance.dev/api/analytics/query \-H "x-api-key: $API_KEY" \-d '{"metrics":["count"],"dimensions":["action"]}'
A full-featured Angular application for visual management. Build analytics dashboards, configure subscriptions, manage alerts, and explore traces — all without writing code.
A command-line tool built for CI/CD pipelines, cron jobs, and shell scripts. Track deployments, search interactions, view traces, and manage alerts — all from the terminal.
Give any AI assistant live access to your operational data. Customer support bots resolve tickets with full interaction history. Fraud detection models query real-time patterns. DevOps copilots answer "what changed in production?" from actual data — not logs.
Turn any incoming webhook into a provenance interaction — no integration code required. Register a source, define how payloads map to interactions, and every matching event is validated, transformed, and recorded automatically. Works with any service that sends webhooks: payment processors, source control, CI/CD, CRMs, monitoring tools, or your own internal services.
Native client libraries with queue-based ingestion and a full REST API client. Type-safe interaction recording, analytics queries, trace lookups, and auto-pagination — without raw HTTP calls. Available for Node.js, TypeScript, Python, and Java, with C# coming soon.
import { create } from "@provenance/sdk-ts";const provenance = await create({apiKey: process.env.PROVENANCE_API_KEY,origin: "my-service",});// Queue-based ingestionawait provenance.log({resourceType: "order", resourceId: "order-789",action: "create", uowId: crypto.randomUUID(),interaction: { total: 149.99, currency: "USD" },});// Full REST API clientconst api = await provenance.api();const trace = await api.traces.get("order-789");
Use Cases
Provenance gives every team a complete picture of what happened, why, and what to do next.
Ship with confidence
Full deployment lineage from commit to production. Know exactly what changed, when, and who triggered it. Alert on-call when deploys fail, post to #releases automatically. Track DORA metrics without a separate tool.
Resolve faster
Your AI agent knew the full order history before picking up the phone. Trace every customer touchpoint across systems. Auto-escalate SLA breaches, route tickets to the right team, and give agents full context — not a ticket queue.
Detect and respond
Monitor SLAs, catch anomalies, and get alerted before customers notice. When your payment processor goes silent for 30 minutes, you know immediately. When you hit 100K orders, your team celebrates in real time.
Pricing
No credit card required. Upgrade or downgrade anytime.
Full Pro features, free while in beta.
For growing teams and products.
For scaling organizations.
Join the beta — full Pro features, free while in beta. Invite code required.