Getting Started with the Enerflo API

Welcome to the Enerflo Developer Hub. This page will orient you on how Enerflo's APIs work, which one to use for your integration, and where to go next.

The Short Version

Enerflo has two APIs. Which one you need depends on where in the solar deal lifecycle the data you're working with lives:

  • Creating or receiving a lead? → Use the V1 REST API
  • Pre-signing deal activity? → Use the V2 GraphQL API
  • Post-signing install & customer data? → Use the V1 REST API
  • Building a full CRM integration? → You'll likely use all three touchpoints

The Deal Lifecycle

The flow is: V1 lead → V2 deal (via project submit) → V1 post-signing install.

Leads are created in V1. When a project is submitted, a V2 Deal object is created and owns everything through signing. After signing, the V1 Install Tracker takes over.

Lead V1 REST · Lead object V1 Deal Creation V2 GraphQL — pre-signing V2 Proposal & design Deal object · proposals, utility bills, lending Deal state Pre-signing fields · deal-stage events Agreement Signed · handoff to V1 Project Submission Install tracker V1 REST · Install & Customer objects V1 V1 REST API V2 GraphQL API Both APIs run simultaneously — most integrations use both.

Note: The V1 Install Tracker is created at a specific moment in the V2 deal flow. See When Does the V1 Install Tracker Get Created? for details on that handoff.


V1 vs. V2 at a glance

Enerflo 1.0 (REST)Enerflo 2.0 (GraphQL)
Deal phaseLeads (pre-deal) + post-signingPre-signing
Primary objectsLead, Install, CustomerDeal
ProtocolRESTGraphQL
AuthAPI KeyBearer Token
API keysSeparate from V2Separate from V1

Important: V1 and V2 use different API keys. Make sure you're generating and authenticating with the right key for the API you're calling.


When to use each API

Use V1 (REST) when you need to:

  • Submit or retrieve leads (pre-deal)
  • Access install records and customer data (post-signing)
  • Work with data on either end of the deal lifecycle
  • Listen to lead-stage or install-stage webhook events

Use V2 (GraphQL) when you need to:

  • Read or update deal state (pre-signing)
  • Access proposals, utility bills, lending products, or deal-stage fields
  • Subscribe to deal-level events and lifecycle changes
  • Build flexible queries across the deal object

Where to go next

🔑 Set up authentication

📖 Explore the APIs

🔔 Set up webhooks & events

🔗 Build a CRM integration

This guide covers common business use cases and best practices for data exchange. CRM-specific connectors, field mapping, and surrounding business logic are outside its scope — those decisions are left to your team.


Questions?

Most questions are answered in the sections linked above. If you get stuck, reach out to your Enerflo contact or submit a request through the API Docs Feedback Form.