Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

...

Create

...

To create a worklog send a POST request to this URL: <TIME_TRACKER_BASE_URL>/timetracker/api/<REST_API_VERSION>/public, Update, View or Delete worklogs with the same restrictions and rules as you would within the app.

All requests need to be made to this base URL:

https://jttp-cloud.everit.biz/timetracker/api/latest/public

Create worklog POST /worklog

Header parameters

Header Parameter

Optional

Description

x-everit-jwt

false

jwt JWT token, see: REST API

x-requested-by

false

CSRF protection paramterparameter. Can be empty or any dummy text.

x-timezone

true

The time zone of the user, for eg.: ' Europe/Budapest'. If not specified defaults to UTC.

...

The available parameters of the NewWorklog:

Parameter

Value type

Optional

Description

description

string

true

The description of a worklog.

Example: “description”: “my description“

durationInSeconds

number

true

The duration of a worklog in seconds.
Example: “durationInSeconds”: 3600

isBillable

boolean

true

True if the worklog is billable.

Example: “isBillable”: true

issueId

number

true

The worklog was made on this issue.

Example: “issueId”: 10000

workDate

string

false

The day (ISO-8601 date in 'yyyy-MM-dd' format) when the work was made.

Example: “workDate”: “2023-04-24“

worklogTagIds

number list[]

true

The IDs of the worklog tags assigned to this worklog.

Example: “worklogTagIds”: [1, 5]

workStartTime

string

true

The time (ISO-8601 time in 'HH:mm' format) when the work was started.

Example: “workStartTime”: "11:00"

...

POST URL: TIME_TRACKER_BASE_URL/timetracker/api/22latest/public/worklog

Example post body:

Code Block
{
    "description": "my description",
    "durationInSeconds": 3600,
    "isBillable": true,
    "worklogTagIds": [ 1, 5],
    "issueId": 10182,
    "workDate": "2023-04-24",
    "workStartTime": "12:00"
}

Example response:

200 Successful operation:

Code Block
{
    "description": "my description",
    "durationInSeconds": 3600,
    "isBillable": true,
    "issueId": 10182,
    "workDate": "2023-04-24",
    "worklogId": 155,
    "worklogTagIds": [
        1,
        5
    ],
    "workStartTime": "12:00"
}

400 Invalid parameters:

...

An object that holds all field and non-field related errors:

Code Block
{
  // Errors that are "errorType": "JiraError",
   not tied to any specific field.
  "extraadditionalErrors": {}[
    {
}   ],   "fieldErrorserrorType": ["JiraError" | "PeriodicLimit" | "PeriodicLoggablePeriod" {| "PeriodicMaxHoursPerDay" | "TooManyDataForTimesheet" | "TooManyWorklogsToExport" | "errorTypeNoActiveLicense": | "ExceedManualUpgradeNeeded",
      "pathsextra": [// A field holding additional information related to the [error
    }
  ],
  "string"// Error response data for fields.
   ]"fieldErrors": [
    {
      ]
    }
  ]
}

401 Unauthorized

479 The user does not have one of the necessary Timetracker permissions that can be set in the Global Settings.

Update worklog PATCH public/worklog

To patch a worklog send a PATCH request to this URL: <TIME_TRACKER_BASE_URL>/timetracker/api/<REST_API_VERSION>/public/worklog

Header parameters

...

Header Parameter

...

Optional

"errorType": "Exceed" | "Invalid" | "InvalidByJira" | "InvalidFormat" | "LoggablePeriod" | "MaxHoursPerDay" | "Required" | "TooManyPeriodicIssues",
      // An array of string arrays containing the problematic field names.
      "paths": [
        [
          "string"
        ]
      ]
    }
  ]
}

401 Unauthorized

479 The user does not have one of the necessary Timetracker permissions that can be set in the Global Settings.

Update worklog PATCH /worklog

Header parameters

Header Parameter

Optional

Description

x-everit-jwt

false

jwt JWT token, see: REST API

x-requested-by

false

CSRF protection paramter.

x-timezone

true

The time zone of the user, for eg.: ' Europe/Budapest'. If not specified defaults to UTC.

...

The available parameters of the PatchWorklog:

Parameter

Value type

Optional

Description

worklogId

number

false

The ID of the worklog to patch.

partialWorklog

PartialWorklog

false

The patch to apply on the worklog. Only the fields with defined values will be updated.

The available parameters of the PartialWorklog:

Parameter

Value type

Optional

Description

description

string

true

The description of a worklog.

durationInSeconds

number

true

The duration of a worklog in seconds.

isBillable

boolean

true

True if the worklog is billable.

issueId

number

true

The worklog was made on this issue.

