Skip to content

Leads

Prospects before they become deals, with status and source.

19 endpoints. Every request needs an X-Api-Key header.

List leads

GET/api/v1/leads/

Parameters

cursorquery, string
Opaque pagination cursor (follow next/previous URLs).
searchquery, string
orderingquery, string
Field to order by; prefix with '-' for descending.
statusquery, string
assigned_toquery, string
Response fields 31
created_sourceenum
created_source_labelstring
idstring (uuid)
organisationstring (uuid)
contactobject
lead_originenum
statusstring
sourcestring
mediumstring
channelstring
platformstring
campaignstring
prioritystring
lead_datestring (date)
scoreinteger
assigned_to_uuidobject
assigned_to_usernameobject
assigned_to_first_nameobject
assigned_to_last_nameobject
assigned_to_nameobject
tagsobject
custom_fieldsobject
import_job_idstring (uuid)
is_potential_duplicateboolean
duplicate_reasonenum
notes_countobject
activities_countobject
deals_countobject
tasks_countobject
created_atstring (date-time)
updated_atstring (date-time)
curl "https://api.vivrecrm.com/api/v1/leads/" \
  -H "X-Api-Key: $VIVRE_API_KEY"
Response 200
{
  "count": 1,
  "next": null,
  "previous": null,
  "results": [
    {
      "created_source": "api_key",
      "created_source_label": "",
      "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
      "organisation": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
      "contact": {
        "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
        "first_name": "Asha",
        "last_name": "Rao",
        "full_name": "Asha Rao",
        "email": "[email protected]",
        "phone": "9876543210",
        "phone_country_code": "+91",
        "job_title": "Head of Operations",
        "whatsapp_number": "9876543210",
        "whatsapp_country_code": "+91",
        "company_name": null,
        "company_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
      },
      "lead_origin": "import",
      "status": "new",
      "source": "website",
      "medium": "",
      "channel": "",
      "platform": "",
      "campaign": "",
      "priority": "",
      "lead_date": "2026-10-31",
      "score": 1,
      "assigned_to_uuid": null,
      "assigned_to_username": null,
      "assigned_to_first_name": null,
      "assigned_to_last_name": null,
      "assigned_to_name": null,
      "tags": null,
      "custom_fields": {},
      "import_job_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
      "is_potential_duplicate": true,
      "duplicate_reason": "duplicate",
      "notes_count": null,
      "activities_count": null,
      "deals_count": null,
      "tasks_count": null,
      "created_at": "2026-10-17T09:30:00+05:30",
      "updated_at": "2026-10-17T09:30:00+05:30"
    }
  ]
}

Create lead

POST/api/v1/leads/

Parameters

Idempotency-Keyheader, string
Unique key for safe retries (24h replay window).

Body

contact_idstring, can be null
statusstring
sourcestring, can be null
mediumstring, can be null
channelstring, can be null
platformstring, can be null
campaignstring, can be null
prioritystring, can be null
lead_datestring (date), can be null
scoreinteger
assigned_to_idstring, can be null
custom_fieldsobject
Response fields 31
created_sourceenum
created_source_labelstring
idstring (uuid)
organisationstring (uuid)
contactobject
lead_originenum
statusstring
sourcestring
mediumstring
channelstring
platformstring
campaignstring
prioritystring
lead_datestring (date)
scoreinteger
assigned_to_uuidobject
assigned_to_usernameobject
assigned_to_first_nameobject
assigned_to_last_nameobject
assigned_to_nameobject
tagsobject
custom_fieldsobject
import_job_idstring (uuid)
is_potential_duplicateboolean
duplicate_reasonenum
notes_countobject
activities_countobject
deals_countobject
tasks_countobject
created_atstring (date-time)
updated_atstring (date-time)
curl -X POST "https://api.vivrecrm.com/api/v1/leads/" \
  -H "X-Api-Key: $VIVRE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"status": "new", "source": "website"}'
