# Everhour schema ERD

Table and field reference for the Fivetran Everhour connector.

## Table & Field Reference

### project_user

| Column | Type | Keys |
| --- | --- | --- |
| project_id | Unknown | PK, FK |
| user_id | Unknown | PK, FK |

### project

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| client_id | Unknown | FK |
| attributes | Json |  |
| billing_fee | Unknown |  |
| billing_type | Unknown |  |
| can_sync_tasks | Unknown |  |
| change_protected | Unknown |  |
| connection_status | Unknown |  |
| created_at | Unknown |  |
| editable | Unknown |  |
| estimate_type | Unknown |  |
| favorite | Unknown |  |
| foreigns | Unknown |  |
| has_webhook | Unknown |  |
| is_template | Unknown |  |
| name | Unknown |  |
| platform | Unknown |  |
| privacy | Unknown |  |
| project_budget | Unknown |  |
| project_budget_applied_from | Unknown |  |
| project_budget_disallow_over_budget | Unknown |  |
| project_budget_exclude_expenses | Unknown |  |
| project_budget_exclude_unbillable_time | Unknown |  |
| project_budget_expense_progress | Unknown |  |
| project_budget_period | Unknown |  |
| project_budget_progress | Unknown |  |
| project_budget_show_to_users | Unknown |  |
| project_budget_threshold | Unknown |  |
| project_budget_time_progress | Unknown |  |
| project_budget_type | Unknown |  |
| rate | Unknown |  |
| rate_type | Unknown |  |
| status | Unknown |  |
| type | Unknown |  |
| user_cost_overrides | Json |  |
| user_rate_overrides | Json |  |
| workspace_id | Unknown |  |
| workspace_name | Unknown |  |
| custom_field_** |  |  |

### client_project

| Column | Type | Keys |
| --- | --- | --- |
| client_id | Unknown | PK, FK |
| project_id | Unknown | PK, FK |

### client_email

| Column | Type | Keys |
| --- | --- | --- |
| email_id | Unknown | PK |
| client_id | Unknown | PK, FK |

### client

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| budget | Unknown |  |
| budget_applied_from | Unknown |  |
| budget_disallow_over_budget | Unknown |  |
| budget_exclude_expenses | Unknown |  |
| budget_exclude_unbillable_time | Unknown |  |
| budget_expense_progress | Unknown |  |
| budget_month_start_date | Unknown |  |
| budget_period | Unknown |  |
| budget_progress | Unknown |  |
| budget_show_to_users | Unknown |  |
| budget_threshold | Unknown |  |
| budget_time_progress | Unknown |  |
| budget_type | Unknown |  |
| business_details | Unknown |  |
| created_at | Unknown |  |
| default_discount | Unknown |  |
| default_tax_rate | Unknown |  |
| enable_resource_planner | Unknown |  |
| excluded_labels | Json |  |
| favorite | Unknown |  |
| invoice_public_notes | Unknown |  |
| line_item_mask | Unknown |  |
| name | Unknown |  |
| payment_due_days | Unknown |  |
| reference | Unknown |  |
| status | Unknown |  |

### allocation

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| time_off_type_id | Unknown | FK |
| user_id | Unknown | FK |
| accrual_frequency | Unknown |  |
| completed | Unknown |  |
| contract_start_date | LocalDate |  |
| created_at | LocalDate |  |
| created_by | Unknown |  |
| day | Unknown |  |
| day_allocated | Unknown |  |
| day_carried | Unknown |  |
| day_used | Unknown |  |
| end_date | LocalDate |  |
| note | Unknown |  |
| restrict_over_allocation | Unknown |  |
| start_date | LocalDate |  |

### time_off_type

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| color | Unknown |  |
| description | Unknown |  |
| name | Unknown |  |
| paid | Unknown |  |

### assignment

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| project_id | Unknown | FK |
| user_id | Unknown | FK |
| days | Unknown |  |
| end_date | Unknown |  |
| start_date | Unknown |  |
| time | Unknown |  |
| type | Unknown |  |

### timecard_history

| Column | Type | Keys |
| --- | --- | --- |
| index | Unknown | PK |
| user_id | Unknown | PK, FK |
| action | Unknown |  |
| previous_time | Unknown |  |
| time | Unknown |  |
| trigger | Unknown |  |

### timecard

| Column | Type | Keys |
| --- | --- | --- |
| user_id | Unknown | PK, FK |
| break_time | Unknown |  |
| clock_in | Unknown |  |
| clock_out | Unknown |  |
| work_time | Unknown |  |

### expense_attachment

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| expense_id | Unknown | FK |
| name | Unknown |  |
| token | Unknown |  |

### expense

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| category_id | Unknown | FK |
| project_id | Unknown | FK |
| amount | Unknown |  |
| billable | Unknown |  |
| date | Unknown |  |
| details | Unknown |  |
| quantity | Unknown |  |
| users | Unknown |  |

### user_cost_history

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| user_id | Unknown | PK, FK |
| cost | Unknown |  |
| created_at | Unknown |  |