workDate

string

true

The day (ISO-8601 date in 'yyyy-MM-dd' format) when the work was made.

worklogTagIds

number list[]

true

The IDs of the worklog tags assigned to this worklog.

workStartTime

string

true

The time (ISO-8601 time in 'HH:mm' format) when the work was started.

...

PATCH URL: TIME_TRACKER_BASE_URL/timetracker/api/22latest/public/worklog

Example patch body:

Code Block
{
    "partialWorklog": {
        "description": "test description",
        "durationInSeconds": 3600,
        "isBillable": true,
        "issueId": 10329,
        "workDate": "2023-04-19",
        "worklogTagIds": [1, 5],
        "workStartTime": "08:15"
    },
    "worklogId": 181
}

Example response:

200 The patch operation is accepted and processed. The result of the worklog patch can be found in the response body:

  • If there was no error during the patch the error object will be null and the patched worklog is returned:

    • Code Block
      {
          "error": null,
          "worklog": {
              "description": "test description",
              "durationInSeconds": 10800,
              "isBillable": true,
              "issueId": 10329,
              "workDate": "2023-04-19",
              "worklogId": 181,
              "worklogTagIds": [
                  1,
                  5
              ],
              "workStartTime": "08:15"
          }
      }
  • If there was an error during the patch the error object will be filled:

    • Code Block
      {
          "error": {
              "message": null,
              "result": "WORKLOG_NOT_FOUND",
              "worklogId": 181
          },
          "worklog": null
      }

400 Invalid parameters:

...

An object that holds all field and non-field related errors:

Code Block
{
  // Errors that are not tied to any specific field.
  "additionalErrors": [
    {
      "errorType": "JiraError", | "PeriodicLimit" | "PeriodicLoggablePeriod" |  "extraPeriodicMaxHoursPerDay": {}|     }
  ],
  "fieldErrors": [
    {
      "errorType": "Exceed","TooManyDataForTimesheet" | "TooManyWorklogsToExport" | "NoActiveLicense" | "ManualUpgradeNeeded"
      "pathsextra": [// A field holding additional information related to the [error
    }
  ],
  "string"
// Error response data for fields.
  "fieldErrors": [
    {
  ]    "errorType": "Exceed" | ]
    }
  ]
}

401 Unauthorized

479 The user does not have one of the necessary Timetracker permissions that can be set in the Global Settings.

Get worklog GET public/worklog

To get a worklog send a GET request to this URL: <TIME_TRACKER_BASE_URL>/timetracker/api/<REST_API_VERSION>/public/worklog

Header parameters

...

Header Parameter

"Invalid" | "InvalidByJira" | "InvalidFormat" | "LoggablePeriod" | "MaxHoursPerDay" | "Required" | "TooManyPeriodicIssues",
      // An array of string arrays containing the problematic field names.
      "paths": [
        [
          "string"
        ]
      ]
    }
  ]
}

401 Unauthorized

479 The user does not have one of the necessary Timetracker permissions that can be set in the Global Settings.

Get worklog GET /worklog

Header parameters

Header Parameter

Optional

Description

x-everit-jwt

false

jwt JWT token, see: REST API

x-timezone

true

The time zone of the user, for eg.: ' Europe/Budapest'. If not specified defaults to UTC.

...

The available query parameters for the request:

Query Parameter

Value type

Optional

Description

worklogId

number

false

The id of the worklog.

Example: /public/worklog?worklogId=107

...

GET URL: TIME_TRACKER_BASE_URL/timetracker/api/22latest/public/worklog?worklogId=155

Example response:

200 Successful operation:

...

operation:

