# Teamtailor schema ERD

Table and field reference for the Fivetran Teamtailor connector.

## Table & Field Reference

### location

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| address | Unknown |  |
| city | Unknown |  |
| country | Unknown |  |
| email | Unknown |  |
| headquarter | Unknown |  |
| lat | Unknown |  |
| long | Unknown |  |
| name | Unknown |  |
| phone | Unknown |  |
| zip | Unknown |  |

### job_application

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| candidate_id | Unknown | FK |
| job_id | Unknown | FK |
| job_stage_id | Unknown | FK |
| rejection_reason_id | Unknown | FK |
| changed_stage_at | Unknown |  |
| cover_letter | Unknown |  |
| created_at | Unknown |  |
| referring_site | Unknown |  |
| referring_url | Unknown |  |
| rejected_at | Unknown |  |
| row_order | Unknown |  |
| sourced | Unknown |  |
| updated_at | Unknown |  |

### referral

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| candidate_id | Unknown | FK |
| job_id | Unknown | FK |
| user_id | Unknown | FK |
| comment | Unknown |  |
| created_at | Unknown |  |
| email | Unknown |  |
| name | Unknown |  |
| phone | Unknown |  |

### candidate_document_upload

| Column | Type | Keys |
| --- | --- | --- |
| candidate_id | Unknown | PK, FK |
| upload_id | Unknown | PK, FK |

### candidate

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| connected | Unknown |  |
| consent_future_jobs_at | Unknown |  |
| created_at | Unknown |  |
| email | Unknown |  |
| facebook_id | Unknown |  |
| facebook_profile | Unknown |  |
| first_name | Unknown |  |
| internal | Unknown |  |
| last_name | Unknown |  |
| linkedin_profile | Unknown |  |
| linkedin_uid | Unknown |  |
| linkedin_url | Unknown |  |
| original_resume | Unknown |  |
| phone | Unknown |  |
| picture | Unknown |  |
| pitch | Unknown |  |
| referred | Unknown |  |
| referring_site | Unknown |  |
| referring_url | Unknown |  |
| restricted_at | Unknown |  |
| resume | Unknown |  |
| sourced | Unknown |  |
| tags | Json |  |
| unsubscribed | Unknown |  |
| updated_at | Unknown |  |

### job_question_alternative

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| question_id | Unknown | PK, FK |
| title | Unknown |  |

### question

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| description | Unknown |  |
| end_with | Unknown |  |
| multiple | Unknown |  |
| question_type | Unknown |  |
| single_line | Unknown |  |
| start_with | Unknown |  |
| title | Unknown |  |
| unit | Unknown |  |

### role

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| name | Unknown |  |

### requisition

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| archived_at | Unknown |  |
| country | Unknown |  |
| created_at | Unknown |  |
| currency | Unknown |  |
| hired_count | Unknown |  |
| job_description | Unknown |  |
| job_title | Unknown |  |
| max_salary | Unknown |  |
| min_salary | Unknown |  |
| number_of_opening | Unknown |  |
| salary_time_unit | Unknown |  |
| status | Unknown |  |
| custom_** |  |  |

### job_tag

| Column | Type | Keys |
| --- | --- | --- |
| index | Unknown | PK |
| job_id | Unknown | PK, FK |
| tags | Unknown |  |

### job_location

| Column | Type | Keys |
| --- | --- | --- |
| job_id | Unknown | PK, FK |
| location_id | Unknown | PK, FK |

### job_question

| Column | Type | Keys |
| --- | --- | --- |
| job_id | Unknown | PK, FK |
| question_id | Unknown | PK, FK |

### job_candidate

| Column | Type | Keys |
| --- | --- | --- |
| candidate_id | Unknown | PK, FK |
| job_id | Unknown | PK, FK |

### job_picked_question

| Column | Type | Keys |
| --- | --- | --- |
| job_id | Unknown | PK, FK |
| question_id | Unknown | PK, FK |

### job

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| department_id | Unknown | FK |
| requisition_id | Unknown | FK |
| user_id | Unknown | FK |
| apply_button_text | Unknown |  |
| cover_letter_requirement | Unknown |  |
| created_at | Unknown |  |
| currency | Unknown |  |
| employment_type | Unknown |  |
| end_date | Unknown |  |
| external_application_url | Unknown |  |
| human_status | Unknown |  |
| internal | Unknown |  |
| internal_name | Unknown |  |
| language_code | Unknown |  |
| mailbox | Unknown |  |
| name_requirement | Unknown |  |
| phone_requirement | Unknown |  |
| picture_original | Unknown |  |
| picture_standard | Unknown |  |
| picture_thumb | Unknown |  |
| pinned | Unknown |  |
| pitch | Unknown |  |
| recruiter_email | Unknown |  |
| remote_status | Unknown |  |
| resume_requirement | Unknown |  |
| sharing_image_layout | Unknown |  |
| start_date | Unknown |  |
| status | Unknown |  |
| title | Unknown |  |
| updated_at | Unknown |  |

