---
title: "A/B flows of the registered patients"
method: GET
path: "/api/analytics/registered-patients/flows"
tags: ["analytics"]
---

# A/B flows of the registered patients

`GET /api/analytics/registered-patients/flows`

## Request

- Base URL: `https://api.corabea.it` (the document declares no server; this is the origin it was published from)
- URL: `https://api.corabea.it/api/analytics/registered-patients/flows`
- Auth: HTTP bearer

For the patients registered in the selected period: how many were counted in each experiment variant, and how many of them booked a CALL_GRATUITA and a CALL_CONOSCITIVA after the assignment, as in the experiment results.

## Query parameters

- `from_date` string, date, required: Start day (YYYY-MM-DD), inclusive.
- `to_date` string, date, required: End day (YYYY-MM-DD), inclusive.

## Response `200`

Successful Response

- RegisteredPatientFlowsResponse: Which A/B flow the patients registered in the period landed in, and how each converts.
  - `filters` RegisteredPatientsOverviewFilters, required: Date range applied independently to each registration/booking event.
    - `from_date` string, date, required
    - `to_date` string, date, required
  - `registered_patients` integer, required
  - `not_in_test` integer, required: Registered-period patients with no counted assignment
  - `not_in_test_reasons` RegisteredPatientFlowOutOfTest[], required
    - `reason` 'no_questionnaire' | 'legacy_questionnaire' | 'not_assigned' | 'excluded', required: no_questionnaire: never completed the new questionnaire (the assignment follows it); legacy_questionnaire: answered the old initial questionnaire from an app or web version without the new onboarding; not_assigned: answered the new questionnaire but got no variant; excluded: assigned but left out of the results (QA, second install, existing account)
    - `patients` integer, required
  - `experiments` RegisteredPatientFlowExperiment[], required
    - `key` string, required
    - `name` string, required
    - `status` string, required
    - `variants` RegisteredPatientFlowVariant[], required
      - `key` string, required
      - `name` string, required
      - `is_control` boolean, required
      - `patients` integer, required: Registered-period patients counted in this variant
      - `free_calls_booked` integer, required: Of them, who booked a CALL_GRATUITA after the assignment
      - `intro_calls_booked` integer, required: Of them, who booked a CALL_CONOSCITIVA after the assignment, paid or given free by staff
      - `complimentary_intro_calls` integer, required: Of those, whose CALL_CONOSCITIVA was given free by staff
      - `daily_support_opened` integer: Opened at least one day of the daily support (free path) after the assignment
      - `exercise_done` integer: Completed at least one exercise of the daily support after the assignment

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-16** `841b592f039c`: 2 info
  - added the optional property `experiments/items/variants/items/daily_support_opened` to the response with the `200` status
  - added the optional property `experiments/items/variants/items/exercise_done` to the response with the `200` status
- **2026-10-16** `12d5032b075e`: 1 info
  - added the required property `experiments/items/variants/items/complimentary_intro_calls` to the response with the `200` status
- **2026-10-16** `8d6ec7de589b`: 1 info
  - added the required property `not_in_test_reasons` to the response with the `200` status
- **2026-10-16** `5e22128d8e43`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/corabea/apis/corabea-api/changes/api/analytics/registered-patients/flows/get.md)

---

[API](https://skmtc.dev/corabea/apis/corabea-api.md) · [All operations](https://skmtc.dev/corabea/apis/corabea-api/llms.txt) · [OpenAPI document](https://skmtc.dev/corabea/apis/corabea-api/revisions/4a8dd89893b8?raw)
