Skip to content

Field Types

Every field on a lead — standard or custom — has a type defined in the workspace. The value sent in an API payload must conform to that type. Values that don't match the type are silently dropped.

Field type definitions are shared across the Async API and the Sync API. The same rules apply whether the field belongs to a lead or to a custom action.

Quick reference

TypeAcceptsExample
textstring"Jane Doe"
emailstring (valid email)"jane.doe@example.com"
phonestring (country code + number)"919999999999"
numbernumeric value156
dateepoch ms or workspace-format string1672561800000 or "01/01/2023"
dropdownstring (option label)"Website"
tagsarray of strings["VIP", "Returning"]
moneynumeric string in workspace currency"1000"
websiteURL string"https://example.com"
medialinkpublicly accessible URL"https://cdn.example.com/file.pdf"
activeUsersstring (team member email)"agent@company.com"
ratinginteger 1-53
statusstring (status label)"Fresh"
lostReasonstring (lost reason label)"No Need"

text

Free-form string. Used for names, notes, addresses, and any custom text field.

  • No length limit unless the workspace defines one on the field.
  • Whitespace is preserved as sent.
json
"name": "Jane Doe"

email

A valid email address.

  • Must follow standard email syntax (local@domain.tld).
  • Used by the standard email lead field, the assignee field, and any custom email field.
json
"email": "jane.doe@example.com"

phone

Phone number including country code.

  • Recommended format: country code + national number, no spaces or symbols (e.g. 919999999999 for India).
  • The leading + is accepted but optional.
  • If the country code is missing, the workspace's default country code is applied.
json
"phone": "919999999999"

number

Numeric value (integer or decimal).

  • Use money instead for currency amounts so workspace formatting is preserved.
json
"deal_size": 156

date

Two formats are accepted:

  1. Unix timestamp in milliseconds (e.g. 1672561800000).
  2. String in the workspace-configured date format, with optional time component (e.g. "01/01/2023 10:30:00").

If the time component is omitted, it defaults to 00:00:00 in the workspace timezone.

WARNING

Values in any other format (including ISO 8601) may be silently dropped or stored incorrectly. Find the workspace's date format under Settings → Lead Fields → click the date field → Properties → Date format.

json
"follow_up_date": "01/01/2023 10:30:00"
json
"follow_up_date": 1672561800000

Single-select dropdown value, matched against the predefined options for the field in the workspace.

  • If the value does not match any existing option, a new option is created automatically.
  • Maximum 1000 options per dropdown field.
  • Each option label is capped at 40 characters.
json
"contact_source": "Website"

tags

Multi-select tags field. Each entry is matched against the predefined tags for the field.

  • Input must be an array of strings. Comma-separated strings are not accepted.
  • If a value does not match any existing tag, a new tag is created automatically.
  • Maximum 1000 tags per field.
  • Each tag label is capped at 40 characters.
json
"interests": ["VIP", "Returning"]

money

Currency amount as a numeric string in the workspace's default currency.

  • Decimal separator is ..
  • Do not include currency symbols or thousands separators.
json
"budget": "1000"

website

URL string. The protocol (http:// or https://) is recommended but not required.

json
"company_website": "https://example.com"

URL pointing to media (image, video, document) hosted on a publicly accessible location.

  • telecrm does not host the file; only the link is stored.
  • The URL must remain publicly reachable for the link to be useful in the dashboard.
json
"contract_file": "https://cdn.example.com/contract.pdf"

activeUsers

Email of an active team member in the workspace.

  • The email must match a current member's email exactly.
  • Invalid or unknown emails cause the field to be dropped.
json
"assigned_specialist": "agent@company.com"

rating

Integer between 1 and 5, inclusive (5 is highest).

  • Values outside this range are rejected.
json
"rating": 3

status

Lead status label. Must exactly match one of the active statuses defined in the workspace's lead stage pipeline (case-sensitive).

  • Defaults to Fresh when omitted on lead creation.
  • Statuses are configured under Settings → Lead Stages.
json
"status": "Fresh"

lostReason

Reason a lead was marked Lost. Must exactly match one of the active lost reasons defined in the workspace's lead stage pipeline (case-sensitive).

  • Only meaningful when the lead's status belongs to a LOST stage.
  • Defaults to Unknown Reason when omitted.
  • Lost reasons are configured under Settings → Lead Stages.
json
"lost_reason": "No Need"