Skip to content

Enterprise Metadata — Examples ​

Replace {enterpriseId} with your enterprise ID and YOUR_SYNC_TOKEN with a valid Sync token.

These endpoints are the discovery surface — call them once at integration startup, cache the results, and refresh on a slow cadence.

Discover the lead identifier ​

One call. List the custom fields and take the entry flagged as the identifier:

bash
curl "https://next.telecrm.in/autoupdate/v2/enterprise/{enterpriseId}/custom-fields" \
  -H "Authorization: Bearer YOUR_SYNC_TOKEN"
json
[
  { "type": "TEXT",  "apiName": "name",      "label": "Name",      "isVisible": true, "isLeadid": false },
  { "type": "PHONE", "apiName": "phone",     "label": "Phone",     "isVisible": true, "isLeadid": true  },
  { "type": "EMAIL", "apiName": "email",     "label": "Email",     "isVisible": true, "isLeadid": false }
]

The entry with isLeadid: true is the identifier — its apiName is what every lead payload must include.

TIP

For most workspaces the identifier is phone, but it can be an email or a custom UNIQUE field such as a ticket or customer ID. Reading isLeadid handles every case. leadIdentifierFieldId from GET /metadata is an internal ID and cannot be joined against this response.

Discover dropdown options before posting ​

bash
curl "https://next.telecrm.in/autoupdate/v2/enterprise/{enterpriseId}/custom-fields/contact_source" \
  -H "Authorization: Bearer YOUR_SYNC_TOKEN"

Returns the field's full definition including all valid options[].label values. Use these labels exactly when sending dropdown values — though unknown labels auto-create new options, deliberately discovering existing ones avoids accidentally creating duplicates.

Discover writable custom action codes ​

bash
curl "https://next.telecrm.in/autoupdate/v2/enterprise/{enterpriseId}/custom-actions" \
  -H "Authorization: Bearer YOUR_SYNC_TOKEN"

Returns the summary list. Each entry's code is ACTION_<numeric>. Strip the ACTION_ prefix when calling the Sync API — pass just "1001" (the numeric portion) as the action type. The Async API uses the full ACTION_1001 form.

Discover valid status labels ​

bash
curl "https://next.telecrm.in/autoupdate/v2/enterprise/{enterpriseId}/lead-stage-pipeline" \
  -H "Authorization: Bearer YOUR_SYNC_TOKEN"

Iterate statuses[] and keep the entries where archived is false; their label values are what you can send as lead.fields.status. Archived entries are returned in the same array so historical leads stay readable, but they are not accepted on new ones.

Discover the workspace's date format ​

bash
curl "https://next.telecrm.in/autoupdate/v2/enterprise/{enterpriseId}/custom-fields?detail=true" \
  -H "Authorization: Bearer YOUR_SYNC_TOKEN"

For each entry where type: "DATE", the dateFormat and timeFormat fields tell you how to format date inputs. For example, DD/MM/YYYY + HH:mm means values like "01/06/2026 10:30" are accepted. Unix milliseconds are always accepted as an alternative — see Field Types → date.