Response 201
{
  "created_source": "api_key",
  "created_source_label": "",
  "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "organisation": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "contact": {
    "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
    "first_name": "Asha",
    "last_name": "Rao",
    "full_name": "Asha Rao",
    "email": "[email protected]",
    "phone": "9876543210",
    "phone_country_code": "+91",
    "job_title": "Head of Operations",
    "whatsapp_number": "9876543210",
    "whatsapp_country_code": "+91",
    "company_name": null,
    "company_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
  },
  "lead_origin": "import",
  "status": "new",
  "source": "website",
  "medium": "",
  "channel": "",
  "platform": "",
  "campaign": "",
  "priority": "",
  "lead_date": "2026-10-31",
  "score": 1,
  "assigned_to_uuid": null,
  "assigned_to_username": null,
  "assigned_to_first_name": null,
  "assigned_to_last_name": null,
  "assigned_to_name": null,
  "tags": null,
  "custom_fields": {},
  "import_job_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "is_potential_duplicate": true,
  "duplicate_reason": "duplicate",
  "notes_count": null,
  "activities_count": null,
  "deals_count": null,
  "tasks_count": null,
  "created_at": "2026-10-17T09:30:00+05:30",
  "updated_at": "2026-10-17T09:30:00+05:30"
}

Retrieve a lead

GET/api/v1/leads/{public_id}/

Parameters

public_idpath, stringRequired
The record's public id (a UUID).
Response fields 31
created_sourceenum
created_source_labelstring
idstring (uuid)
organisationstring (uuid)
contactobject
lead_originenum
statusstring
sourcestring
mediumstring
channelstring
platformstring
campaignstring
prioritystring
lead_datestring (date)
scoreinteger
assigned_to_uuidobject
assigned_to_usernameobject
assigned_to_first_nameobject
assigned_to_last_nameobject
assigned_to_nameobject
tagsobject
custom_fieldsobject
import_job_idstring (uuid)
is_potential_duplicateboolean
duplicate_reasonenum
notes_countobject
activities_countobject
deals_countobject
tasks_countobject
created_atstring (date-time)
updated_atstring (date-time)
curl "https://api.vivrecrm.com/api/v1/leads/7c9e6679-7425-40de-944b-e07fc1f90ae7/" \
  -H "X-Api-Key: $VIVRE_API_KEY"
Response 200
{
  "created_source": "api_key",
  "created_source_label": "",
  "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "organisation": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "contact": {
    "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
    "first_name": "Asha",
    "last_name": "Rao",
    "full_name": "Asha Rao",
    "email": "[email protected]",
    "phone": "9876543210",
    "phone_country_code": "+91",
    "job_title": "Head of Operations",
    "whatsapp_number": "9876543210",
    "whatsapp_country_code": "+91",
    "company_name": null,
    "company_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
  },
  "lead_origin": "import",
  "status": "new",
  "source": "website",
  "medium": "",
  "channel": "",
  "platform": "",
  "campaign": "",
  "priority": "",
  "lead_date": "2026-10-31",
  "score": 1,
  "assigned_to_uuid": null,
  "assigned_to_username": null,
  "assigned_to_first_name": null,
  "assigned_to_last_name": null,
  "assigned_to_name": null,
  "tags": null,
  "custom_fields": {},
  "import_job_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "is_potential_duplicate": true,
  "duplicate_reason": "duplicate",
  "notes_count": null,
  "activities_count": null,
  "deals_count": null,
  "tasks_count": null,
  "created_at": "2026-10-17T09:30:00+05:30",
  "updated_at": "2026-10-17T09:30:00+05:30"
}

Replace a lead

PUT/api/v1/leads/{public_id}/

Parameters

public_idpath, stringRequired
The record's public id (a UUID).

Body

