# Ashby schema ERD

Table and field reference for the Fivetran Ashby connector.

## Table & Field Reference

### source

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| is_archived | Unknown |  |
| source_type_id | Unknown |  |
| source_type_is_archived | Unknown |  |
| source_type_title | Unknown |  |
| title | Unknown |  |

### offer_custom_field

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK, FK |
| offer_id | Unknown | PK, FK |
| value | Unknown |  |

### offer_file_handle

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| offer_id | Unknown | PK, FK |
| handle | Unknown |  |
| name | Unknown |  |

### offer_version_custom_field

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK, FK |
| offer_id | Unknown | PK, FK |
| offer_version_id | Unknown | PK, FK |
| value | Unknown |  |

### offer_version_file_handle

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| offer_id | Unknown | PK, FK |
| offer_version_id | Unknown | PK, FK |
| handle | Unknown |  |
| name | Unknown |  |

### offer_version

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| offer_id | Unknown | PK, FK |
| author_id | Unknown | FK |
| created_at | Unknown |  |
| salary_currency_code | Unknown |  |
| salary_value | Unknown |  |
| start_date | Unknown |  |

### offer

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| application_id | Unknown | FK |
| author_id | Unknown | FK |
| acceptance_status | Unknown |  |
| decided_at | Unknown |  |
| latest_version_created_at | Unknown |  |
| latest_version_id | Unknown |  |
| latest_version_salary_currency_code | Unknown |  |
| latest_version_salary_value | Unknown |  |
| latest_version_start_date | Unknown |  |
| status | Unknown |  |

### application_feedback_form_definition_section_field_value

| Column | Type | Keys |
| --- | --- | --- |
| index | Unknown | PK |
| application_feedback_id | Unknown | PK, FK |
| section_field_index | Unknown | PK, FK |
| section_field_value_index | Unknown | PK, FK |
| label | Unknown |  |
| value | Unknown |  |

### application_feedback_form_definition_section_field

| Column | Type | Keys |
| --- | --- | --- |
| index | Unknown | PK |
| section_field_index | Unknown | PK |
| application_feedback_id | Unknown | PK, FK |
| description_html | Unknown |  |
| description_plain | Unknown |  |
| field_human_readable_path | Unknown |  |
| field_id | Unknown |  |
| field_is_nullable | Unknown |  |
| field_path | Unknown |  |
| field_title | Unknown |  |
| field_type | Unknown |  |
| is_required | Unknown |  |
| section_description_html | Unknown |  |
| section_description_plain | Unknown |  |
| title | Unknown |  |

### application_feedback_submitted_value

| Column | Type | Keys |
| --- | --- | --- |
| name | Unknown | PK |
| application_feedback_id | Unknown | PK, FK |
| value | Unknown |  |

### application_feedback

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| application_history_id | Unknown | FK |
| application_id | Unknown | FK |
| interview_id | Unknown | FK |
| submitted_by_user_id | Unknown | FK |
| feedback_form_definition_id | Unknown |  |
| submitted_at | Unknown |  |

### source_tracking_link

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| source_id | Unknown | FK |
| code | Unknown |  |
| enabled | Unknown |  |
| link | Unknown |  |

### application_history_allowed_action

| Column | Type | Keys |
| --- | --- | --- |
| index | Unknown | PK |
| application_history_id | Unknown | PK, FK |
| application_id | Unknown | PK, FK |
| action | Unknown |  |

### application_history

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| application_id | Unknown | PK, FK |
| actor_id | Unknown | FK |
| entered_stage_at | Unknown |  |
| left_stage_at | Unknown |  |
| stage_id | Unknown |  |
| stage_number | Unknown |  |
| title | Unknown |  |

### users

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| email | Unknown |  |
| first_name | Unknown |  |
| global_role | Unknown |  |
| is_enabled | Unknown |  |
| last_name | Unknown |  |
| sync_token | Unknown |  |
| updated_at | Unknown |  |

### job_board

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| is_internal | Unknown |  |
| title | Unknown |  |

### interview_schedule_event_user_id

| Column | Type | Keys |
| --- | --- | --- |
| interview_schedule_event_id | Unknown | PK, FK |
| interview_schedule_id | Unknown | PK, FK |
| user_id | Unknown | PK, FK |

### interview_schedule_event

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| interview_schedule_id | Unknown | PK, FK |
| interview_id | Unknown | FK |
| created_at | Unknown |  |
| end_time | Unknown |  |
| feedback_link | Unknown |  |
| has_submitted_feedback | Unknown |  |
| location | Unknown |  |
| meeting_link | Unknown |  |
| start_time | Unknown |  |
| updated_at | Unknown |  |

