customers
multi-tenantPrimary contact record. Represents any person in the CRM — lead, prospect, or client.
Schema gotchas
- ›Soft-delete: filter `deleted = true` to exclude deleted contacts
- ›`pipeline_type` column required — determines which pipeline the contact appears in
- ›Timestamps use `timeadded` and `lastupdate` (Unix epochs), NOT `created_at`/`updated_at`
Columns (22)
| Column | Type | Nullable | Notes |
|---|---|---|---|
id | serial | NOT NULL | |
id_company | integer | NOT NULL | Tenant scope |
first_name | varchar(255) | nullable | |
last_name | varchar(255) | nullable | |
email | varchar(255) | nullable | |
cellphone | varchar(255) | nullable | |
phone | varchar(255) | nullable | |
pipeline_type | varchar(255) | NOT NULL | Required — determines pipeline |
stage | varchar(255) | nullable | |
deleted | boolean | NOT NULL | default: falseSoft-delete flag |
timeadded | integer | NOT NULL | Unix epoch |
lastupdate | integer | NOT NULL | Unix epoch |
addedby | integer | NOT NULL | FK → pb_users.id |
company | varchar(255) | nullable | |
address | varchar(255) | nullable | |
city | varchar(255) | nullable | |
state | varchar(255) | nullable | |
country | varchar(255) | nullable | |
tags | text | nullable | |
notes | text | nullable | |
source | varchar(255) | nullable | |
linkedin_url | varchar(255) | nullable |
Indexes
customers__id_companyon(id_company)
customers__emailon(email)
customers__stageon(id_company, stage, deleted)