---
description: Time Doctor ETL connector for data replication
---

# Time Doctor

## Snapshot

<table><thead><tr><th width="425">Features</th><th>Details</th></tr></thead><tbody><tr><td>Release Status</td><td>Beta version released</td></tr><tr><td>Source API Version</td><td>1.0</td></tr><tr><td>Table Selection</td><td>Yes</td></tr><tr><td>Column Selection</td><td>Yes</td></tr><tr><td>Edit Integration</td><td>Yes</td></tr><tr><td>Replication Type Selection</td><td>No</td></tr><tr><td>Authentication Parameters</td><td>Time Doctor User email<br>Time Doctor Password</td></tr><tr><td>Replication Type</td><td>Full Replication</td></tr><tr><td>Replication Key</td><td>NA</td></tr><tr><td>Suggested Replication Frequency</td><td>1 hour</td></tr></tbody></table>

## Tables/APIs supported

| Breaks        | Categories |
| ------------- | ---------- |
| Companies     | Files      |
| Notifications | Payroll    |
| Projects      | Tags       |
| Tasks         | Users      |

## Integrate Time Doctor with Daton

1. Sign in to Daton&#x20;
2. Select Time Doctor V2 from the list of Integrations&#x20;
3. Provide Integration Name, Replication Frequency, and History. Integration name would be used in creating tables for the integration and cannot be changed later&#x20;
4. Provide your Time Doctor user email and password
5. Post successful authentication, you will be prompted to choose from the list of available tables
6. Then select all required fields for each table
7. Submit the integration

## Workflow

1. Integrations would be in Pending state initially and will be moved to Active state as soon as the first job loads data successfully on to the configured warehouse
2. Users would be able to edit/pause/re-activate/delete integration anytime
3. Users can view job status and process logs from the integration details page by clicking on the integration name from the active list

## Time Doctor Data

### Breaks

Purpose: This API is used to fetch all the breaks