### interview_schedule

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| application_id | Unknown | FK |
| interview_stage_id | Unknown | FK |

### job_posting_location

| Column | Type | Keys |
| --- | --- | --- |
| index | Unknown | PK |
| job_posting_id | Unknown | PK, FK |
| location_id | Unknown | FK |

### job_posting

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| job_id | Unknown | FK |
| primary_location_id | Unknown | FK |
| application_deadline | Unknown |  |
| apply_link | Unknown |  |
| compensation_tier_summary | Unknown |  |
| department_name | Unknown |  |
| employment_type | Unknown |  |
| external_link | Unknown |  |
| is_listed | Unknown |  |
| location_name | Unknown |  |
| published_date | Unknown |  |
| should_display_compensation_on_job_board | Unknown |  |
| team_name | Unknown |  |
| title | Unknown |  |
| updated_at | Unknown |  |

### job_opening

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

### job_interview_plan_id

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

### job_posting_id

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

### job_custom_field

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK, FK |
| job_id | Unknown | PK, FK |
| value | Unknown |  |

### job_hiring_team

| Column | Type | Keys |
| --- | --- | --- |
| job_id | Unknown | PK, FK |
| user_id | Unknown | PK, FK |
| role | Unknown |  |

### job

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| author_id | Unknown | FK |
| department_id | Unknown | FK |
| location_id | Unknown | FK |
| brand_id | Unknown |  |
| closed_at | Unknown |  |
| confidential | Unknown |  |
| created_at | Unknown |  |
| custom_requisition_id | Unknown |  |
| default_interview_plan_id | Unknown |  |
| employment_type | Unknown |  |
| opened_at | Unknown |  |
| status | Unknown |  |
| title | Unknown |  |
| updated_at | Unknown |  |

### interview_stage

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| interview_stage_group_id | Unknown | FK |
| interview_plan_id | Unknown |  |
| order_in_interview_plan | Unknown |  |
| title | Unknown |  |
| type | Unknown |  |

### application_hiring_team_role

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

### candidate_email_address

| Column | Type | Keys |
| --- | --- | --- |
| index | Unknown | PK |
| candidate_id | Unknown | PK, FK |
| is_primary | Unknown |  |
| type | Unknown |  |
| value | Unknown |  |

### candidate_phone_number

| Column | Type | Keys |
| --- | --- | --- |
| index | Unknown | PK |
| candidate_id | Unknown | PK, FK |
| is_primary | Unknown |  |
| type | Unknown |  |
| value | Unknown |  |

### candidate_social_link

| Column | Type | Keys |
| --- | --- | --- |
| index | Unknown | PK |
| candidate_id | Unknown | PK, FK |
| type | Unknown |  |
| url | Unknown |  |

### candidate_application_id

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

### candidate_tag

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| candidate_id | Unknown | PK, FK |
| is_archived | Unknown |  |
| title | Unknown |  |

### candidate_file_hadle

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| candidate_id | Unknown | PK, FK |
| handle | Unknown |  |
| name | Unknown |  |

### candidate_custom_field

| Column | Type | Keys |
| --- | --- | --- |
| candidate_id | Unknown | PK, FK |
| id | Unknown | PK, FK |
| value | Unknown |  |

### candidate

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| credited_to_user_id | Unknown | FK |
| primary_location_id | Unknown | FK |
| source_id | Unknown | FK |
| company | Unknown |  |
| created_at | Unknown |  |
| name | Unknown |  |
| position | Unknown |  |
| primary_location_summary | Unknown |  |
| profile_url | Unknown |  |
| resume_file_handle_handle | Unknown |  |
| resume_file_handle_id | Unknown |  |
| resume_file_handle_name | Unknown |  |
| school | Unknown |  |
| sync_token | Unknown |  |
| timezone | Unknown |  |
| updated_at | Unknown |  |
| primary_location_component_** |  |  |

### interview_stage_group

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| orders | Unknown |  |
| stage_type | Unknown |  |
| title | Unknown |  |

### department

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| parent_id | Unknown | FK |
| is_archived | Unknown |  |
| name | Unknown |  |
| sync_token | Unknown |  |

### custom_field_value

| Column | Type | Keys |
| --- | --- | --- |
| index | Unknown | PK |
| custom_field_id | Unknown | PK, FK |
| is_archived | Unknown |  |
| label | Unknown |  |
| value | Unknown |  |

### custom_field

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| field_type | Unknown |  |
| is_archived | Unknown |  |
| is_private | Unknown |  |
| object_type | Unknown |  |
| title | Unknown |  |

### hiring_team_role

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

### opening_job_id

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

### opening_location_id