contact_idstring, can be null
statusstring
sourcestring, can be null
mediumstring, can be null
channelstring, can be null
platformstring, can be null
campaignstring, can be null
prioritystring, can be null
lead_datestring (date), can be null
scoreinteger
assigned_to_idstring, can be null
custom_fieldsobject
Response fields 31
created_sourceenum
created_source_labelstring
idstring (uuid)
organisationstring (uuid)
contactobject
lead_originenum
statusstring
sourcestring
mediumstring
channelstring
platformstring
campaignstring
prioritystring
lead_datestring (date)
scoreinteger
assigned_to_uuidobject
assigned_to_usernameobject
assigned_to_first_nameobject
assigned_to_last_nameobject
assigned_to_nameobject
tagsobject
custom_fieldsobject
import_job_idstring (uuid)
is_potential_duplicateboolean
duplicate_reasonenum
notes_countobject
activities_countobject
deals_countobject
tasks_countobject
created_atstring (date-time)
updated_atstring (date-time)
curl -X PUT "https://api.vivrecrm.com/api/v1/leads/7c9e6679-7425-40de-944b-e07fc1f90ae7/" \
  -H "X-Api-Key: $VIVRE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"status": "new", "source": "website"}'
Response 200
{
  "created_source": "api_key",
  "created_source_label": "",
  "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "organisation": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "contact": {
    "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
    "first_name": "Asha",
    "last_name": "Rao",
    "full_name": "Asha Rao",
    "email": "[email protected]",
    "phone": "9876543210",
    "phone_country_code": "+91",
    "job_title": "Head of Operations",
    "whatsapp_number": "9876543210",
    "whatsapp_country_code": "+91",
    "company_name": null,
    "company_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
  },
  "lead_origin": "import",
  "status": "new",
  "source": "website",
  "medium": "",
  "channel": "",
  "platform": "",
  "campaign": "",
  "priority": "",
  "lead_date": "2026-10-31",
  "score": 1,
  "assigned_to_uuid": null,
  "assigned_to_username": null,
  "assigned_to_first_name": null,
  "assigned_to_last_name": null,
  "assigned_to_name": null,
  "tags": null,
  "custom_fields": {},
  "import_job_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "is_potential_duplicate": true,
  "duplicate_reason": "duplicate",
  "notes_count": null,
  "activities_count": null,
  "deals_count": null,
  "tasks_count": null,
  "created_at": "2026-10-17T09:30:00+05:30",
  "updated_at": "2026-10-17T09:30:00+05:30"
}

Update a lead

PATCH/api/v1/leads/{public_id}/

Parameters

public_idpath, stringRequired
The record's public id (a UUID).

Body

contact_idstring, can be null
statusstring
sourcestring, can be null
mediumstring, can be null
channelstring, can be null
platformstring, can be null
campaignstring, can be null
prioritystring, can be null
lead_datestring (date), can be null
scoreinteger
assigned_to_idstring, can be null
custom_fieldsobject
Response fields 31
created_sourceenum
created_source_labelstring
idstring (uuid)
organisationstring (uuid)
contactobject
lead_originenum
statusstring
sourcestring
mediumstring
channelstring
platformstring
campaignstring
prioritystring
lead_datestring (date)
scoreinteger
assigned_to_uuidobject
assigned_to_usernameobject
assigned_to_first_nameobject
assigned_to_last_nameobject
assigned_to_nameobject
tagsobject
custom_fieldsobject
import_job_idstring (uuid)
is_potential_duplicateboolean
duplicate_reasonenum
notes_countobject
activities_countobject
deals_countobject
tasks_countobject
created_atstring (date-time)
updated_atstring (date-time)
curl -X PATCH "https://api.vivrecrm.com/api/v1/leads/7c9e6679-7425-40de-944b-e07fc1f90ae7/" \
  -H "X-Api-Key: $VIVRE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"status": "new", "source": "website"}'
