API

Die TimeTrack Rest API können Sie nutzen, um TimeTrack mit anderen Systemen zu verbinden. 

Projektzeiten

Projektzeiten sind Zeiteinträge für Projekte, der Aufwand den Sie auf die Projekte buchen.

Mit diesem Endpoint können Sie:

  • Alle Zeiteinträge auflisten ohne Filter
  • Alle Zeiteinträge auflisten mit Filter
  • Bestimmten Zeiteintrag abrufen
  • Neuen Zeiteintrag anlegen
  • Bestehenden Zeiteintrag updaten
  • Zeiteintrag entfernen

Projekt-Zeiteintrag Objekt hat folgende Parameter:

Feldname Typ Beschreibung
ID Integer ID
user Text Benutzername
clientName Text Kundenname
projectName Text Projektname
task Text Tätigkeit
hourRate Number Stundensatz
latitude Text GPS Koordinaten für Start – Latitude
longitude Text GPS Koordinaten für Start – Longitude
latitude1 Text GPS Koordinaten für Ende – Latitude
longitude1 Text GPS Koordinaten für Ende – Longitude
billable Boolean Verrechenbar oder nicht
flatRate Boolean Pauschaleintrag
details Text Notizen
tags Text Hashtags
from Text Start Zeitstempel – Format: YYYY-MM-DDTHH:MM:SS.fffZ, Beispiel: 2020-10-20T09:00:00.000Z
to Text End Zeitstempel – Format: YYYY-MM-DDTHH:MM:SS.fffZ, Beispiel: 2020-10-20T09:00:00.000Z
workedMinutes Integer Dauer der Arbeit in Minuten, abzüglich Pause
breakMinutes Integer Dauer der Pause

Zeiteinträge auflisten ohne Filter

curl „https://testkonto.timetrackenterprise.com/api/v2/ext/project_time_entries/“
-H ‚Content-Type: application/json‘
-H ‚X-TimeTrack-Api-Secret: <API_SECRET_TOKEN>
-H ‚X-TimeTrack-Api-Key: <API_KEY>
-d $'{}‘

Zeiteinträge auflisten mit Filter

Folgende Filter können verwendet werden:

Feldname Typ Beschreibung
clientName Text Kundenname
projectName Text Projektname
user Text Benutzername
from Text Von, Format: YYYY-MM-DDTHH:MM:SS.fffZ, Beispiel: 2020-10-20T09:00:00.000Z
to Text Bis, Format: YYYY-MM-DDTHH:MM:SS.fffZ, Beispiel: 2020-10-20T09:00:00.000Z

In diesem Beispiel fragen wir nach den Zeiteinträgen des Benutzers „hansm“ zwischen 01.10.2020 und 23.10.2020.

curl „https://testkonto.timetrackenterprise.com/api/v2/ext/project_time_entries?username=hansm&from=2020-10-01T00:00:00.000Z&to=2020-10-23T23:59:59.999Z““
-H ‚Content-Type: application/json‘
-H ‚X-TimeTrack-Api-Secret: <API_SECRET_TOKEN>
-H ‚X-TimeTrack-Api-Key: <API_KEY>
-d $'{}‘

Bestimmten Zeiteintrag abrufen

Pflichtparameter: ID des Zeiteintrags. Im folgenden Beispiel ist die ID 1.

curl „https://testkonto.timetrackenterprise.com/api/v2/ext/project_time_entries/1“
-H ‚Content-Type: application/json‘
-H ‚X-TimeTrack-Api-Secret: <API_SECRET_TOKEN>
-H ‚X-TimeTrack-Api-Key: <API_KEY>
-d $'{}‘

Neuen Zeiteintrag anlegen

Beim Anlegen des Zeiteintrags können Sie alle Parameter des Zeiteintrag-Objekts verwenden.

Pflichtparameter: clientName, projectName, user, from, to

curl -X „POST“ „https://testkonto.timetrackenterprise.com/api/v2/ext/project_time_entries“
-H ‚Content-Type: application/json‘
-H ‚X-TimeTrack-Api-Secret: <API_SECRET_TOKEN>
-H ‚X-TimeTrack-Api-Key: <API_KEY>
-d $'{
„username“: „hansm“,
„from“: „2020-10-20T10:00:00.000Z“,
„to“: „2020-10-20T14:00:00.000Z“
„clientName“: „Kunde 006“,
„projectName“: „Projekt 006_1“
„task“: „test1“,
„hourRate“: 50,
„breakMinutes“: 15,
„details“: „Das ist ein Test“
}‘

Bestehenden Zeiteintrag updaten

Beim Updaten des Zeiteintrags können Sie alle Parameter des Zeiteintrags-Objekts verwenden, mit Ausnahme folgender Parameter: clientName, projectName, user.

curl -X „PUT“ „https://testkonto.timetrackenterprise.com/api/v2/ext/project_time_entries/1“
-H ‚Content-Type: application/json‘
-H ‚X-TimeTrack-Api-Secret: <API_SECRET_TOKEN>
-H ‚X-TimeTrack-Api-Key: <API_KEY>
-d $'{
„hourRate“: 35.5,
„notes“: „Test Eintrag für das API“
}‘

Zeiteintrag entfernen

curl -X „DELETE“ „https://testkonto.timetrackenterprise.com/api/v2/ext/project_time_entries/1“
-H ‚Content-Type: application/json‘
-H ‚X-TimeTrack-Api-Secret: <API_SECRET_TOKEN>
-H ‚X-TimeTrack-Api-Key: <API_KEY>
-d $'{}‘