Skip to main content

Console overview

The current app-esper.io UI is organized around one active tenant at a time. When the active tenant changes, the app refreshes the tenant-scoped resources for API keys, rules, encoding configs, entities, sessions, decisions, audit entries, events, jobs, and memberships.

How to read the console

The easiest way to understand the product is to group pages by job:

  • Set up the workspace: Tenants, API Keys
  • Define how decisions work: Encoding, Rules
  • Inspect what happened: Events, Decisions, Entities, Sessions
  • Test and explain behavior: Jobs, Audit

Overview

The overview page summarizes:

  • tenant count
  • active rule count
  • decision count
  • event count
  • latest event
  • latest decision
  • latest replay job

Use this page when you want a quick answer to:

  • Is this tenant active?
  • Are rules enabled?
  • Is traffic arriving?
  • Has anything been replayed recently?

Tenants

The tenants page is the workspace control plane. It supports:

  • create tenant
  • update tenant
  • switch active tenant
  • upsert membership for a user ID and role
  • remove membership

Supported membership roles are:

  • Owner
  • Admin
  • Analyst
  • Viewer

Use this page when you need to answer:

  • Which workspace am I operating in?
  • Who has access to this tenant?
  • Do I need a separate tenant for another customer or environment?

API Keys

The API key page issues and updates ingest credentials tied to a source_id. This is where operators connect upstream callers to a tenant.

Use this page when you are onboarding a new sending system.

Rules

The rules page is the current policy authoring surface. Rules are displayed as stored definitions and edited in-place through a form that submits the exact JSON expression shape expected by the backend.

Use this page when you want to change the decision outcome for a known pattern.

Encoding

The encoding page manages versioned extraction plans. It is the most detailed form in the current app and maps directly to the backend-owned encoding DSL.

Use this page when the raw incoming request does not yet expose the fields your rules need.

Entities and Sessions

These pages show summaries first and then fetch a live state snapshot on demand for a selected entity or session.

Use them to answer:

  • Has Esper seen this user before?
  • Is this session unusually active?
  • How much state is being accumulated for this traffic?

Decisions and Events

These pages are read-only operational history surfaces.

  • Events tell you what arrived.
  • Decisions tell you how Esper responded.

Jobs

The jobs page lists replay jobs and lets operators enqueue a new job using:

  • job_type
  • encoding_version
  • rule_version
  • time_range_start
  • time_range_end

Use replay when you want to test a rules or encoding change against past data.

Audit

The audit page lists tenant-scoped audit entries with actor, action, and timestamp.

Use it when you need to answer "who changed this?" or "when was this updated?"