Time tracker

The time tracker object represents the tracking of time spent on a job.

The Time tracker object

Properties

  • durationnumber

    The total duration of the time trackers.

  • listarray

    The list of time trackers.

  • runningboolean

    True if a time tracker is running.

TimeTracker object

{
  "duration": 3600000,
  "running": false,
  "list": [
    {
      "id": "6703db825d0425913ad53c64",
      "duration": 3600000,
      "billable": false,
      "from": "2024-10-07T13:00:50.680Z",
      "running": false,
      "to": "2024-10-07T14:00:50.680Z",
      "user": {
        "id": "568bd2f12028fde918f9a80b",
        "name": "Cédric Doe"
      }
    }
  ]
}

POST/v2/jobs/:id/trackers

Create a time tracker entry

This endpoint allows you to add a new time tracker entry.

Parameters

  • durationnumber Required

    The duration of the time tracker (in milliseconds).

  • fromstring Required

    The start date of the time tracker.

Request

POST
/v2/jobs/:id/trackers
curl https://api.lsp.expert/v2/jobs/6548c72a13162e1d7ade0290/trackers \
  -u {key}: \
  -d duration=3600000 \
  -d from="2024-10-07T13:08:00.000Z"

Response

{
  "id": "6703c3db1efed1712305bc4e",
  "timeTrackers": {
    "duration": 3600000,
    "list": [
      {
        "from": "2024-10-07T13:08:00.000Z",
        "running": false,
        "duration": 3600000,
        "billable": false,
        "user": {
          "id": "568bd2f12028fde918f9a80b",
          "name": "Cédric Doe"
        },
        "to": "2024-10-07T14:08:00.000Z",
        "id": "6703dd511efed162a206186d"
      }
    ],
    "running": false
  }
  //...
}


POST/v2/jobs/:id/trackers/start

Start a time tracker

This endpoint allows you to add a new time tracker entry.

Request

POST
/v2/jobs/:id/trackers/start
curl https://api.lsp.expert/v2/jobs/6548c72a13162e1d7ade0290/trackers/start \
  -u {key}: 

Response

{
  "id": "6703c3db1efed1712305bc4e",
  "timeTrackers": {
    "duration": 0,
    "list": [
      {
        "from": "2024-10-07T13:23:35.546Z",
        "running": true,
        "duration": 0,
        "billable": false,
        "user": {
          "id": "568bd2f12028fde918f9a80b",
          "name": "Cédric Doe"
        },
        "id": "6703e0d77bac8c1d835bc671"
      }
    ],
    "running": true
  }
  //...
}


PUT/v2/jobs/:id/trackers/stop

Stop all time trackers

This endpoint allows you to stop all the time trackers for all the users.

Request

PUT
/v2/jobs/:id/trackers/stop
curl -X PUT https://api.lsp.expert/v2/jobs/66f1313f9e477f90664d1ad8/trackers/stop \
  -u {key}: \
  -d duration=4000000

Response

{
  "id": "6703c3db1efed1712305bc4e",
  "timeTrackers": {
    "duration": 4000000,
    "list": [
      {
        "from": "2024-10-07T13:08:00.000Z",
        "running": false,
        "duration": 4000000,
        "billable": false,
        "user": {
          "id": "568bd2f12028fde918f9a80b",
          "name": "Cédric Doe"
        },
        "to": "2024-10-07T14:08:00.000Z",
        "id": "6703dd511efed162a206186d"
      }
    ],
    "running": false
  }
  //...
}

PUT/v2/jobs/:id/trackers/stop/:trackerId

Update a time tracker entry

This endpoint allows you stop a time tracker entry.

Request

PUT
/v2/jobs/:id/trackers/stop/:trackerId
curl -X PUT https://api.lsp.expert/v2/jobs/66f1313f9e477f90664d1ad8/trackers/stop/6703dd511efed162a206186d \
  -u {key}: \
  -d duration=4000000

Response

{
  "id": "6703c3db1efed1712305bc4e",
  "timeTrackers": {
    "duration": 4000000,
    "list": [
      {
        "from": "2024-10-07T13:08:00.000Z",
        "running": false,
        "duration": 4000000,
        "billable": false,
        "user": {
          "id": "568bd2f12028fde918f9a80b",
          "name": "Cédric Doe"
        },
        "to": "2024-10-07T14:08:00.000Z",
        "id": "6703dd511efed162a206186d"
      }
    ],
    "running": false
  }
  //...
}

PUT/v2/jobs/:id/trackers/:trackerId

Update a time tracker entry

This endpoint allows you to perform an update on a time tracker entry. Any parameters not provided will be left unchanged.

Parameters

  • billablebool

    True if the time tracker is billable.

  • durationnumber

    The total duration of the time tracker.

Request

PUT
/v2/jobs/:id/trackers/:trackerId
curl -X PUT https://api.lsp.expert/v2/jobs/66f1313f9e477f90664d1ad8/trackers/6703dd511efed162a206186d \
  -u {key}: \
  -d duration=4000000

Response

{
  "id": "6703c3db1efed1712305bc4e",
  "timeTrackers": {
    "duration": 4000000,
    "list": [
      {
        "from": "2024-10-07T13:08:00.000Z",
        "running": false,
        "duration": 4000000,
        "billable": false,
        "user": {
          "id": "568bd2f12028fde918f9a80b",
          "name": "Cédric Doe"
        },
        "to": "2024-10-07T14:08:00.000Z",
        "id": "6703dd511efed162a206186d"
      }
    ],
    "running": false
  }
  //...
}

DELETE/v2/jobs/:id/trackers/:trackerId

Delete a time tracker entry

This endpoint allows you to delete a time tracker entry.

Request

DELETE
/v2/jobs/:id/trackers/:trackerId
curl -X DELETE https://api.lsp.expert/v2/jobs/:66f1313f9e477f90664d1ad8/trackers/6703dd511efed162a206186d \
  -u {key}:

Response

{
  "id": "6703c3db1efed1712305bc4e",
  "timeTrackers": {
    "duration": 0,
    "list": [],
    "running": false
  }
  //...
}