Response 200
{
  "created_source": "api_key",
  "created_source_label": "",
  "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "organisation": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "contact": {
    "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
    "first_name": "Asha",
    "last_name": "Rao",
    "full_name": "Asha Rao",
    "email": "[email protected]",
    "phone": "9876543210",
    "phone_country_code": "+91",
    "job_title": "Head of Operations",
    "whatsapp_number": "9876543210",
    "whatsapp_country_code": "+91",
    "company_name": null,
    "company_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
  },
  "lead_origin": "import",
  "status": "new",
  "source": "website",
  "medium": "",
  "channel": "",
  "platform": "",
  "campaign": "",
  "priority": "",
  "lead_date": "2026-10-31",
  "score": 1,
  "assigned_to_uuid": null,
  "assigned_to_username": null,
  "assigned_to_first_name": null,
  "assigned_to_last_name": null,
  "assigned_to_name": null,
  "tags": null,
  "custom_fields": {},
  "import_job_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "is_potential_duplicate": true,
  "duplicate_reason": "duplicate",
  "notes_count": null,
  "activities_count": null,
  "deals_count": null,
  "tasks_count": null,
  "created_at": "2026-10-17T09:30:00+05:30",
  "updated_at": "2026-10-17T09:30:00+05:30"
}

Delete a lead

DELETE/api/v1/leads/{public_id}/

Parameters

public_idpath, stringRequired
The record's public id (a UUID).
curl -X DELETE "https://api.vivrecrm.com/api/v1/leads/7c9e6679-7425-40de-944b-e07fc1f90ae7/" \
  -H "X-Api-Key: $VIVRE_API_KEY"

Bulk reassign owner

POST/api/v1/leads/bulk-assign/

Body

lead_idsarray of string (uuid)Required
All must be live leads of the organization, else 400.
assigned_to_idstring (uuid)Required
Public id of a member of the organization. Null is not accepted.
Response fields 3
updated_countinteger
lead_idsarray of string (uuid)
Public ids of the leads reassigned (leads a non-admin cannot see under "Assigned only" visibility are left out).
assigned_to_idstring (uuid)
The new owner's public id, as sent.
curl -X POST "https://api.vivrecrm.com/api/v1/leads/bulk-assign/" \
  -H "X-Api-Key: $VIVRE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"lead_ids": ["7c9e6679-7425-40de-944b-e07fc1f90ae7"], "assigned_to_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"}'
Response 200
{
  "updated_count": 1,
  "lead_ids": [
    "7c9e6679-7425-40de-944b-e07fc1f90ae7"
  ],
  "assigned_to_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
}

Bulk status update

POST/api/v1/leads/bulk-update-status/

Body

lead_idsarray of string (uuid)Required
All must be live leads of the organization, else 400.
statusstringRequired
One of the organization's lead statuses (400 otherwise).
Response fields 5
updated_countinteger
lead_idsarray of string (uuid)
Public ids of the leads updated.
statusstring
skipped_countinteger
Present only when some leads were skipped (not assigned to the caller under assigned_only).
messagestring
Present only with skipped_count.
curl -X POST "https://api.vivrecrm.com/api/v1/leads/bulk-update-status/" \
  -H "X-Api-Key: $VIVRE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"lead_ids": ["7c9e6679-7425-40de-944b-e07fc1f90ae7"], "status": "new"}'
Response 200
{
  "updated_count": 1,
  "lead_ids": [
    "7c9e6679-7425-40de-944b-e07fc1f90ae7"
  ],
  "status": "new",
  "skipped_count": 1,
  "message": ""
}

Bulk soft-delete

POST/api/v1/leads/bulk-delete/

Body

idsarray of string (uuid)
Lead public ids. A value that is not a UUID is reported in failed.
lead_idsarray of string (uuid)
Older name for ids.
Response fields 4
deletedarray of string (uuid)
The ids that were deleted, as strings, in request order (duplicates removed).
deleted_countinteger
failedarray of object
Ids not deleted. An id that is not a UUID, is in another organization, is already deleted or is outside the caller's visibility is reported as "Not found.".
failed_countinteger
curl -X POST "https://api.vivrecrm.com/api/v1/leads/bulk-delete/" \
  -H "X-Api-Key: $VIVRE_API_KEY"
