Timesheets

Create timesheet manually

POST create timesheet

Endpoint

POST /api/v1/timesheets/manual

Parameters

Name Description
timesheet[start_at] required Timesheet start at
timesheet[end_at] required Timesheet end at
timesheet[breaks_attributes] Timesheet breaks attributes
timesheet[date] required Timesheet date

Request

Route

POST /api/v1/timesheets/manual

Headers

Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxNjUwIiwic2NwIjoidXNlciIsImF1ZCI6bnVsbCwiaWF0IjoxNzUzMjY2MjIwLCJleHAiOjE3NTU4NTgyMjAsImp0aSI6IjJiOTBjNjY2LTNkMTQtNDNlOC1iZDIxLTZlYzBmYmU1M2IyNCJ9.leyIDC7834vdj0TTsp-nzMZLrCJzM5SvLaqLLx-WhQg
Host: example.org
Cookie: 

Body

{
  "timesheet": {
    "job_id": 601,
    "driver_id": 1650,
    "start_at": "2025-07-23T08:23:40Z",
    "end_at": "2025-07-23T10:23:40Z",
    "breaks_attributes": [
      {
        "duration": 3600
      }
    ]
  }
}

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/"3e42f05037b7a3e716a9270a8a25b9d1"
cache-control: max-age=0, private, must-revalidate
x-request-id: 3905100d-4890-4914-a6b7-f63b31ff7164
x-runtime: 0.022724
content-length: 311

Body

{
  "timesheet": {
    "id": 194,
    "date": "2025-07-23",
    "job_title": "Legacy Technology Engineer",
    "payment_state": "pending",
    "status": "pending",
    "timelog": {
      "id": 235,
      "amend_status": "original",
      "breaks": [
        {
          "id": 13,
          "duration": 3600
        }
      ],
      "duration": {
        "hours": 1
      },
      "end_at": "2025-07-23T10:23:40.000Z",
      "start_at": "2025-07-23T08:23:40.000Z"
    }
  }
}