Toggle Sidebar

Users

This section describes how to access and edit info on members of your TrackingTime team.

Available Endpoints

Parameters

Type Parameter Description Required
Integer id Read only
String name First name YES
String surname Last name YES
String email A valid email address YES
String password Passwords must be at least 6 characters long YES
String country ISO-3166-1 Country code YES
String avatar_url The URL to a file to use as the user avatar NO
String worked_hours The total number of hours worked by this user Read only
Double hourly_rate The default hourly rate associated to this person NO
Double hourly_cost The default hourly cost associated to this person NO
String icalendar_feed For example: https://dev.trackingtime.co/v2/users/158/icalendar/J69DBKQA54RCAE8QFAK7M35PCG Read Only
Object[] teams All the different account teams this user belongs to Read Only
JSON json Store user preferences in JSON format. Default: Null NO

User Settings

Type Setting Description Default
String language The default language for this user: [EN | ES | DE | KO | PT | IT | FR | RU | HE | AR | NL | JS | ZH] EN
String date_format The default date format for this account [MM/DD/YYYY | DD/MM/YYYY | YYYY-MM-DD | DD.MM.YYYY | YYYY.MM.DD | YYYY/MM/DD] YYYY.MM.DD
String time_format The default time format for this account: [ AMPM | 24HR ], like 4:20pm or 16:20 AMPM
String time_display The default way to display time values: [DECIMAL | HH:MM], like 2.25 or 02:15 HH:MM
String number_format The default way to display numbers: [ 1,234.56 | 1.234,56 ] 1,234.56
String week_starts_on [Sunday | Monday] Sunday
String autostop_timers_at The time of the day when tasks should be automatically stopped, in 24h format HH:mm 18:00

Permissions

User permissions in the current session account. These are included in the user json object.

Type Permission Description Default
Boolean can_edit_time_entries If true, a co-worker can manually add and edit his own time entries. Default: false NO
Boolean can_edit_projects_and_tasks If true, a co-worker can edit project details and tasks assigned to other project members. Default: false NO
Boolean can_view_others If true, a co-worker can view time entries, tasks and projects from other users. Default: false NO

Notification Preferences

These are included in the parameter 'settings' in the user JSON object and can be updated in the update user endpoint.

Type Event Description Default
Boolean email_on_project_updates Specifies whether the user wants to receive project updates or not true
Boolean email_on_task_updates Specifies whether the user wants to receive task updates or not true
Boolean email_on_subtask_updates Specifies whether the user wants to receive subtask updates or not true
Boolean email_on_comment_updates Specifies whether the user wants to receive comment updates or not true
Boolean weekly_email_report Specifies whether the user wants to receive weekly email reports or not true

JSON Object

{
  "account_id": 2,
  "name": "Diego",
  "surname": "Wyllie",
  "email": "wyllie@muensolutions.com",
  "country": "DE",
  "loc_country": "Germany",
  "role": "ADMIN",
  "loc_role": "role.ADMIN",
  "avatar_url": "http://static.trackingtime.mobi/189.jpg",
  "is_archived": false,
  "is_freelance": false,
  "is_owner": true,
  "status": "VERIFIED",
  "token": "vupvj10nmp52u58vk5gtbpeqgf",
  "icalendar_feed": "https://localhost:8080/v2/users/1/icalendar/5JH82SI8TKQG0UEUJLFG0C26OK",
  "worked_hours": 12489.81,
  "loc_worked_hours": "12489:48",
  "billing": {
    "is_billable": null,
    "hourly_rate": null,
    "loc_hourly_rate": null,
    "hourly_cost": null,
    "loc_hourly_cost": null,
    "fixed_rate": null,
    "loc_fixed_rate": null,
    "billable_hours": null,
    "non_billable_hours": null,
    "loc_billable_hours": null,
    "loc_non_billable_hours": null
  },
  "settings": {
    "show_message": true,
    "show_step_by_step": true,
    "language": "EN",
    "currency": "ARS",
    "currency_name": "Argentina Pesos - ARS",
    "date_format": "DD.MM.YYYY",
    "time_format": "24HR",
    "number_format": "1,234.56",
    "csv_separator": ",",
    "time_display": "HH:MM",
    "week_starts_on": "Monday",
    "timezone": "Buenos Aires",
    "id": 50
  },
  "worked_hours_today": 0.0,
  "worked_hours_this_week": 3.0,
  "worked_hours_this_month": 9.19,
  "loc_worked_hours_today": "00:00",
  "loc_worked_hours_this_week": "03:00",
  "loc_worked_hours_this_month": "09:11",
  "teams": [
    {
      "account_id": 2,
      "company": "Muen Solutions",
      "status": "VERIFIED",
      "role": "ADMIN",
      "is_archived": false,
      "is_freelance": false,
      "is_selected": true,
      "is_default": true,
      "id": 51784,
      "created_at": null,
      "updated_at": null
    }
  ],
  "id": 1,
  "created_at": null,
  "updated_at": null,
  "permissions": {
    "can_add_projects":true,
    "can_assign_tasks":true,
    ...
  },
  "email_notification_preferences": {
     "email_on_project_added":true,
     "email_on_project_closed":true,
     "email_on_project_opened":true,
     ...
    }
}

