---
title: "What is running, delayed and coming up, so a client can rebuild its activity list after a refresh or a server restart"
method: GET
path: "/api/Server/activity"
tags: ["Server"]
---

# What is running, delayed and coming up, so a client can rebuild its activity list after a refresh or a server restart

`GET /api/Server/activity`

## Request

- Base URL: `http://localhost:5000`
- URL: `http://localhost:5000/api/Server/activity`
- Auth: API key in header `x-api-key`

## Response `200`

OK

- ActivitySnapshotDto
  - `bootId` string, uuid
  - `startedUtc` string, date-time
  - `running` SignalRMessageDto[], nullable
    - `body` unknown
    - `name` string, nullable, required
    - `title` string, nullable
    - `subTitle` string, nullable
    - `eventType` string, nullable
    - `progress` string, nullable
    - `eventTimeUtc` string, date-time
    - `priority` 0 | 1 | 2 | 3 | 4: Members: - `0` — Silent - `1` — Activity - `2` — Info - `3` — Action - `4` — Error
    - `code` string, nullable
    - `correlationId` string, nullable
  - `scheduled` ScheduledScanDto[], nullable
    - `jobId` string, nullable, required
    - `libraryId` integer, nullable
    - `seriesId` integer, nullable
    - `runAtUtc` string, date-time
  - `scheduledTotal` integer
  - `scheduledFolderScans` ScheduledFolderScanDto[], nullable
    - `libraryId` integer, nullable
    - `fromFolderWatcher` boolean
    - `runAtUtc` string, date-time, nullable
    - `folders` string[], nullable, required
    - `folderCount` integer
  - `upcoming` UpcomingTaskDto[], nullable
    - `taskId` string, nullable, required
    - `cron` string, nullable, required
    - `nextRunUtc` string, date-time
  - `recentJobs` RecentJobDto[], nullable
    - `correlationId` string, nullable, required
    - `startedUtc` string, date-time
    - `endedUtc` string, date-time
    - `steps` SignalRMessageDto[], nullable
      - `body` unknown
      - `name` string, nullable, required
      - `title` string, nullable
      - `subTitle` string, nullable
      - `eventType` string, nullable
      - `progress` string, nullable
      - `eventTimeUtc` string, date-time
      - `priority` 0 | 1 | 2 | 3 | 4: Members: - `0` — Silent - `1` — Activity - `2` — Info - `3` — Action - `4` — Error
      - `code` string, nullable
      - `correlationId` string, nullable
    - `completed` boolean
    - `scanSummaries` LibraryScanEndedEventBodyDto[], nullable
      - `libraryId` integer
      - `libraryName` string, nullable
      - `seriesAdded` integer
      - `seriesRemoved` integer
      - `seriesFailed` integer
      - `chaptersAdded` integer
      - `chaptersUpdated` integer
      - `chaptersRemoved` integer
      - `problemFiles` integer
      - `newProblemFiles` integer
      - `recentProblemFiles` ScanIssueSummaryItemDto[], nullable
        - `filePath` string, nullable
        - `reason` 0 | 1 | 2 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12: Members: - `0` — Unknown - `1` — Parse Failed (ParseFailed) - `2` — No Series Name (NoSeriesName) - `3` — Unreadable Archive (UnreadableArchive) - `5` — Corrupt Epub (CorruptEpub) - `6` — No Pages (NoPages) - `7` — Cover Failed (CoverFailed) - `8` — Word Count Failed (WordCountFailed) - `9` — I/O Error (IoError) - `10` — Metadata Unreadable (MetadataUnreadable) - `11` — Epub Not Strict (EpubNotStrict) - `12` — Ambiguous Series (AmbiguousSeries)
        - `seriesId` integer, nullable
        - `seriesName` string, nullable
      - `endsJob` boolean
  - `recentEntries` SignalRMessageDto[], nullable
    - `body` unknown
    - `name` string, nullable, required
    - `title` string, nullable
    - `subTitle` string, nullable
    - `eventType` string, nullable
    - `progress` string, nullable
    - `eventTimeUtc` string, date-time
    - `priority` 0 | 1 | 2 | 3 | 4: Members: - `0` — Silent - `1` — Activity - `2` — Info - `3` — Action - `4` — Error
    - `code` string, nullable
    - `correlationId` string, nullable

## Changes

- **2026-10-22** `7de671750636`: 3 info
  - added the optional property `recentJobs/items/scanSummaries/items/seriesFailed` to the response with the `200` status (media type: text/plain)
  - added the optional property `recentJobs/items/scanSummaries/items/seriesFailed` to the response with the `200` status (media type: application/json)
  - added the optional property `recentJobs/items/scanSummaries/items/seriesFailed` to the response with the `200` status (media type: text/json)
- **2026-10-14** `8768590e4f16`: 3 warning, 3 info
  - added the new `12.00` enum value to the `recentJobs/items/scanSummaries/items/recentProblemFiles/items/reason` response property for the response status `200` (media type: text/plain)
  - added the new `12.00` enum value to the `recentJobs/items/scanSummaries/items/recentProblemFiles/items/reason` response property for the response status `200` (media type: application/json)
  - added the new `12.00` enum value to the `recentJobs/items/scanSummaries/items/recentProblemFiles/items/reason` response property for the response status `200` (media type: text/json)
  - added the optional property `recentJobs/items/scanSummaries/items/endsJob` to the response with the `200` status (media type: text/plain)
  - …2 more
- …earlier changes not shown

[Operation history](https://skmtc.dev/kareadita/apis/kavita/changes/api/Server/activity/get.md)

---

[API](https://skmtc.dev/kareadita/apis/kavita.md) - [All operations](https://skmtc.dev/kareadita/apis/kavita/llms.txt) - [OpenAPI document](https://skmtc.dev/kareadita/apis/kavita/revisions/d266465eeb67?raw)
