Skip to main content

Overview

Quinn CRM provides a comprehensive RESTful API with 432 endpoints across 69 categories. All endpoints use session-based authentication and return JSON responses.

Interactive API Playground

Test API endpoints directly in your browser with our interactive playground

Base URL

https://your-quinn-instance.replit.app

Authentication

All API endpoints (except login/register) require authentication. See Authentication Guide for details.
// Include session cookie in all requests
fetch('https://your-instance.replit.app/api/customers', {
  credentials: 'include'
});

API Categories

Authentication

Login, register, logout, session management

Customers

Customer CRUD, lifecycle management, analytics

Leads

Lead management, qualification, conversion

Opportunities

Sales pipeline, deal tracking, forecasting

Tasks

Task management, AI-generated actions

Inventory

Equipment catalog, availability, pricing

Transactions

Rental orders, invoices, payment tracking

Communications

Calls, emails, SMS, activity logging

Analytics

Reports, metrics, insights, forecasts

Most Used Endpoints

EndpointMethodDescription
/api/customersGETList all customers
/api/leadsPOSTCreate a new lead
/api/opportunitiesGETView sales pipeline
/api/tasksPOSTCreate task
/api/auth/loginPOSTAuthenticate user
GET /api/customer-intelligence/:idGet AI-powered insights for a customer:
  • Sentiment analysis from recent communications
  • Recommended next actions
  • Upsell/cross-sell opportunities
  • Risk assessment
POST /api/voice-memos/:id/extract-tasksExtract action items from voice recording:
  • GPT-4 powered analysis
  • Automatic priority assignment
  • Owner recommendations
  • Due date suggestions
POST /api/leads/:id/convertConvert lead to customer:
  • Creates customer record
  • Updates unified contact
  • Maintains relationship history
  • Triggers workflow automations
GET /api/opportunities/:id/ai-insightsAI predictions for opportunity:
  • Likely close amount
  • Win probability
  • Expected timeline
  • Recommended actions

Response Format

All endpoints return JSON with consistent structure:

Success Response

{
  "data": [...],
  "pagination": {
    "currentPage": 1,
    "totalPages": 10,
    "totalItems": 487,
    "pageSize": 50
  }
}

Error Response

{
  "error": "Validation failed",
  "message": "Email is required",
  "code": "VALIDATION_ERROR",
  "details": [...]
}

HTTP Status Codes

CodeMeaningDescription
200OKRequest successful
201CreatedResource created successfully
400Bad RequestInvalid request parameters
401UnauthorizedAuthentication required
403ForbiddenInsufficient permissions
404Not FoundResource doesn’t exist
429Too Many RequestsRate limit exceeded
500Internal Server ErrorServer error (contact support)

Rate Limits

Endpoint TypeLimitWindow
Authentication10 requests1 minute
Read (GET)100 requests1 minute
Write (POST/PUT/DELETE)50 requests1 minute
Webhooks1000 requests1 minute
Exceeded limits return 429 Too Many Requests with Retry-After header.

Pagination

List endpoints support pagination:
GET /api/customers?page=2&limit=25
Parameters:
  • page: Page number (default: 1)
  • limit: Items per page (default: 50, max: 100)

Filtering

Most endpoints support filtering:
# Search
GET /api/customers?search=acme

# Filter by field
GET /api/leads?status=qualified

# Date range
GET /api/transactions?startDate=2024-01-01&endDate=2024-12-31

# Multiple filters
GET /api/opportunities?stageId=uuid&probability=75

Sorting

Use sortBy and sortOrder:
GET /api/customers?sortBy=lifetimeOrders&sortOrder=desc
Options:
  • sortOrder: asc or desc
  • sortBy: any field name (varies by endpoint)

Webhooks

Quinn can send real-time webhooks for events:
{
  "event": "lead.created",
  "timestamp": "2024-10-31T12:34:56Z",
  "organizationId": "uuid",
  "data": {
    "id": "uuid",
    "leadName": "John Contractor",
    "email": "[email protected]"
  }
}
Configure webhook URLs in SettingsWebhooks.

SDKs & Libraries

Official SDKs coming soon! For now, use the REST API directly with your favorite HTTP client.
Recommended Libraries:
  • JavaScript: fetch (native) or axios
  • Python: requests or httpx
  • PHP: GuzzleHTTP
  • Ruby: Faraday or HTTParty
  • Go: net/http (stdlib)

OpenAPI Specification

Download the full OpenAPI spec:

openapi.json

Import into Postman, Insomnia, or any OpenAPI-compatible tool

Try It Live

Use the interactive playground on any endpoint page to:
  • ✅ Test requests with your credentials
  • ✅ See real responses from your Quinn instance
  • ✅ View request/response schemas
  • ✅ Generate code snippets

Need Help?