Users

Last Updated: May 16, 2017

Following is a list of the properties that belong to a user object, and a description of each.

* id:
Integer. Read-only. Id of this user.
username:
String. Username associated with this user.
* email:
String. Email address associated with this user.
* first_name:
String. First name of user.
* last_name:
String. Last name of user.
* group_id:
Integer. Id of the group this user belongs to.
* manager_of_group_ids:
Array. Displays the group_id's that this user manages.
employee_number:
Integer. Unique number associated with this user. For your reference only.
salaried:
Boolean. true or false.
exempt:
Boolean. true or false.
payroll_id:
String. Unique company wide string associated with this user. Usually used for linking with external systems.
* client_url:
String. Read-only. Client account url identifier associated with this user.
* company_name:
String. Read-only. Client account name identifier associated with the user.
mobile_number:
String. Mobile phone number associated with this user.
pto_balances:
Read-only. List of jobcode identifiers and their respective PTO balances for this user (in seconds). Jobcode information for PTO Jobcodes will be supplied in the supplemental_data.
hire_date:
String. YYYY-MM-DD formatted date upon which this user was hired.
term_date:
String. YYYY-MM-DD formatted date upon which this user's employment was terminated.
* last_active:
String (ISO8601 format). Read-only. Date/time when this user last performed any action within TSheets (i.e. 2004-02-12T15:19:21+00:00).
* active:
Boolean. true or false. If false, this user is considered archived.
require_password_change:
Boolean. true or false. If true, this user will be required to change their password on their next login.
pay_rate:
Float. Read-only. Pay rate. Only visible to admins.
pay_interval:
String. Read-only. Either 'hour' or 'year'. Only visible to admins.
approved_to:
String. YYYY-MM-DD formatted date indicating the latest date this user has had timesheets approved to (if approvals addon is installed).

NOTE: When updating the approved_to date, if the value is greater than the submitted_to date for this user, both properties will be updated. This is the equivalent of a manager/admin submitting time on a user's behalf.
submitted_to:
String. Read-only|Read/Write (Based on Account Configuration, see note below). YYYY-MM-DD formatted date indicating the latest date this user has submitted timesheets up to (if approvals addon is installed).

NOTE: Please be aware that the submitted_to property is read/write if the account setting approvals->settings->employee_approval = 1. See Effective Settings documentation for details.
last_modified:
String (ISO8601 format). Read-only. Date/time when this user was last modified (i.e. 2004-02-12T15:19:21+00:00).
created:
String (ISO8601 format). Read-only. Date/time when this user was created (i.e. 2004-02-12T15:19:21+00:00).
permissions:
List of permission with a true/false value for each that apply to this user.
  • admin : Administrator, can perform any changes on the account.
  • mobile : Able to use mobile devices to record time.
  • see_who_is_working : Able to view the list of who's currently working for the company.
  • reports : Able to run/view all reports for the company.
  • manage_timesheets : Able to create/edit/delete timesheets for anyone in the company.
  • manage_authorization : Able to manage computer authorization for the company.
  • manage_users : Able to create/edit/delete users, groups, and managers for the entire company.
  • manage_my_timesheets : Ability to completely manage their own timesheets.
  • manage_fields : Able to create/edit/delete jobcodes and custom field items for the entire company.
  • approve_timesheets : Able to run approval reports and approve time for all employees.
  • manage_no_schedules : Not able to create/edit/delete events within the schedule for any user.
  • manage_my_schedule : Able to create/edit/delete events within the schedule for only themselves.
  • manage_schedules : Able to create/edit/delete events within the schedule for the groups that the user can manage.
  • manage_company_schedules : Able to create/edit/delete events within the schedule for any user in the company.
  • view_my_schedules : Able to view published events within the schedule for themselves.
  • view_group_schedules : Able to view published events within the schedule for the groups that the user is a member of.
  • view_company_schedules : Able to view published events within the schedule for any user in the company.
customfields:
JSON object. Only present if the Advanced Tracking Add-on is installed. This is a key / value map of customfield ids to the customfield items that are associated with the user.

* These fields are 'public' fields. This means they're visible to anyone within the company who queries the /users endpoint. The additional fields are only exposed to managers or admins.