API Documentation
REST API reference for building integrations with CrewRivet.
https://app.crewrivet.com/apiAuth: Bearer token via
Authorization: Bearer <token> header
Authentication
/api/auth/login Authenticate and receive JWT token
{ email, password } { token, user } /api/auth/register Create a new tenant account
{ email, password, name, trade } { token, user } Contacts
/api/contacts List contacts with search and pagination
{ contacts[], total } /api/contacts Create a new contact
{ name, phone, email?, address? } { contact } /api/contacts/:id Get contact details with history
{ contact, jobs, invoices, messages } /api/contacts/:id Update contact fields
{ name?, phone?, email?, address? } { contact } Invoices
/api/invoices List invoices with status filter
{ invoices[], total, stats } /api/invoices Create a new invoice
{ contactId, lineItems[], description, dueDate } { invoice } /api/invoices/:id Get invoice details
{ invoice } /api/invoices/:id/pdf Download invoice PDF
application/pdf /api/invoices/:id/send Send invoice via SMS
{ success } Quotes
/api/quotes List quotes
{ quotes[], total, stats } /api/quotes Create a quote (flat or tiered)
{ contactId, scopeOfWork, lineItems[], tiers? } { quote } /api/quotes/:id/pdf Download quote PDF
application/pdf /api/quotes/:id/proposal Download branded proposal PDF
application/pdf Jobs
/api/jobs List jobs with status filter
{ jobs[], total, stats } /api/jobs Create a new job
{ contactId, title, scheduledDate, scheduledTime?, address? } { job } /api/jobs/:id/complete Mark job as completed
{ notes? } { job } Expenses
/api/expenses List expenses with filters
{ expenses[], total, stats } /api/expenses Create an expense
{ description, amountCents, category, jobId?, vendor?, expenseDate? } { expense } /api/expenses/receipt OCR scan a receipt photo
multipart/form-data (photo) { expense (auto-filled) } Reports
/api/reports/revenue Revenue by period with trend data
{ revenue[], total, trend } /api/reports/profit-loss Profit & loss statement
{ income, expenses, netProfit, monthly[] } /api/reports/cash-flow Cash flow analysis
{ cashIn, cashOut, net, monthly[] } /api/reports/ar-aging Accounts receivable aging
{ current, days30, days60, days90, totalOutstanding } Email Templates
/api/email-templates List email templates
{ templates[] } /api/email-templates/gallery Browse 12 pre-built templates
{ templates[] } /api/email-templates/gallery/install Install a gallery template
{ galleryId } { template } /api/email-templates/:id/send Send email using template
{ to, variables? } { success } Dispatch
/api/dispatch Get dispatch board (team schedules)
{ team[], unassigned[] } /api/jobs/:id/assign Assign job to team member
{ assignedTo } { job } /api/dispatch/suggest/:jobId AI-powered crew suggestion
{ suggestions[] } /api/dispatch/optimize/:memberId Optimize route for a team member
{ route[], distanceSaved } Tax Reports
/api/reports/tax Schedule C tax data for a given year
{ income, expenses, categories[], netProfit } /api/reports/tax/quarterly Quarterly estimated tax obligations
{ quarters[], totalOwed } Payment Plans
/api/payment-plans Create a payment plan on an invoice
{ invoiceId, installments (2-12) } { plan, installments[] } /api/payment-plans/:id Get payment plan details
{ plan, installments[], payments[] } Receptionist
/api/receptionist/settings Get AI receptionist settings
{ settings } /api/receptionist/settings Update receptionist mode, greeting, language
{ enabled?, mode?, greeting?, language? } { settings } /api/receptionist/calls List AI receptionist call log
{ calls[], total } /api/receptionist/dashboard Receptionist metrics and recent calls
{ metrics, recentCalls[] } Referral Network
/api/referral-network List contractor referral connections
{ connections[], trades[] } /api/referral-network Create a referral connection
{ name, trade, phone?, email?, notes? } { connection } Feedback
/api/ai-help/feedback Submit product feedback (feature request, bug, general)
{ type, message, page? } { success } /api/ai-help/escalate Escalate to support team
{ subject?, message?, email? } { success } AI
/api/ai-help Ask AI about your business data
{ message } { reply, suggestions[] } /api/insights Get proactive dashboard insights
{ insights[] } /api/forecast/ai-projections AI revenue forecasting
{ projections[], summary } Webhooks (Outbound)
/api/webhooks List configured webhook endpoints
{ webhooks[] } /api/webhooks Register a webhook endpoint
{ url, events[], secret? } { webhook } /api/webhooks/:id/test Send a test event to the webhook
{ success, statusCode } Webhook Events
invoice.paid Fired when a customer pays an invoice
{ invoiceId, contactId, amountCents, paidAt } invoice.sent Fired when an invoice is sent to customer
{ invoiceId, contactId } job.completed Fired when a job is marked complete
{ jobId, contactId, title } quote.accepted Fired when a customer accepts a quote
{ quoteId, contactId, signerName } review.submitted Fired when a customer submits a review
{ reviewId, contactId, rating, feedback } lead.created Fired when a new lead is captured
{ contactId, name, phone, source } message.received Fired when an inbound SMS is received
{ messageId, contactId, body } booking.created Fired when a customer books online
{ jobId, contactId, date, time, service }