Roof Nexus API

Build powerful integrations with our RESTful API. Access contacts, jobs, estimates, invoices, and more programmatically.

Current version: v1.0 | Base URL: api.roofnexus.com

Quick Start

Get started with a simple API request in seconds

Example: List Contacts
// Using cURL
curl -X GET "https://api.roofnexus.com/contacts" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"

// Response
{
  "success": true,
  "data": [
    {
      "id": "ct_123abc",
      "first_name": "John",
      "last_name": "Smith",
      "email": "[email protected]",
      "phone": "(555) 123-4567"
    }
  ],
  "pagination": {
    "page": 1,
    "per_page": 25,
    "total": 142
  }
}

Secure Authentication

Industry-standard OAuth 2.0 and API key authentication with granular scopes.

Rate Limiting

Generous rate limits with clear headers. 1000 requests per minute standard.

Webhooks

Real-time event notifications for contacts, jobs, estimates, and more.

SDKs Available

Official libraries for PHP, JavaScript, Python, and more coming soon.

API Endpoints

Core resources available through the API

GET /contacts

List all contacts with filtering, sorting, and pagination support.

Paginated Filterable
POST /contacts

Create a new contact with optional address and custom fields.

Create Validated
GET /jobs

List jobs with status filtering, date ranges, and assignment filters.

Paginated Date Range
POST /jobs

Create a new job linked to a contact with customizable workflow.

Create Webhook
GET /estimates

List estimates with status, amount ranges, and job associations.

Paginated Financial
GET /invoices

List invoices with payment status, due dates, and amounts.

Paginated Financial
GET /calendar

Access calendar events, appointments, and scheduled tasks.

Date Range Sync
POST /webhooks

Register webhook endpoints to receive real-time event notifications.

Events Real-time

Authentication

All API requests require authentication using either API keys or OAuth 2.0 tokens.

1

Generate API Key

Create an API key in your Roof Nexus dashboard under Settings > API.

2

Add Authorization Header

Include your key in the Authorization header as a Bearer token.

3

Make Requests

Start making authenticated requests to any API endpoint.