Vivre API Reference

The Vivre REST API lets you build custom integrations, import and export data, and trigger Vivre actions programmatically. All requests use JSON. The API is available on Pro plans and above.

Base URLhttps://api.invrsys.com/vivre/v1
200 JSON 400 Validation 401 Auth 429 Rate limit

Authentication

All API requests require a Bearer token passed in the Authorization header. Generate your API key in Vivre → Settings → API Keys.

Request header
Authorization: Bearer vv_live_xxxxxxxxxxxxxxxxxxxxxxxx
Content-Type: application/json
X-Workspace-ID: ws_abc123

API keys are workspace-scoped. Each key has a set of permissions (read, write, admin) configured at creation time. Never expose your API key in client-side code.

GETContacts

Contacts are the people and organisations in your Vivre pipeline. Each contact can be linked to multiple deals.

GET/contactsList all contacts
Query parameters
ParameterTypeDescription
limitintegerMax records to return. Default: 50, Max: 500
offsetintegerPagination offset. Default: 0
searchstringFull-text search across name, email, company
score_minintegerFilter by minimum AI score (0–100)
Response
200 OK
{
  "data": [
    {
      "id": "cnt_8821",
      "name": "Rahul Sharma",
      "email": "[email protected]",
      "company": "Acme Technologies",
      "ai_score": 87,
      "stage": "qualified",
      "created_at": "2026-06-01T08:00:00Z"
    }
  ],
  "total": 247,
  "limit": 50,
  "offset": 0
}
POST/contactsCreate a contact
Request body
FieldTypeDescription
namerequiredstringContact full name
emailrequiredstringPrimary email address
companystringCompany or organisation name
stagestringPipeline stage: new | qualified | proposal | won
tagsarrayArray of string tags
Example
POST /contacts
{
  "name": "Priya Kapoor",
  "email": "[email protected]",
  "company": "BlueStone Foods",
  "stage": "qualified",
  "tags": ["inbound", "demo-request"]
}
GET/contacts/:idGet a single contact
Path parameters
ParameterDescription
idrequiredContact ID (e.g. cnt_8821)

POSTDeals

Deals represent sales opportunities in Vivre. A deal belongs to a contact and progresses through your pipeline stages.

POST/dealsCreate a deal
Request body
FieldTypeDescription
contact_idrequiredstringID of the associated contact
titlerequiredstringDeal name or title
valuenumberDeal value in smallest currency unit (paise for INR)
stagestringPipeline stage. Default: new
Example
POST /deals
{
  "contact_id": "cnt_8821",
  "title": "BlueStone Foods — Annual plan",
  "value": 650000,  // ₹6,500
  "stage": "qualified"
}
PUT/deals/:idUpdate deal stage
Common update — move to Won
PUT /deals/dl_4420
{
  "stage": "won",
  "closed_at": "2026-06-13T14:00:00Z"
}

POSTActivities

Log calls, emails, meetings, and notes against a contact or deal. Activities appear in the deal thread and affect AI scoring.

POST/activitiesLog an activity
Request body
FieldTypeDescription
contact_idrequiredstringContact this activity belongs to
typerequiredstringcall | email | meeting | note
notestringContent of the note or meeting summary
POST /activities
{
  "contact_id": "cnt_8821",
  "deal_id": "dl_4420",
  "type": "call",
  "note": "Spoke for 20 mins. Interested in annual plan."
}

Errors & Rate limits

StatusMeaning
200Success
400Validation error — check request body
401Invalid or missing API key
429Rate limit exceeded — Free: 60 req/min, Pro: 600 req/min

Webhook events

Vivre sends webhook events to your endpoint when key actions happen. Register your endpoint in Vivre → Settings → Webhooks.

Available events
contact.created     // New contact added
contact.updated     // Contact fields changed
contact.scored      // AI score recalculated
deal.created        // New deal opened
deal.stage_changed  // Deal moved to a new stage
deal.won            // Deal marked as Won
activity.logged     // Call / email / note logged

Each webhook POST includes an X-Vivre-Signature header for HMAC-SHA256 verification. Respond with HTTP 200 within 5 seconds to acknowledge.

Get Early Access

Join 300+ teams already on the Invrsys waitlist.

Please agree to our policies to continue.

Join Beta