---
title: "List program daily task reports"
method: GET
path: "/v2/loyalties/programs/{programId}/reports/daily-tasks/daily"
tags: ["Programs"]
---

# List program daily task reports

`GET /v2/loyalties/programs/{programId}/reports/daily-tasks/daily`

## Request

- Base URL: `https://api.voucherify.io`
- URL: `https://api.voucherify.io/v2/loyalties/programs/{programId}/reports/daily-tasks/daily`
- Auth: one of:
  - API key in header `X-App-Id` and API key in header `X-App-Token`
  - HTTP bearer
- TypeScript: <https://skmtc.dev/voucherifyio/apis/voucherify-loyalty-v2-api/docs/v2/loyalties/programs/:programId/reports/daily-tasks/daily/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns counts of nightly tasks the job has already finished for the program, over the given date range and resolution. Each row covers one period with finished tasks. Periods with no finished tasks are omitted.

Does not list what is scheduled. Pending points, activation dates, and expiration dates that are still waiting do not appear. A count is stored on the date the job finishes the task. Tasks finished before this report existed are not included.

The date range is limited per resolution:
- 90 days for `day`,
- 12 weeks for `week`,
- 12 months for `month`,
- 4 quarters for `quarter`,
- `start_date` must be before `end_date`,
- `start_date` and `end_date` are inclusive.

Returns `400` when query validation fails. Returns `404` when the program does not exist.

A successful call records no activity.

## Query parameters

- `start_date` string, date, required
- `end_date` string, date, required
- `resolution` 'day' | 'week' | 'month' | 'quarter', required

## Response `200`

Program daily tasks report.

- LoyaltiesProgramsReportsDailyTasksDailyListResponseBody: Response body schema for **GET** `/v2/loyalties/programs/{programId}/reports/daily-tasks/daily`.
  - `data` ProgramDailyTasksDailyReport[], required: List of report entries, one per aggregation period in which the nightly job finished at least one task, ordered by `date` ascending. Empty when no task has finished in the range. Scheduled dates are not included.
    - `date` string, date, required: Identifies the start of the truncated aggregation period (`YYYY-MM-DD`). For `week` this is Monday. For `month` this is the first day. For `quarter` this is the quarter start.
    - `points_expirations` number, required: Counts point expirations the nightly job has already finished in the period. A future expiration date is not included.
    - `points_activations` number, required: Counts pending-point activations the nightly job has already finished in the period. Pending points that are still waiting are not included.
    - `points_cancellations` number, required: Counts `EVENT_BASED` pending-point cancellations the nightly task completed in the period.
    - `tier_recalculations` number, required: Counts cards the nightly job recalculated that produced at least one tier transaction in the period.
    - `object` 'program_daily_tasks_daily_report', required: Object type marker. Always `program_daily_tasks_daily_report`.
  - `object` 'report', required: Object type marker. Always `report`.

## Other responses

- `400`: Query parameters failed validation, or `start_date` is not before `end_date`.
- `404`: Program not found.
- `500`: Internal server error.

## Changes

- **2026-11-10** (v2) `6d6cbb34a712`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/voucherifyio/apis/voucherify-loyalty-v2-api/changes/v2/loyalties/programs/:programId/reports/daily-tasks/daily/get.md)

---

[API](https://skmtc.dev/voucherifyio/apis/voucherify-loyalty-v2-api.md) - [All operations](https://skmtc.dev/voucherifyio/apis/voucherify-loyalty-v2-api/llms.txt) - [OpenAPI document](https://skmtc.dev/voucherifyio/apis/voucherify-loyalty-v2-api/revisions/78825f73502f?raw)
