---
title: "Rejects time entry records by placing them on the processing queue, with an optional shared rejection reason. Takes explicit record ids and/or an employment-id + filter selection (resolved and unioned). Maintains the same guards as {recordId}/reject across the whole batch."
method: POST
path: "/api/timeentry/reject"
tags: ["TimeEntry"]
---

# Rejects time entry records by placing them on the processing queue, with an optional shared rejection reason. Takes explicit record ids and/or an employment-id + filter selection (resolved and unioned). Maintains the same guards as {recordId}/reject across the whole batch.

`POST /api/timeentry/reject`

## Request body

- IntectWebAPIControllersTimeEntryControllerTimeEntryBulkActionRequest — Request body for the bulk time-entry action endpoints (approve/unapprove/delete/reject). The effective set of records is the union of {Intect.WebAPI.Controllers.TimeEntryController.TimeEntryBulkActionRequest.RecordIds} and — when {Intect.WebAPI.Controllers.TimeEntryController.TimeEntryBulkActionRequest.EmploymentIds} is non-empty — the records resolved for those employments matching the filters. PeriodId and the date range (FromDate/ToDate) are mutually exclusive. Reason is only used by reject.
  - `RecordIds` integer[]
  - `EmploymentIds` integer[]
  - `TimeEntryStatusIds` integer[]
  - `PeriodId` integer, nullable
  - `CycleId` integer, nullable
  - `FromDate` string, date-time, nullable
  - `ToDate` string, date-time, nullable
  - `Reason` string

## Response `200`

OK

- SystemWebHttpResultsOkResult
  - `Request` object

## Changes

- **2026-09-06** `f7ce32a12afb` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/intect/apis/intect-rest-api/changes/api/timeentry/reject/post.md)

---

[API](https://skmtc.dev/intect/apis/intect-rest-api.md) · [All operations](https://skmtc.dev/intect/apis/intect-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/intect/apis/intect-rest-api/revisions/41ae718b9054?raw)