| Column | Type | Keys |
| --- | --- | --- |
| index | Unknown | PK |
| opening_id | Unknown | PK, FK |
| location_id | Unknown | FK |

### opening_hiring_team

| Column | Type | Keys |
| --- | --- | --- |
| opening_id | Unknown | PK, FK |
| user_id | Unknown | PK, FK |
| role | Unknown |  |

### opening_custom_field

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK, FK |
| opening_id | Unknown | PK, FK |
| value | Unknown |  |

### opening

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| archived_at | Unknown |  |
| closed_at | Unknown |  |
| is_archived | Unknown |  |
| latest_version_author_id | Unknown |  |
| latest_version_created_at | Unknown |  |
| latest_version_description | Unknown |  |
| latest_version_employment_type | Unknown |  |
| latest_version_id | Unknown |  |
| latest_version_identifier | Unknown |  |
| latest_version_is_backfill | Unknown |  |
| latest_version_target_hire_date | Unknown |  |
| latest_version_target_start_date | Unknown |  |
| latest_version_team_id | Unknown |  |
| opened_at | Unknown |  |
| opening_state | Unknown |  |

### candidate_note

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| candidate_id | Unknown | PK, FK |
| author_id | Unknown | FK |
| content | Unknown |  |
| created_at | Unknown |  |
| sync_token | Unknown |  |

### application_custom_field

| Column | Type | Keys |
| --- | --- | --- |
| application_id | Unknown | PK, FK |
| id | Unknown | PK, FK |
| value | Unknown |  |

### application_archive_reason_custom_field

| Column | Type | Keys |
| --- | --- | --- |
| application_id | Unknown | PK, FK |
| id | Unknown | PK, FK |
| value | Unknown |  |

### application_hiring_team

| Column | Type | Keys |
| --- | --- | --- |
| application_id | Unknown | PK, FK |
| user_id | Unknown | PK, FK |
| role | Unknown |  |

### application_opening

| Column | Type | Keys |
| --- | --- | --- |
| application_id | Unknown | PK, FK |
| id | Unknown | PK, FK |

### application

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| candidate_id | Unknown | FK |
| credit_to_user_id | Unknown | FK |
| job_id | Unknown | FK |
| source_id | Unknown | FK |
| applied_via_job_posting_id | Unknown |  |
| archive_reason_id | Unknown |  |
| archive_reason_is_archived | Unknown |  |
| archive_reason_text | Unknown |  |
| archive_reason_type | Unknown |  |
| archived_at | Unknown |  |
| created_at | Unknown |  |
| current_interview_stage_group_id | Unknown |  |
| current_interview_stage_id | Unknown |  |
| current_interview_stage_order_in_interview_plan | Unknown |  |
| current_interview_stage_plan_id | Unknown |  |
| current_interview_stage_title | Unknown |  |
| current_interview_stage_type | Unknown |  |
| status | Unknown |  |
| sync_token | Unknown |  |
| updated_at | Unknown |  |

### interview_pool_training_stage_approval

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK, FK |
| interview_pool_id | Unknown | PK, FK |
| interview_pool_training_stage_id | Unknown | PK, FK |

### interview_pool_training_stage

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| interview_pool_id | Unknown | PK, FK |
| approval_required | Unknown |  |
| interviewer_required | Unknown |  |
| interviewer_role | Unknown |  |

### interview_pool

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| is_archived | Unknown |  |
| title | Unknown |  |
| training_path_enabled | Unknown |  |
| training_path_id | Unknown |  |

### location

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| parent_location_id | Unknown | FK |
| is_archived | Unknown |  |
| is_remote | Unknown |  |
| name | Unknown |  |
| postal_address_country | Unknown |  |
| postal_address_locality | Unknown |  |
| postal_address_region | Unknown |  |
| sync_token | Unknown |  |
| title | Unknown |  |
| type | Unknown |  |

### interview

| Column | Type | Keys |
| --- | --- | --- |
| id | Unknown | PK |
| job_id | Unknown | FK |
| feedback_form_definition_id | Unknown |  |
| instruction_html | Unknown |  |
| instruction_plain | Unknown |  |
| is_archived | Unknown |  |
| is_debrief | Unknown |  |
| title | Unknown |  |

## Relationships

