Timelogs

Create a timelog (amend) for a timesheet

POST create timelog (amend)

Endpoint

POST /api/v1/timesheets/:timesheet_id/timelogs

Parameters

Name Description
timelog[start_at] required Timelog start at
timelog[end_at] required Timelog end at
timelog[breaks_attributes] Timelog breaks attributes
timelog[final_flag] Timelog final flag
timelog[comment] Timelog comment

Request

Route

POST /api/v1/timesheets/176/timelogs

Headers

Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxNTkyIiwic2NwIjoidXNlciIsImF1ZCI6bnVsbCwiaWF0IjoxNzUzMjY2MjE4LCJleHAiOjE3NTU4NTgyMTgsImp0aSI6IjFlZjY1NjYwLWE5MjAtNDg0Zi04OTUyLTkyYTU3NTEzNjIxYSJ9.zX5Wq17rxEJ0xoDXCPwgCE_6oSttcENqiM_QjHRW_80
Host: example.org
Cookie: 

Body

{
  "timelog": {
    "start_at": "12:00",
    "end_at": "14:00",
    "breaks_attributes": [
      {
        "duration": 60
      }
    ],
    "final_flag": true
  }
}

Response

Simulated Response

Status

200

Headers

x-frame-options: SAMEORIGIN
x-xss-protection: 0
x-content-type-options: nosniff
x-permitted-cross-domain-policies: none
referrer-policy: strict-origin-when-cross-origin
content-type: application/json; charset=utf-8
vary: Accept, Origin
etag: W/"c2270d9f0077b45a0277a77234cb3a0e"
cache-control: max-age=0, private, must-revalidate
x-request-id: b74e6a9f-3ae7-4002-80e8-3a84354ab2b2
x-runtime: 0.049308
content-length: 292

Body

{
  "timelog": {
    "id": 198,
    "amend_status": "final",
    "breaks": [
      {
        "id": 8,
        "duration": 60
      }
    ],
    "duration": {
      "hours": 1,
      "minutes": 59
    },
    "end_at": "2025-07-23T14:00:00.000Z",
    "start_at": "2025-07-23T12:00:00.000Z",
    "timeloged_by": {
      "id": 1592,
      "admin": false,
      "contact_phone_number": null,
      "image": null,
      "title": "Teddy Metz"
    }
  }
}