Roles

  • ADMIN: Can edit billing details and manage the account.
  • PROJECT_MANAGER: Can edit projects and timesheets, invite people and view reports.
  • CO_WORKER: Can track time and edit tasks on assigned projects.

Statuses

  • REGISTERED: User signed up.
  • INVITED: User was invited by another user, but didn't verify his account yet.
  • VERIFIED: User did verify his email address.

Endpoints

List Users

List all account users.

Endpoint

https://app.trackingtime.co/api/v4/users

Parameters

Type Parameter Description Required
String filter [ALL | ACTIVE | ARCHIVED | INVITED ]. Default = ACTIVE (Both verified and invited users) NO
String include_billing Set to 'true' to include billing data in the server response. Default = false NO
String include_teams Set to 'true' to include all the teams this user belongs to. Default = false NO

Permissions

  • Only admins and project managers can view account users

Get User

Retrieve the user with the given id.

Endpoint

https://app.trackingtime.co/api/v4/users/:id

Parameters

Type Parameter Description Required
String include_billing Set to 'true' to include billing data in the server response. Default = true NO

Permissions

  • Only admins and project managers can view other users

Update User

Update an existing user

Endpoint

https://app.trackingtime.co/api/v4/users/update/:id

Permissions

  • Only admins can update other users
  • Every user can update his own settings

Update User Permissions

Update the permissions for a given user in the current session account.

Endpoint

https://app.trackingtime.co/api/v3/users/update_permissions/:user_id

Type Attribute Description Required
Boolean can_edit_time_entries . Default: false NO
Boolean can_edit_projects_and_tasks . Default: false NO
Boolean can_view_time_entries_from_others . Default: false NO
Boolean can_view_others . Default: false NO

Permissions

  • Only admins can update user permissions

Archive / Re-activate User

You can archive and re-activate account users any time.

Endpoint

https://app.trackingtime.co/api/v4/users/close/:id to archive the user

https://app.trackingtime.co/api/v4/users/open/:id to re-activate the user

Permissions

  • Only admins can archive and re-activate users

List User Tasks

List all the tasks for a given user, grouped by projects.

Endpoint

https://app.trackingtime.co/api/v4/users/:id/tasks

Parameters

Type Parameter Description Required
String filter [ALL | ACTIVE | ARCHIVED | FOLLOWING | TRACKING | RECENT]. TRACKING returns all currently tracking tasks across all accounts. RECENT returns recently updated tasks within number_of_days. Default = ACTIVE NO
Integer number_of_days When using the filter 'RECENT', you can use this parameter to specify a day limit. Default: 15 days, i.e. all tasks updated within the last 15 days will be returned NO

List Tracking Tasks

Retrieves all tasks which the session user is currently tracking across all his active accounts.

Endpoint

https://app.trackingtime.co/api/v4/users/:id/tasks/tracking

Invite Users

Invite people to join Tracking Time.

Endpoint

https://app.trackingtime.co/api/v4/users/invite

Parameters

Type Parameter Description Required
Array emails An array of JSON objects representing the email addresses, where we should send the invitations.
[{"email":"hil@gmail.com"},{"email":"john@appleseed.com"}]
YES
Integer project_id Enter a project id to assign the invited user to a project. NO

Permissions

  • Only admins and project managers can invite new users

Get User Invite

Get user invite information.

Endpoint

https://app.trackingtime.co/v3/users/get_invite

Parameters

Type Parameter Description Required
String a_token The account token YES
String u_token The user token YES

Permissions

  • All users can access this endpoint

Accept Invite

Verifies an email invitation to join a TrackingTime's account.

Endpoint

https://app.trackingtime.co/v3/users/accept_invite

Parameters

Type Parameter Description Required
String name First name YES
String surname Last name YES
String password The password must be at least 6 characters long YES
String u_token The user token YES
String a_token The account token YES
Boolean signedup Specifies whether this user is already signed up or not YES

Resend Invite

An admin or project manager can resend the invite to an already invited user who might have not received the invite email.

Endpoint

https://app.trackingtime.co/api/v4/users/resend_invite

Parameters

Type Parameter Description Required
String email We'll re-send the invite to this email address YES

Permissions

  • Only admins and project managers can resend invites

Reset Token

Regenerates the current user token to prevent security issues.

Endpoint

https://app.trackingtime.co/api/v4/users/reset_token

Reset iCalendar Token

Regenerates the current user iCalendar token to prevent security issues.

Endpoint

https://app.trackingtime.co/api/v4/users/icalendar/reset_token

Assign Projects

Assigns a given user to an array of projects.

Endpoint

https://app.trackingtime.co/api/v4/users/:user_id/assign_projects

Parameters

Type Parameter Description Required
JSON data A json array containing the IDs of the projects to be assigned to the user. Input Format:
[{"id":1234},{"id":234567}]
YES

Permissions

  • Only admins and project managers can assign users to projects

List User Projects

Lists all the projects a given user has been assigned to.

Endpoint

https://app.trackingtime.co/api/v4/users/:user_id/projects

Remove from Projects

Removes a given user from certain projects.

Endpoint

https://app.trackingtime.co/api/v4/users/:user_id/remove_projects

Parameters

Type Parameter Description Required
JSON data A json array containing the IDs of the projects the user should be removed from. Input Format:
[{"id":1234},{"id":234567}]
YES

Permissions

  • Only admins and project managers can remove access from a user's project