- offer_custom_field(id) → custom_field(id)
- offer_custom_field(offer_id) → offer(id)
- offer_file_handle(offer_id) → offer(id)
- offer_version_custom_field(id) → custom_field(id)
- offer_version_custom_field(offer_version_id) → offer_version(id)
- offer_version_custom_field(offer_id) → offer_version(offer_id)
- offer_version_file_handle(offer_version_id) → offer_version(id)
- offer_version_file_handle(offer_id) → offer_version(offer_id)
- offer_version(author_id) → users(id)
- offer_version(offer_id) → offer(id)
- offer(application_id) → application(id)
- offer(author_id) → users(id)
- application_feedback_form_definition_section_field_value(application_feedback_id) → application_feedback_form_definition_section_field(application_feedback_id)
- application_feedback_form_definition_section_field_value(section_field_index) → application_feedback_form_definition_section_field(section_field_index)
- application_feedback_form_definition_section_field_value(section_field_value_index) → application_feedback_form_definition_section_field(index)
- application_feedback_form_definition_section_field(application_feedback_id) → application_feedback(id)
- application_feedback_submitted_value(application_feedback_id) → application_feedback(id)
- application_feedback(application_id) → application(id)
- application_feedback(application_history_id) → application_history(id)
- application_feedback(interview_id) → interview(id)
- application_feedback(submitted_by_user_id) → users(id)
- source_tracking_link(source_id) → source(id)
- application_history_allowed_action(application_history_id) → application_history(id)
- application_history_allowed_action(application_id) → application_history(application_id)
- application_history(actor_id) → users(id)
- application_history(application_id) → application(id)
- interview_schedule_event_user_id(user_id) → users(id)
- interview_schedule_event_user_id(interview_schedule_id) → interview_schedule_event(interview_schedule_id)
- interview_schedule_event_user_id(interview_schedule_event_id) → interview_schedule_event(id)
- interview_schedule_event(interview_id) → interview(id)
- interview_schedule_event(interview_schedule_id) → interview_schedule(id)
- interview_schedule(application_id) → application(id)
- interview_schedule(interview_stage_id) → interview_stage(id)
- job_posting_location(location_id) → location(id)
- job_posting_location(job_posting_id) → job_posting(id)
- job_posting(job_id) → job(id)
- job_posting(primary_location_id) → location(id)
- job_opening(id) → opening(id)
- job_opening(job_id) → job(id)
- job_interview_plan_id(job_id) → job(id)
- job_posting_id(id) → job_posting(id)
- job_posting_id(job_id) → job(id)
- job_custom_field(id) → custom_field(id)
- job_custom_field(job_id) → job(id)
- job_hiring_team(user_id) → users(id)
- job_hiring_team(job_id) → job(id)
- job(department_id) → department(id)
- job(author_id) → users(id)
- job(location_id) → location(id)
- interview_stage(interview_stage_group_id) → interview_stage_group(id)
- application_hiring_team_role(id) → hiring_team_role(id)
- candidate_email_address(candidate_id) → candidate(id)
- candidate_phone_number(candidate_id) → candidate(id)
- candidate_social_link(candidate_id) → candidate(id)
- candidate_application_id(id) → application(id)
- candidate_application_id(candidate_id) → candidate(id)
- candidate_tag(candidate_id) → candidate(id)
- candidate_file_hadle(candidate_id) → candidate(id)
- candidate_custom_field(id) → custom_field(id)
- candidate_custom_field(candidate_id) → candidate(id)
- candidate(primary_location_id) → location(id)
- candidate(source_id) → source(id)
- candidate(credited_to_user_id) → users(id)
- department(parent_id) → department(id)
- custom_field_value(custom_field_id) → custom_field(id)
- opening_job_id(job_id) → job(id)
- opening_job_id(opening_id) → opening(id)
- opening_location_id(location_id) → location(id)
- opening_location_id(opening_id) → opening(id)
- opening_hiring_team(user_id) → users(id)
- opening_hiring_team(opening_id) → opening(id)
- opening_custom_field(id) → custom_field(id)
- opening_custom_field(opening_id) → opening(id)
- candidate_note(author_id) → users(id)
- candidate_note(candidate_id) → candidate(id)
- application_custom_field(id) → custom_field(id)
- application_custom_field(application_id) → application(id)
- application_archive_reason_custom_field(id) → custom_field(id)
- application_archive_reason_custom_field(application_id) → application(id)
- application_hiring_team(user_id) → users(id)
- application_hiring_team(application_id) → application(id)
- application_opening(id) → opening(id)
- application_opening(application_id) → application(id)
- application(credit_to_user_id) → users(id)
- application(job_id) → job(id)
- application(candidate_id) → candidate(id)
- application(source_id) → source(id)
- interview_pool_training_stage_approval(id) → users(id)
- interview_pool_training_stage_approval(interview_pool_training_stage_id) → interview_pool_training_stage(id)
- interview_pool_training_stage_approval(interview_pool_id) → interview_pool_training_stage(interview_pool_id)
- interview_pool_training_stage(interview_pool_id) → interview_pool(id)
- location(parent_location_id) → location(id)
- interview(job_id) → job(id)
