Company
Stored in the companies collection. createdAt and updatedAt are maintained automatically.
Returned by GET /company.
Example
One real Company as returned by GET /company. Recorded from a live response, so the defaults, denormalised snapshots and populated fields are the actual ones:
{
"contactNumber": {
"countryCode": "+91",
"number": "9000000001"
},
"metaData": {
"customFields": [
{
"_id": "6a95738c859eafb47bf22838",
"name": "Budget range"
}
],
"customSections": [],
"systemFields": [],
"systemSections": []
},
"_id": "6a9572df859eafb47bf225d7",
"name": "Docs Test Co",
"profileImage": null,
"memberCount": 1,
"aiLeadCount": 0,
"domain": "",
"aboutUs": "",
"aiOnboardingRuns": [],
"createdAt": "2026-08-31T12:26:07.675Z",
"updatedAt": "2026-08-31T12:29:00.249Z",
"__v": 1,
"leadCount": 3,
"contactCount": 3,
"productServiceCount": 1,
"enrichmentCount": 0,
"campaignCount": 0,
"workflowCount": 1,
"aiLeadsCount": 0,
"chatWidgetCount": 0,
"manualChatbotCount": 0,
"aiCrmChatCount": 0,
"aiCrmMessageCount": 0,
"allFeatures": [
{
"_id": "6a92bda6ebbc3b463dbbec83",
"name": "Contact",
"status": "active"
},
{
"_id": "6a92bda6ebbc3b463dbbec84",
"name": "Lead",
"status": "active"
},
"…and 19 more"
]
}
:::note Trimmed for reading A populated reference is shown by the fields that identify it rather than in full — it arrives as the entire referenced document. Long arrays are cut to the first two entries and marked, long strings are truncated, and any field that could carry a credential is dropped rather than masked. :::
Fields
| Field | Type | Notes |
|---|---|---|
name | string | required |
email | string | required · never returned (select: false) |
taxId | string | |
contactNumber.countryCode | string | required |
contactNumber.number | string | required |
address | string | |
country | string | |
state | string | |
city | string | |
postalCode | string | |
profileImage | ObjectId -> File | default null |
memberCount | number | default 0 |
aiLeadCount | number | default 0 |
domain | string | default "" |
aboutUs | string | default "" |
aiOnboardingRuns | ObjectId[] -> AIOnboarding | default [] |
metaData.systemFields | object[] | default [] |
metaData.systemFields._id | string | required |
metaData.systemFields.name | string | |
metaData.systemFields.panel | string | default contact · one of contact, lead, productService |
metaData.systemFields.section | string | |
metaData.systemFields.order | number | |
metaData.systemFields.hide | boolean | default false |
metaData.systemFields.valueType | string | |
metaData.systemFields.fieldType | string | |
metaData.systemFields.options | object[] | default [] |
metaData.systemFields.options.label | string | |
metaData.systemFields.options.description | string | |
metaData.systemFields.options.value | string | |
metaData.systemFields.required | boolean | default false |
metaData.systemFields.placeholder | string | |
metaData.systemFields.helper | string | |
metaData.systemFields.defaultValue | any | |
metaData.systemSections | object[] | default [] |
metaData.systemSections._id | string | required |
metaData.systemSections.name | string | |
metaData.systemSections.description | string | |
metaData.systemSections.panel | string | default contact · one of contact, lead, productService |
metaData.systemSections.order | number | |
metaData.systemSections.hide | boolean | default false |
metaData.customFields | mixed[] | default [] |
metaData.customSections | mixed[] | default [] |
_id | ObjectId | |
createdAt | date | set once |
updatedAt | date |