Source API Documentation: [https://api2.timedoctor.com/#/Breaks/getBreaks](https://api2.timedoctor.com/#/Breaks/getBreaks)

Replication: Full Replication

Replication Key: NA

**Fields**

| Name   | Data Type |
| ------ | --------- |
| \_id   | STRING    |
| name   | STRING    |
| type   | STRING    |
| active | BOOLEAN   |
| public | BOOLEAN   |
| access | STRING    |
| scope  | STRING    |

### Categories

Purpose: This API is used to fetch all the used categories in the company

Source API Documentation: [https://api2.timedoctor.com/#/Categories/categories](https://api2.timedoctor.com/#/Categories/categories)

Replication: Full Replication

Replication Key: NA

**Fields**

| Name   | Data Type |
| ------ | --------- |
| scope  | STRING    |
| id     | STRING    |
| entity | STRING    |
| name   | STRING    |
| score  | NUMERIC   |

### Companies

Purpose: This API is used to fetch all the companies in the account

Source API Documentation: [https://api2.timedoctor.com/#/Companies/companies](https://api2.timedoctor.com/#/Companies/companies)

Replication: Full Replication

Replication Key: NA

**Fields**

| Name           | Data Type |
| -------------- | --------- |
| role           | STRING    |
| hiredAt        | STRING    |
| lastSeen       | RECORD    |
| tagIds         | STRING    |
| onlyProjectIds | STRING    |
| name           | STRING    |
| company        | RECORD    |
| custom         | RECORD    |
| isSilent       | BOOLEAN   |
| isInteractive  | BOOLEAN   |
| allowManual    | BOOLEAN   |

### Files

Purpose: This API is used to fetch all the files uploaded in the company

Source API Documentation: [https://api2.timedoctor.com/#/Files/getFiles](https://api2.timedoctor.com/#/Files/getFiles)

Replication: Full Replication

Replication Key: NA

**Fields**

| Name     | Data Type |
| -------- | --------- |
| userId   | STRING    |
| date     | TIMESTAMP |
| deviceId | STRING    |
| numbers  | RECORD    |

### Notifications

Purpose: This API is used to fetch all the notifications

Source API Documentation: [https://api2.timedoctor.com/#/Notifications/getUserNotifications](https://api2.timedoctor.com/#/Notifications/getUserNotifications)

Replication: Full Replication

Replication Key: NA

**Fields**

| Name           | Data Type |
| -------------- | --------- |
| \_id           | STRING    |
| name           | STRING    |
| notifyType     | STRING    |
| condType       | STRING    |
| condValue      | STRING    |
| scope          | STRING    |
| dataIds        | STRING    |
| daysApplicable | STRING    |

### Payroll

Purpose: This API is used to fetch payroll of all employees

Source API Documentation: [https://api2.timedoctor.com/#/Payroll/payrolls](https://api2.timedoctor.com/#/Payroll/payrolls)

Replication: Full Replication

Replication Key: NA

**Fields**

| Name             | Data Type |
| ---------------- | --------- |
| id               | STRING    |
| name             | STRING    |
| email            | STRING    |
| role             | STRING    |
| currency         | STRING    |
| adjustment       | NUMERIC   |
| payRate          | NUMERIC   |
| payMethod        | STRING    |
| payIdentifier    | STRING    |
| hourlyLimit      | NUMERIC   |
| hourlyLimitRange | STRING    |

### Projects

Purpose: This API is used to fetch all the projects in the company

Source API Documentation: [https://api2.timedoctor.com/#/Projects/projects](https://api2.timedoctor.com/#/Projects/projects)

Replication: Full Replication

Replication Key: NA

**Fields**

| Name        | Data Type |
| ----------- | --------- |
| id          | STRING    |
| integration | RECORD    |
| name        | STRING    |
| description | STRING    |
| deleted     | BOOLEAN   |
| weight      | NUMERIC   |

### Tags

Purpose: This API is used to fetch all the tags&#x20;

Source API Documentation: [https://api2.timedoctor.com/#/Groups%20(Tags)/tags](https://api2.timedoctor.com/#/Groups%20\(Tags\)/tags)

Replication: Full Replication

Replication Key: NA

**Fields**

| Name                  | Data Type |
| --------------------- | --------- |
| special               | STRING    |
| users                 | NUMERIC   |
| usersOnReports        | NUMERIC   |
| selfUser              | NUMERIC   |
| managedUsers          | NUMERIC   |
| managedUsersOnReports | NUMERIC   |
| id                    | STRING    |
| name                  | STRING    |
| creatorId             | STRING    |
| deleted               | BOOLEAN   |
| readOnly              | BOOLEAN   |
| managers              | STRING    |
| createdAt             | TIMESTAMP |
| modifiedAt            | TIMESTAMP |

### Tasks

Purpose: This API is used to fetch all the tasks in the company&#x20;

Source API Documentation: [https://api2.timedoctor.com/#/Tasks/tasks](https://api2.timedoctor.com/#/Tasks/tasks)

Replication: Full Replication

Replication Key: NA

**Fields**

| Name        | Data Type |
| ----------- | --------- |
| id          | STRING    |
| status      | STRING    |
| reporterId  | STRING    |
| deleted     | BOOLEAN   |
| deletedAt   | STRING    |
| project     | RECORD    |
| name        | STRING    |
| description | STRING    |
| integration | RECORD    |

### Users

Purpose: This API is used to fetch all the users in the company&#x20;

Source API Documentation: [https://api2.timedoctor.com/#/Users/getUsers](https://api2.timedoctor.com/#/Users/getUsers)

Replication: Full Replication

Replication Key: NA

**Fields**

| Name        | Data Type |
| ----------- | --------- |
| id          | STRING    |
| status      | STRING    |
| reporterId  | STRING    |
| deleted     | BOOLEAN   |
| deletedAt   | STRING    |
| project     | RECORD    |
| name        | STRING    |
| description | STRING    |
| integration | RECORD    |