Code Block
{
    "description": "my description",
    "durationInSeconds": 3600,
    "isBillable": true,
    "issueId": 10182,
    "workDate": "2023-04-24",
    "worklogId": 155,
    "worklogTagIds": [
        1,
        5
    ],
    "workStartTime": "12:00"
}
  • 400

    • Invalid parameters:

      • An object that holds all field and non-field related errors:

        Code Block
        {
          // Errors that are not tied to any specific field.
          "additionalErrors": [
            {
              "errorType": "JiraError" | "PeriodicLimit" | "PeriodicLoggablePeriod" | "PeriodicMaxHoursPerDay" | "TooManyDataForTimesheet" | "TooManyWorklogsToExport" | "NoActiveLicense" | "ManualUpgradeNeeded"
              "

...

      • extra": 

...

      • // A field holding additional information related to the error
            }
          ],
          // Error 

...

      • response data for fields.
          "

...

      • fieldErrors": 

...

      • [
            {
        

...

      •  

...

      •      "

...

      • errorType": "

...

      • Exceed"

...

      •  | "Invalid" | 

...

      • "

...

      • InvalidByJira"

...

      •  

...

      • | "InvalidFormat" | "LoggablePeriod" | "

...

      • MaxHoursPerDay" | "Required" | "TooManyPeriodicIssues",
              // An 

...

      • array of string arrays containing 

...

      • the problematic field names.
         

...

      •  

...

      •  

...

  • 400

Examples

DELETE URL: TIME_TRACKER_BASE_URL/timetracker/api/22/public/worklog?worklogId=123

Example response:

200 The delete operation is accepted and processed. The result of the worklog delete can be found in the response body:

  • If there was no error during the deletion the error object will be null:

    • Code Block
      {
          "error": null
      }
  • If there was an error during the deletion the error object will be filled:

    • Invalid parameters:

      • Code Block
        {   "additionalErrorspaths": [
            {     [
         "errorType": "JiraError",         "extrastring":
        {}     }   ],
          "fieldErrors": [   ]
         {   }
           "errorType": "Exceed",]
        }
    • WorklogError:

      • Code Block
        {
               "pathserror": [{
                [
        "message": null,
                 "stringresult"
         : "WORKLOG_NOT_FOUND",
              ]  "worklogId": 123
           ]  }
          }
          ]
        }
    • WorklogError:

      • Code Block
        {
            "error": {
                "message": null,
                "result": "WORKLOG_NOT_FOUND",
                "worklogId": 123
            }
        }

401 Unauthorized

479 The user does not have one of the necessary Timetracker permissions that can be set in the Global Settings.

Delete worklog DELETE public/worklog

To delete a worklog send a DELETE request to this URL: <TIME_TRACKER_BASE_URL>/timetracker/api/<REST_API_VERSION>/public/worklog

Header parameters

...

Header Parameter

...

Optional

...

Description

...

x-everit-jwt

...

false

...

jwt token

...

x-requested-by

...

false

...

CSRF protection paramter.

...

x-timezone

...

true

...

The time zone of the user, for eg.: 'Europe/Budapest'. If not specified defaults to UTC.

Query Parameters

The available query parameters for the request:

...

Query Parameter

...

Value

...

Optional

...

Description

...

worklogId

...

number

...

false

...

The id of the worklog.

Example: /public/worklog?worklogId=107

    • Code Block{ "error": {
      • }

401 Unauthorized

479 The user does not have one of the necessary Timetracker permissions that can be set in the Global Settings.

Delete worklog DELETE /worklog

Header parameters

Header Parameter

Optional

Description

x-everit-jwt

false

JWT token, see: REST API

x-requested-by

false

CSRF protection paramter.

x-timezone

true

The time zone of the user, for eg.: Europe/Budapest. If not specified defaults to UTC.

Query Parameters

The available query parameters for the request:

Query Parameter

Value type

Optional

Description

worklogId

number

false

The id of the worklog.

Example: /public/worklog?worklogId=107

Examples

DELETE URL: TIME_TRACKER_BASE_URL/timetracker/api/latest/public/worklog?worklogId=123

Example response:

200 The delete operation is accepted and processed. The result of the worklog delete can be found in the response body:

  • If there was no error during the deletion the error object will be null:

    • Code Block
      {
          "error": null
      }
  • If there was an error during the deletion the error object will be filled:

    • Code Block
      {
          "error": {
              "message": null,
              "result": "WORKLOG_NOT_FOUND",
              "worklogId": 123
          }
      }

400 Invalid parameters:

An object that holds all field and non-field related errors:

Code Block
{
  // Errors that are not tied to any specific field.
  "additionalErrors": [
    {
      "errorType": "JiraError" | "PeriodicLimit" | "PeriodicLoggablePeriod" | "PeriodicMaxHoursPerDay" | "TooManyDataForTimesheet" | "TooManyWorklogsToExport" | "NoActiveLicense" | "ManualUpgradeNeeded"
      "

...

extra": 

...

// A field holding additional information related to 

...

the error
    }
  ],

...

 

...

 // Error response data 

...

400 Invalid parameters:

Code Block
{for fields.
  "additionalErrorsfieldErrors": [
    {
      "errorType": "JiraErrorExceed", | "Invalid" | "InvalidByJira"  | "extraInvalidFormat": {}| "LoggablePeriod" | "MaxHoursPerDay" | }"Required" |  ]"TooManyPeriodicIssues",
  "fieldErrors": [   // An {array of string arrays containing the problematic "errorType": "Exceed",field names.
      "paths": [
        [
          "string"
        ]
      ]
    }
  ]
}

401 Unauthorized

479 The user does not have one of the necessary Timetracker permissions that can be set in the Global Settings.