---
title: "Register worked hours"
method: POST
path: "/public/registrations/v1/register-hours"
tags: ["Registration"]
---

# Register worked hours

`POST /public/registrations/v1/register-hours`

## Request

- Base URL: `https://api.maqqie.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.maqqie.app/public/registrations/v1/register-hours`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `https://maqqie.app/auth/realms/maqqie/protocol/openid-connect/token`
- TypeScript: <https://skmtc.dev/maqqie/apis/maqqie-public-api/docs/public/registrations/v1/register-hours/post.ts> (a function with typed inputs; its response is checked against the schema)

## Request body

- HoursRegistrationRequestV1
  - `placementId` string, uuid, required: The UUID of the placement for which hours are being registered.
  - `projectId` string, uuid: The UUID of the project if the hours are registered on a project.
  - `projectName` string: The name of the project if the hours are registered on a project. When a new project name is received, a project is automatically created. When a known project name is received, the existing project is used.
  - `startTime` string, date-time, required: The timestamp when the work period started. Format: ISO 8601, must be in UTC. example: '2024-09-25T15:30:00Z'
  - `endTime` string, date-time, required: The timestamp when the work period ended. Format: ISO 8601 (e.g., 2024-09-25T15:30:00Z). Expected in UTC.
  - `breakDuration` string, duration: The optional, combined duration of breaks taken during the work period. Format: ISO 8601 (e.g., PT1H30M).
  - `description` string: An optional description or notes about the work period.

## Response `200`

Successfully registered worked hours.

- HoursRegistrationResponseV1
  - `registrationId` string, uuid, required: Unique identifier of a registration. A single registration is associated with 1 or more registration lines, including normal hours, overtime and surcharges

## Other responses

- `400`: The request could not be processed. This could be due to a number of reasons: * The request does not have all required data. * Data in the request is invalid. * Data in the request is inconsistent. * The operation is not allowed given the current state of the data.
- `401`: The request did not contain credentials identifying the caller, or the provided credentials were invalid.
- `403`: The data that the request referred to is inaccessible to the caller.

## Changes

- **2026-09-29** `f9510f3f4b22`: 6 breaking, 5 info
  - added the new required request property `endTime`
  - added the new required request property `placementId`
  - added the new required request property `startTime`
  - the request's body type changed from no type to `object`
  - …7 more
- **2026-09-29** `3352b56bb8fe`: 4 breaking, 7 warning, 10 info
  - the request's body type changed from `object` to no type
  - the response's body type changed from `object` to no type for status `200`
  - the response's body type changed from `string` to no type for status `400`
  - removed the required property `registrationId` from the response with the `200` status
  - …17 more
- **2026-09-16** `ccf9834e5006`: 6 breaking, 5 info
  - added the new required request property `endTime`
  - added the new required request property `placementId`
  - added the new required request property `startTime`
  - the request's body type changed from no type to `object`
  - …7 more
- **2026-09-15** `8085d4c1ab80`: 4 breaking, 7 warning, 10 info
  - the request's body type changed from `object` to no type
  - the response's body type changed from `object` to no type for status `200`
  - the response's body type changed from `string` to no type for status `400`
  - removed the required property `registrationId` from the response with the `200` status
  - …17 more
- …earlier changes not shown

[Operation history](https://skmtc.dev/maqqie/apis/maqqie-public-api/changes/public/registrations/v1/register-hours/post.md)

---

[API](https://skmtc.dev/maqqie/apis/maqqie-public-api.md) - [All operations](https://skmtc.dev/maqqie/apis/maqqie-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/maqqie/apis/maqqie-public-api/revisions/13ed331da2b2?raw)
