List contacts

Contacts of your CRM with organization, lifecycle stage and owner; leads too when the Leads module is on.

GET https://cotlet.dev/api/v1/vtiger/contacts

read

Lists one page of the Contacts list under Main Menu > Essentials > Contacts, or of Essentials > Leads when module is leads. Filter by lifecycle_stage (Lead finds leads that are stored as contacts) or search by name, email or phone. Pass next_cursor back as cursor for the next page. You only see the records your Vtiger role lets you see.

Parameters

Parameters: list_contacts
NameTypeDescription
module enum enum contacts (default) or leads, for CRMs where the Leads module is enabled.
lifecycle_stage string string Only contacts with this Lifecycle Stage, for example Lead.
query string string Name, email or phone to search for.
limit integer integer Contacts per page.
cursor string string Next page cursor from the previous call.

Request

cURL
curl https://cotlet.dev/api/v1/vtiger/contacts \
  -H "Authorization: Bearer $COTLET_API_KEY"
Python
result = client.call("vtiger", "list_contacts")
Node.js
const result = await cotlet.call('vtiger', 'list_contacts');
CLI
cotlet call vtiger list_contacts

Example response

JSON

{
  "contacts": [
    {
      "record_id": "1523",
      "name": "Dana Whitfield",
      "email": "dana@whitfielddental.example",
      "phone": "+1 555 0142",
      "organization": "Whitfield Dental",
      "lifecycle_stage": "Lead",
      "assigned_to": "Sam Rivera",
      "created_at": "2026-10-21"
    },
    {
      "record_id": "1524",
      "name": "Luis Ortega",
      "email": "luis@ortegabuilds.example",
      "phone": "+1 555 0177",
      "organization": "Ortega Builds",
      "lifecycle_stage": "Lead",
      "assigned_to": "Sam Rivera",
      "created_at": "2026-10-21"
    }
  ],
  "next_cursor": null
}

Sign in once. Your agent does the rest.

Sign up and add the apps you need. Free 7-day trial with 2,000 credits, no card needed.