Response 200
{
  "deleted": [
    "7c9e6679-7425-40de-944b-e07fc1f90ae7"
  ],
  "deleted_count": 1,
  "failed": [
    {
      "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
      "reason": ""
    }
  ],
  "failed_count": 1
}

Merge duplicate leads of one contact (lead.bulk_merge; owners and admins by default)

POST/api/v1/leads/bulk-merge/

The kept lead takes over the duplicates' deals, tasks, notes, activity, AI jobs, custom values (its own win) and tags; the duplicates are soft-deleted. Only leads of the same contact merge (400 otherwise). Sends lead.deleted.v1 per duplicate, deal.updated.v1 per moved deal and lead.merged.v1.

Body

primary_lead_idstring (uuid)Required
The lead to keep.
duplicate_lead_idsarray of string (uuid)Required
Must not contain the kept lead. All must be live leads of the same contact that the caller can see.
fieldsobject
Values to keep, checked as an edit of the kept lead is (400 with the lead's own errors). Only these keys are accepted.
Response fields 3
primary_lead_idstring (uuid)
merged_countinteger
Duplicates merged in and soft-deleted.
leadobject
curl -X POST "https://api.vivrecrm.com/api/v1/leads/bulk-merge/" \
  -H "X-Api-Key: $VIVRE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"primary_lead_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7", "duplicate_lead_ids": ["7c9e6679-7425-40de-944b-e07fc1f90ae7"]}'
Response 200
{
  "primary_lead_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "merged_count": 1,
  "lead": {
    "created_source": "api_key",
    "created_source_label": "",
    "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
    "organisation": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
    "contact": {
      "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
      "first_name": "Asha",
      "last_name": "Rao",
      "full_name": "Asha Rao",
      "email": "[email protected]",
      "phone": "9876543210",
      "phone_country_code": "+91",
      "job_title": "Head of Operations",
      "whatsapp_number": "9876543210",
      "whatsapp_country_code": "+91",
      "company_name": null,
      "company_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
    },
    "lead_origin": "import",
    "status": "new",
    "source": "website",
    "medium": "",
    "channel": "",
    "platform": "",
    "campaign": "",
    "priority": "",
    "lead_date": "2026-10-31",
    "score": 1,
    "assigned_to_uuid": null,
    "assigned_to_username": null,
    "assigned_to_first_name": null,
    "assigned_to_last_name": null,
    "assigned_to_name": null,
    "tags": null,
    "custom_fields": {},
    "import_job_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
    "is_potential_duplicate": true,
    "duplicate_reason": "duplicate",
    "notes_count": null,
    "activities_count": null,
    "deals_count": null,
    "tasks_count": null,
    "created_at": "2026-10-17T09:30:00+05:30",
    "updated_at": "2026-10-17T09:30:00+05:30"
  }
}

Add tags to many leads

POST/api/v1/leads/bulk-tag/

Body

entity_idsarray of string (uuid)Required
Public ids of the records. All must be live records of the organization, else 400.
tag_idstring (uuid)Required
The tag's public id.
Response fields 3
created_countinteger
Assignments added (records that already had the tag are not counted).
entity_idsarray of string (uuid)
Public ids of the records acted on, leaving out leads and deals the caller cannot see.
tag_idstring (uuid)
curl -X POST "https://api.vivrecrm.com/api/v1/leads/bulk-tag/" \
  -H "X-Api-Key: $VIVRE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"entity_ids": ["7c9e6679-7425-40de-944b-e07fc1f90ae7"], "tag_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"}'
Response 200
{
  "created_count": 1,
  "entity_ids": [
    "7c9e6679-7425-40de-944b-e07fc1f90ae7"
  ],
  "tag_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
}

Remove tags from many leads

POST/api/v1/leads/bulk-untag/

Body

entity_idsarray of string (uuid)Required
Public ids of the records. All must be live records of the organization, else 400.
tag_idstring (uuid)Required
The tag's public id.
Response fields 3
removed_countinteger
Tag assignments deleted.
entity_idsarray of string (uuid)
Public ids of the records acted on, leaving out leads and deals the caller cannot see.
tag_idstring (uuid)
curl -X POST "https://api.vivrecrm.com/api/v1/leads/bulk-untag/" \
  -H "X-Api-Key: $VIVRE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"entity_ids": ["7c9e6679-7425-40de-944b-e07fc1f90ae7"], "tag_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"}'
Response 200
{
  "removed_count": 1,
  "entity_ids": [
    "7c9e6679-7425-40de-944b-e07fc1f90ae7"
  ],
  "tag_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
}

Lead counts for the list header

GET/api/v1/leads/stats/

Response fields 5
totalinteger
avg_scorenumber
Mean score rounded to 2 places; null when there are no leads.
mineinteger
Assigned to the caller.
unassignedinteger
by_statusobject
Count per status. Every status in the organization's list appears (0 included), plus any stored status outside it.
curl "https://api.vivrecrm.com/api/v1/leads/stats/" \
  -H "X-Api-Key: $VIVRE_API_KEY"
Response 200
{
  "total": 1,
  "avg_score": 120000.0,
  "mine": 1,
  "unassigned": 1,
  "by_status": {}
}

Ids of every lead the list shows

GET/api/v1/leads/ids/

"Select all N matching". Takes the list's own query (search, filter (compound JSON) and ordering), and answers the public ids in the list's order, up to 10,000, with the total. Pass them in batches to the bulk actions.

Response fields 3
countinteger
Every match, which may be more than limit.
idsarray of string (uuid)
Public ids of the first limit matches, in the list's order.
limitinteger
The most ids answered: 10,000.
curl "https://api.vivrecrm.com/api/v1/leads/ids/" \
  -H "X-Api-Key: $VIVRE_API_KEY"
Response 200
{
  "count": 1,
  "ids": [
    "7c9e6679-7425-40de-944b-e07fc1f90ae7"
  ],
  "limit": 1
}

A lead's activity timeline

GET/api/v1/leads/{public_id}/activities/

Parameters

public_idpath, stringRequired
Response fields 19
sourceenum
source_labelstring
idstring (uuid)
organisationstring (uuid)
entity_typeenum
entity_idstring
entity_public_idobject
typeenum
actor_typeenum
created_by_uuidobject
created_by_usernameobject
created_by_first_nameobject
created_by_last_nameobject
created_by_nameobject
is_outboundboolean
response_time_secondsinteger
contentstring
created_atstring (date-time)
emailobject
curl "https://api.vivrecrm.com/api/v1/leads/7c9e6679-7425-40de-944b-e07fc1f90ae7/activities/" \
  -H "X-Api-Key: $VIVRE_API_KEY"
Response 200
{
  "count": 1,
  "next": null,
  "previous": null,
  "results": [
    {
      "source": "api_key",
      "source_label": "",
      "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
      "organisation": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
      "entity_type": "Contact",
      "entity_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
      "entity_public_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
      "type": "email_sent",
      "actor_type": "human",
      "created_by_uuid": null,
      "created_by_username": null,
      "created_by_first_name": null,
      "created_by_last_name": null,
      "created_by_name": null,
      "is_outbound": true,
      "response_time_seconds": 1,
      "content": "Called, wants a demo on Friday.",
      "created_at": "2026-10-17T09:30:00+05:30",
      "email": "[email protected]"
    }
  ]
}

Restore a deleted lead

POST/api/v1/leads/{public_id}/restore/

Parameters

public_idpath, stringRequired
Response fields 31
created_sourceenum
created_source_labelstring
idstring (uuid)
organisationstring (uuid)
contactobject
lead_originenum
statusstring
sourcestring
mediumstring
channelstring
platformstring
campaignstring
prioritystring
lead_datestring (date)
scoreinteger
assigned_to_uuidobject
assigned_to_usernameobject
assigned_to_first_nameobject
assigned_to_last_nameobject
assigned_to_nameobject
tagsobject
custom_fieldsobject
import_job_idstring (uuid)
is_potential_duplicateboolean
duplicate_reasonenum
notes_countobject
activities_countobject
deals_countobject
tasks_countobject
created_atstring (date-time)
updated_atstring (date-time)
curl -X POST "https://api.vivrecrm.com/api/v1/leads/7c9e6679-7425-40de-944b-e07fc1f90ae7/restore/" \
  -H "X-Api-Key: $VIVRE_API_KEY"
Response 200
{
  "created_source": "api_key",
  "created_source_label": "",
  "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "organisation": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "contact": {
    "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
    "first_name": "Asha",
    "last_name": "Rao",
    "full_name": "Asha Rao",
    "email": "[email protected]",
    "phone": "9876543210",
    "phone_country_code": "+91",
    "job_title": "Head of Operations",
    "whatsapp_number": "9876543210",
    "whatsapp_country_code": "+91",
    "company_name": null,
    "company_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
  },
  "lead_origin": "import",
  "status": "new",
  "source": "website",
  "medium": "",
  "channel": "",
  "platform": "",
  "campaign": "",
  "priority": "",
  "lead_date": "2026-10-31",
  "score": 1,
  "assigned_to_uuid": null,
  "assigned_to_username": null,
  "assigned_to_first_name": null,
  "assigned_to_last_name": null,
  "assigned_to_name": null,
  "tags": null,
  "custom_fields": {},
  "import_job_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "is_potential_duplicate": true,
  "duplicate_reason": "duplicate",
  "notes_count": null,
  "activities_count": null,
  "deals_count": null,
  "tasks_count": null,
  "created_at": "2026-10-17T09:30:00+05:30",
  "updated_at": "2026-10-17T09:30:00+05:30"
}

