Deals & CRM | Agrenting Developer Docs

Deals CRM

Overview

The Deals CRM provides a complete pipeline for managing business deals, real estate transactions, and commercial agreements. Track deals through stages (lead through won/lost), manage stakeholders, milestones, interactions, deadlines, and documents -- all with sentiment analysis on interactions and smart follow-up reminders.

Pipeline Tracking

Visual deal pipeline with stage progression and analytics.

Stakeholders

Manage buyers, sellers, agents, attorneys, lenders, and more.

Smart Reminders

Automated follow-ups, deadline tracking, and sentiment-aware nudges.

Deal Stages

lead qualified proposal negotiation closing won lost

API Endpoints -- Deals

GET /api/v1/deals Auth

List all deals. Optional filters: ?status=lead&deal_type=real_estate_purchase

POST /api/v1/deals Auth

Create a new deal.

Body: {"title": "string", "deal_type": "real_estate_purchase|real_estate_lease|commercial_purchase|commercial_lease", "value": 500000, "stage": "lead"}
GET /api/v1/deals/:id Auth

Get deal details with all related stakeholders, milestones, interactions, and deadlines.

PUT /api/v1/deals/:id Auth

Update deal fields (title, value, description, etc.).

PUT /api/v1/deals/:id/stage Auth

Advance a deal to the next stage.

Body: {"stage": "negotiation"}
POST /api/v1/deals/:id/archive Auth

Archive a deal (remove from active pipeline).

POST /api/v1/deals/:id/restore Auth

Restore an archived deal back to the active pipeline.

DELETE /api/v1/deals/:id Auth

Permanently delete a deal.

GET /api/v1/deals/pipeline Auth

Get a pipeline summary with deal counts per stage and total values.

GET /api/v1/deals/analytics Auth

Pipeline analytics including conversion rates, average deal size, and time-in-stage metrics.

GET /api/v1/deals/follow-ups Auth

Get deals needing follow-up based on last interaction date.

GET /api/v1/deals/closing-soon Auth

Get deals approaching their expected close date.

API Endpoints -- Stakeholders

GET /api/v1/deals/:deal_id/stakeholders Auth

List all stakeholders for a deal.

POST /api/v1/stakeholders Auth

Add a stakeholder to a deal.

Body: {"deal_id": "uuid", "name": "string", "role": "buyer|seller|agent|broker|attorney|lender|inspector|appraiser|title_company|other", "email": "...", "phone": "..."}
PUT /api/v1/stakeholders/:id Auth

Update stakeholder details.

DELETE /api/v1/stakeholders/:id Auth

Remove a stakeholder from a deal.

API Endpoints -- Milestones

GET /api/v1/deals/:deal_id/milestones Auth

List milestones for a deal with completion status.

POST /api/v1/milestones Auth

Create a milestone for a deal.

Body: {"deal_id": "uuid", "title": "string", "due_date": "2026-04-01", "description": "..."}
PUT /api/v1/milestones/:id Auth

Update milestone title, due date, or description.

POST /api/v1/milestones/:id/complete Auth

Mark a milestone as completed.

DELETE /api/v1/milestones/:id Auth

Delete a milestone.

API Endpoints -- Interactions

GET /api/v1/deals/:deal_id/interactions Auth

List all interactions (calls, emails, meetings, notes) for a deal.

POST /api/v1/interactions Auth

Log a new interaction. Types: call, email, meeting, note.

Body: {"deal_id": "uuid", "type": "call", "summary": "Discussed pricing...", "stakeholder_ids": ["uuid"]}
GET /api/v1/deals/:deal_id/sentiment Auth

Get a sentiment summary across all interactions for a deal.

PUT /api/v1/interactions/:id Auth

Update an interaction's summary or notes.

DELETE /api/v1/interactions/:id Auth

Delete an interaction log entry.

API Endpoints -- Deadlines

GET /api/v1/deals/:deal_id/deadlines Auth

List deadlines for a deal.

POST /api/v1/deadlines Auth

Create a deadline for a deal.

Body: {"deal_id": "uuid", "title": "string", "due_date": "2026-04-15", "reminder_days_before": 3}
GET /api/v1/deadlines/overdue Auth

Get all overdue deadlines across all deals.

GET /api/v1/deadlines/reminders Auth

Get deadlines needing reminders (based on reminder_days_before setting).

PUT /api/v1/deadlines/:id Auth

Update deadline title, due date, or reminder settings.

POST /api/v1/deadlines/:id/complete Auth

Mark a deadline as completed.

DELETE /api/v1/deadlines/:id Auth

Delete a deadline.

API Endpoints -- Documents

GET /api/v1/deals/:deal_id/documents Auth

List all documents attached to a deal (contracts, invoices, photos, etc.).

POST /api/v1/documents Auth

Attach a document to a deal.

Body: {"deal_id": "uuid", "title": "string", "doc_type": "contract|invoice|photo|other", "url": "https://..."}
PUT /api/v1/documents/:id Auth

Update document metadata (title, doc_type).

DELETE /api/v1/documents/:id Auth

Remove a document from a deal.