### users

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| access_edit_all | Unknown |  |
| access_edit_mine | Unknown |  |
| access_view_all | Unknown |  |
| access_view_mine | Unknown |  |
| allow_exceed_estimate | Unknown |  |
| allow_future_time | Unknown |  |
| allow_manage_estimates | Unknown |  |
| allow_manual_time_input | Unknown |  |
| allow_time_without_estimate | Unknown |  |
| allow_time_without_task | Unknown |  |
| avatar_url | Unknown |  |
| capacity | Unknown |  |
| created_at | Unknown |  |
| email | Unknown |  |
| enable_resource_planner | Unknown |  |
| groups | Json |  |
| headline | Unknown |  |
| is_email_verified | Unknown |  |
| name | Unknown |  |
| rate | Unknown |  |
| role | Unknown |  |
| status | Unknown |  |
| type | Unknown |  |

### team_timer

| Column | Type | Keys |
| --- | --- | --- |
| started_at | Unknown | PK |
| user_id | Unknown | PK, FK |
| task_id | Unknown | FK |
| duration | Unknown |  |
| status | Unknown |  |
| today | Unknown |  |
| user_date | Unknown |  |

### time_record_history

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| time_record_id | Unknown | FK |
| action | Unknown |  |
| created_at | Unknown |  |
| created_by | Unknown |  |
| previous_time | Unknown |  |
| time | Unknown |  |

### time_record

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| task_id | Unknown | FK |
| user_id | Unknown | FK |
| comment | Unknown |  |
| date | Unknown |  |
| is_invoiced | Unknown |  |
| is_locked | Unknown |  |
| time | Unknown |  |

### task_label

| Column | Type | Keys |
| --- | --- | --- |
| label | Unknown | PK |
| task_id | Unknown | PK, FK |

### task_project

| Column | Type | Keys |
| --- | --- | --- |
| project_id | Unknown | PK, FK |
| task_id | Unknown | PK, FK |

### task

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| created_by_user_id | Unknown | FK |
| project_section_id | Unknown | FK |
| attributes_client | Unknown |  |
| attributes_priority | Unknown |  |
| completed | Unknown |  |
| created_at | Unknown |  |
| due_at | Unknown |  |
| estimate_type | Unknown |  |
| estimate_users | Json |  |
| metrics_efforts | Unknown |  |
| metrics_expenses | Unknown |  |
| name | Unknown |  |
| position | Unknown |  |
| status | Unknown |  |
| type | Unknown |  |
| custom_field_** |  |  |

### invoice_project

| Column | Type | Keys |
| --- | --- | --- |
| invoice_id | Unknown | PK, FK |
| project_id | Unknown | PK, FK |

### invoice_item

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| invoice_id | Unknown | FK |
| billed_time | Unknown |  |
| created_at | Unknown |  |
| custom | Unknown |  |
| list_amount | Unknown |  |
| name | Unknown |  |
| net_amount | Unknown |  |
| position | Unknown |  |
| taxable | Unknown |  |
| total_amount | Unknown |  |

### invoice

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| client_id | Unknown | FK |
| user_id | Unknown | FK |
| created_at | Unknown |  |
| date_from | Unknown |  |
| date_till | Unknown |  |
| discount_amount | Unknown |  |
| discount_rate | Unknown |  |
| due_date | Unknown |  |
| expense_mask | Unknown |  |
| include_expenses | Unknown |  |
| include_time | Unknown |  |
| is_sent | Unknown |  |
| issue_date | Unknown |  |
| limit_date_from | Unknown |  |
| limit_date_till | Unknown |  |
| list_amount | Unknown |  |
| net_amount | Unknown |  |
| payment_amount | Unknown |  |
| public_id | Unknown |  |
| public_notes | Unknown |  |
| show_row_numbers | Unknown |  |
| status | Unknown |  |
| tax_amount | Unknown |  |
| tax_rate | Unknown |  |
| template | Unknown |  |
| time_mask | Unknown |  |
| total_amount | Unknown |  |
| total_hours | Unknown |  |
| total_time | Unknown |  |
| valid | Unknown |  |
| version | Unknown |  |

### project_section

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| project_id | String | FK |
| name | Unknown |  |
| position | Unknown |  |
| status | Unknown |  |

### category

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| color | Unknown |  |
| name | Unknown |  |
| unit_based | Unknown |  |
| unit_name | Unknown |  |
| unit_price | Unknown |  |

## Relationships

- project_user(user_id) → users(id)
- project_user(project_id) → project(id)
- project(client_id) → client(id)
- client_project(project_id) → project(id)
- client_project(client_id) → client(id)
- client_email(client_id) → client(id)
- allocation(user_id) → users(id)
- allocation(time_off_type_id) → time_off_type(id)
- assignment(project_id) → project(id)
- assignment(user_id) → users(id)
- timecard_history(user_id) → timecard(user_id)
- timecard(user_id) → users(id)
- expense_attachment(expense_id) → expense(id)
- expense(category_id) → category(id)
- expense(project_id) → project(id)
- user_cost_history(user_id) → users(id)
- team_timer(task_id) → task(id)
- team_timer(user_id) → users(id)
- time_record_history(time_record_id) → time_record(id)
- time_record(user_id) → users(id)
- time_record(task_id) → task(id)
- task_label(task_id) → task(id)
- task_project(project_id) → project(id)
- task_project(task_id) → task(id)
- task(created_by_user_id) → users(id)
- task(project_section_id) → project_section(id)
- invoice_project(project_id) → project(id)
- invoice_project(invoice_id) → invoice(id)
- invoice_item(invoice_id) → invoice(id)
- invoice(user_id) → users(id)
- invoice(client_id) → client(id)
- project_section(project_id) → project(id)