A lead's tags

GET/api/v1/leads/{public_id}/tags/

Parameters

public_idpath, stringRequired
curl "https://api.vivrecrm.com/api/v1/leads/7c9e6679-7425-40de-944b-e07fc1f90ae7/tags/" \
  -H "X-Api-Key: $VIVRE_API_KEY"
Response 200
[
  {
    "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
    "organisation": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
    "name": "Kaveri Foods",
    "color_hex": "",
    "created_at": "2026-10-17T09:30:00+05:30"
  }
]

Tag a lead

POST/api/v1/leads/{public_id}/tags/

Parameters

public_idpath, stringRequired

Body

tag_public_idstring (uuid)Required
A tag of the organization not already on this record (400 otherwise).
Response fields 5
idstring (uuid)
organisationstring (uuid)
namestring
color_hexstring
created_atstring (date-time)
curl -X POST "https://api.vivrecrm.com/api/v1/leads/7c9e6679-7425-40de-944b-e07fc1f90ae7/tags/" \
  -H "X-Api-Key: $VIVRE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"tag_public_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"}'
Response 201
{
  "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "organisation": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "name": "Kaveri Foods",
  "color_hex": "",
  "created_at": "2026-10-17T09:30:00+05:30"
}

Remove a tag from a lead

DELETE/api/v1/leads/{public_id}/tags/{tag_id}/

Parameters

public_idpath, stringRequired
tag_idpath, stringRequired
curl -X DELETE "https://api.vivrecrm.com/api/v1/leads/7c9e6679-7425-40de-944b-e07fc1f90ae7/tags/7c9e6679-7425-40de-944b-e07fc1f90ae7/" \
  -H "X-Api-Key: $VIVRE_API_KEY"