dotCMS / dotCMS/core

Extend GET /v1/analytics/sessions with bounce/exit metrics and variant dimension

Open
#37,223 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

dotCMS : Experiments Team : Falcon Type : Task
Dominant language
Java
Stars
970
Forks
486
Avg merge
3d 33m
Merged PRs (30d)
170

Description

Description

Extend the GET /v1/analytics/sessions endpoint in CAEM to support bounce and exit session metrics, a variant dimension for grouping, and new optional query parameters for experiment-based filtering.

New metrics:

  • Bounce sessions count
  • Bounce rate
  • Exit sessions count
  • Exit rate

New dimension:

  • Variant — enables grouping session data by experiment variant

New query parameters:

  • experimentId — filter sessions by experiment
  • runningId — filter by running experiment instance
  • referencePage — reference page used to calculate exit rate

The new metrics query against the session-level fact table, separate from the existing engagement aggregation path. Includes a new repository component, service routing logic, and integration tests.

Acceptance Criteria

  • GET /v1/analytics/sessions returns bounce sessions count when the bounce sessions metric is requested
  • GET /v1/analytics/sessions returns bounce rate when the bounce rate metric is requested
  • GET /v1/analytics/sessions returns exit sessions count when the exit sessions metric is requested
  • GET /v1/analytics/sessions returns exit rate when the exit rate metric is requested
  • Session data can be grouped by the variant dimension
  • The endpoint accepts and applies experimentId, runningId, and referencePage as optional filter parameters
  • Existing session metrics and endpoint behavior are not regressed
  • Integration tests pass for bounce rate calculations
  • Integration tests pass for exit rate calculations
  • Postman tests covering the new metrics and parameters are added to the CAEM Postman collection

Additional Context

Implementation repository: dotCMS/dot-ca-event-manager

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in the linked dotCMS/dot-ca-event-manager repository at the GET /v1/analytics/sessions endpoint and trace the existing session metrics aggregation and service routing. Run the integration tests and inspect the CAEM Postman collection; done means the new metrics, variant grouping, filters, regression coverage, and Postman tests all pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, postman
Domain
api, backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.