### rejection_reason

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| reason | Unknown |  |
| rejected_by_company | Unknown |  |

### answer

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| candidate_id | Unknown | FK |
| question_id | Unknown | FK |
| answer | Unknown |  |
| boolean | Unknown |  |
| choice | Json |  |
| created_at | Unknown |  |
| data | Unknown |  |
| date | Unknown |  |
| number | Unknown |  |
| question_type | Unknown |  |
| range | Unknown |  |
| text | Unknown |  |
| updated_at | Unknown |  |
| video_token | Unknown |  |

### department_team

| Column | Type | Keys |
| --- | --- | --- |
| department_id | Unknown | PK, FK |
| team_id | Unknown | PK, FK |

### department

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| name | Unknown |  |

### job_offer

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| job_application_id | Unknown | FK |
| user_id | Unknown | FK |
| acceptance_message | Unknown |  |
| answered_at | Unknown |  |
| approval_status | Unknown |  |
| created_at | Unknown |  |
| job_type | Unknown |  |
| probation_period | Unknown |  |
| rejection_message | Unknown |  |
| reporting_manager_name_and_title | Unknown |  |
| response | Unknown |  |
| salary | Unknown |  |
| sent_at | Unknown |  |
| start_date | Unknown |  |
| status | Unknown |  |
| working_location | Unknown |  |

### team_users

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

### application_stage

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| active_job_applications_count | Unknown |  |
| created_at | Unknown |  |
| name | Unknown |  |
| rejected_job_applications_count | Unknown |  |
| row_order | Unknown |  |
| stage_type | Unknown |  |
| updated_at | Unknown |  |

### team_role

| Column | Type | Keys |
| --- | --- | --- |
| role_id | Unknown | PK, FK |
| team_id | Unknown | PK, FK |

### team

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| emoji | Unknown |  |
| name | Unknown |  |
| no_department | Unknown |  |

### users

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| department_id | Unknown | FK |
| location_id | Unknown | FK |
| description | Unknown |  |
| email | Unknown |  |
| external_id | Unknown |  |
| facebook_profile | Unknown |  |
| hide_email | Unknown |  |
| hide_phone | Unknown |  |
| instagram_profile | Unknown |  |
| linkedin_profile | Unknown |  |
| locale | Unknown |  |
| login_email | Unknown |  |
| name | Unknown |  |
| other_profile | Unknown |  |
| phone | Unknown |  |
| picture_standard | Unknown |  |
| role | Unknown |  |
| role_add_on | Unknown |  |
| signature | Unknown |  |
| time_format | Unknown |  |
| time_zone | Unknown |  |
| title | Unknown |  |
| twitter_profile | Unknown |  |
| username | Unknown |  |
| visible | Unknown |  |

### document_upload

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| file_name | Unknown |  |
| internal | Unknown |  |
| url | Unknown |  |

## Relationships

- job_application(job_id) → job(id)
- job_application(candidate_id) → candidate(id)
- job_application(job_stage_id) → application_stage(id)
- job_application(rejection_reason_id) → rejection_reason(id)
- referral(job_id) → job(id)
- referral(candidate_id) → candidate(id)
- referral(user_id) → users(id)
- candidate_document_upload(upload_id) → document_upload(id)
- candidate_document_upload(candidate_id) → candidate(id)
- job_question_alternative(question_id) → question(id)
- job_tag(job_id) → job(id)
- job_location(location_id) → location(id)
- job_location(job_id) → job(id)
- job_question(question_id) → question(id)
- job_question(job_id) → job(id)
- job_candidate(candidate_id) → candidate(id)
- job_candidate(job_id) → job(id)
- job_picked_question(question_id) → question(id)
- job_picked_question(job_id) → job(id)
- job(department_id) → department(id)
- job(user_id) → users(id)
- job(requisition_id) → requisition(id)
- answer(candidate_id) → candidate(id)
- answer(question_id) → question(id)
- department_team(team_id) → team(id)
- department_team(department_id) → department(id)
- job_offer(user_id) → users(id)
- job_offer(job_application_id) → job_application(id)
- team_users(user_id) → users(id)
- team_users(team_id) → team(id)
- team_role(role_id) → role(id)
- team_role(team_id) → team(id)
- users(location_id) → location(id)
- users(department_id) → department(id)
