---
title: "Create a time log"
method: POST
path: "/time-logs"
---

# Create a time log

`POST /time-logs`

## Request

- Base URL: `https://api.reps-log.com/v1`
- URL: `https://api.reps-log.com/v1/time-logs`
- Auth: HTTP bearer

Logs work time against an existing property. Idempotent via the `Idempotency-Key` header.

## Headers

- `Idempotency-Key` string

## Request body

- object
  - `propertyId` string, required
  - `description` string, required
  - `durationMinutes` integer, required
  - `categoryId` string
  - `performedOn` string, date
  - `performedBy` 'self' | 'spouse'

## Response `201`

Created

- object
  - `ok` true, required
  - `data` object, required
    - `id` string
    - `url` string
    - `propertyId` string
    - `categoryId` string
    - `description` string
    - `durationMinutes` number
    - `performedOn` string
    - `performedBy` string
    - `isSTR` boolean
    - `source` string

## Other responses

- `400`: Validation / bad request
- `401`: Unauthenticated
- `403`: Forbidden scope / not Premium
- `404`: Not found
- `429`: Rate limited

---

[API](https://skmtc.dev/reps-log/apis/repslog-api.md) · [All operations](https://skmtc.dev/reps-log/apis/repslog-api/llms.txt) · [OpenAPI document](https://skmtc.dev/reps-log/apis/repslog-api/revisions/304ab3847932?raw)
