---
title: "Get today's customer-care calls"
method: GET
path: "/api/appointments/customer-care/today-calls"
tags: ["appointments"]
---

# Get today's customer-care calls

`GET /api/appointments/customer-care/today-calls`

Return a paginated customer-care call queue with complete filter facets and per-type counts. When patient_id is set, return that patient's call history regardless of day.

## Query parameters

- `operator_id` string, uuid, nullable — Admin-only filter by customer-care operator ID
- `patient_id` string, uuid, nullable — Filter to all calls for a single patient UUID, ignoring the day filter.
- `day` string, date, nullable — Day to inspect (YYYY-MM-DD). Defaults to today; ignored when patient_id is set.
- `call_filter` 'ALL' | 'AGREED' | 'SUPPORT' | 'EXTRA' | 'FREE_RESCHEDULE' — Mutually exclusive filters exposed by the customer-care call queue.
- `page` integer — One-based page number.
- `page_size` integer — Items per page.

## Response `200`

Successful Response

- CustomerCareCallsTodayResponse
  - `items` CustomerCareCallListItem[], required
    - `id` string, required
    - `source` string, required — appointment or operator_call_task
    - `type` string, required — CALL_CONOSCITIVA, CALL_GRATUITA, SUPPORTO, EXTRA, FREE_RESCHEDULE
    - `status` string, required
    - `patient_id` string, required
    - `operator_id` string, nullable
    - `appointment_id` string, nullable
    - `scheduled_at` string, date-time, nullable
    - `scheduled_for` string, date, nullable
    - `agreed_for` string, date-time, nullable
    - `agreement_status` string, nullable
    - `days_without_agreed_date` integer, nullable
    - `meeting_link` string, nullable
    - `attempts_count` integer
    - `max_attempts` integer, nullable
    - `reschedule_stage` integer, nullable — Current stage in the FREE_RESCHEDULE interval sequence (0-based)
    - `reason` string, nullable — PRIMA_CALL/SECONDA_CALL for SUPPORTO, or dropout status/path reason for EXTRA
    - `patient` CustomerCarePatientSummary
      - `id` string, required
      - `user` CustomerCareUserSummary, required
        - `id` string, required
        - `first_name` string, nullable
        - `last_name` string, nullable
        - `email` string, nullable
        - `phone` string, nullable
      - `psi_status` string, nullable — Latest psychologist path status from patient_history.
      - `nutri_status` string, nullable — Latest nutritionist path status from patient_history.
      - `status_by_path` CustomerCarePatientStatusByPath
        - `psi` string, nullable
        - `nutri` string, nullable
    - `operator` CustomerCareOperatorSummary
      - `id` string, required
      - `user` CustomerCareUserSummary, required
        - `id` string, required
        - `first_name` string, nullable
        - `last_name` string, nullable
        - `email` string, nullable
        - `phone` string, nullable
    - `metadata` object, nullable
    - `logs` OperatorCallTaskLogResponse[]
      - `id` string, required
      - `attempt_number` integer, required
      - `outcome` string, required
      - `note` string, nullable
      - `created_at` string, date-time, required
  - `total` integer, required
  - `unfiltered_total` integer — Total before call_filter is applied; useful for the ALL preview.
  - `day` string, date, nullable
  - `page` integer
  - `page_size` integer
  - `total_pages` integer
  - `call_filter` 'ALL' | 'AGREED' | 'SUPPORT' | 'EXTRA' | 'FREE_RESCHEDULE' — Mutually exclusive filters exposed by the customer-care call queue.
  - `filters` CustomerCareCallFilterSummary[] — Complete counts for each mutually exclusive frontend tab.
    - `total` integer
    - `completed` integer
    - `pending` integer
    - `to_do` integer
    - `to_reschedule` integer
    - `no_answer` integer
    - `cancelled` integer
    - `key` 'ALL' | 'AGREED' | 'SUPPORT' | 'EXTRA' | 'FREE_RESCHEDULE', required — Mutually exclusive filters exposed by the customer-care call queue.
  - `counts_by_type` object — Complete counts by raw call type, before call_filter is applied.
  - `completed` integer
  - `pending` integer
  - `to_do` integer
  - `to_reschedule` integer
  - `no_answer` integer
  - `cancelled` integer

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/corabea/apis/corabea-api.md) · [All operations](https://skmtc.dev/corabea/apis/corabea-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/corabea/corabea-api/revisions/13c1bce1bdc4/schema)
