Key takeaways
- "We have an API" can still mean paid, partial or capped. Ask for the plan, the price and the limits in writing.
- Enphase Watt has the lowest published limit and Google Solar API the highest.
- Polling 300 projects every 5 minutes takes 60 calls a minute. That is 66.7% of Aurora’s default limit of 90 a minute, before any other call.
- OpenSolar caps each organisation at 10,000 get-project calls a day. That allows one sweep of 300 projects every 43.2 minutes.
- Six company questions, listed below, close the gaps before you sign.
To compare tools that move data between systems, see the best solar workflow automation software.
API at a glance
An API is the programmable door to a tool. Webhooks and ready-made integrations use it.
| Item | Detail |
|---|---|
| Formula | Shortest safe sweep (minutes) = objects ÷ per-minute limit. For a daily or monthly cap, objects × minutes in the period ÷ cap. Use the largest result. |
| Typical range | 10 to 600 requests a minute in the four companies covered. Daily and monthly caps vary by plan. |
| Where it matters | CRM sync, proposal tools, lead pre-screening, monitoring dashboards, bulk project imports. |
| Standard or rule | No single standard. Each company’s documentation is the contract. |
| In software | Aurora, OpenSolar, Enphase and Google Solar API publish documentation (table below). |
Why does an API matter for installers?
An API lets your systems do three jobs without retyping data. They can create and read designs, sync project records and pull monitoring data. It also affects how easily you can leave a company.
Design. Aurora’s documentation says you can create many PV designs for one project. It also lists an AHJ lookup call. Google’s Solar API returns building insights (location, size and solar potential). It also returns raster layers, such as a digital surface model and hourly shade.
Project data. The OpenSolar API documentation menu lists project management, pricing and payment options, and hardware components. A CRM can use those endpoints to create or update a project, or read its system details.
Monitoring. Enphase’s Watt plan covers system details, site-level production and consumption, and EV charger monitoring. The plans page lists device-level data for Kilowatt and Megawatt. It does not list it for Watt. See solar monitoring software for the wider category.
Money and risk follow from the same facts. A cap you did not plan for stalls a sync. A fee you missed can block new projects. A tool with no usable API makes company lock-in worse.

Figure 1. At 300 objects, one call each, Aurora’s per-minute limit allows a sweep every 3.3 minutes, OpenSolar’s daily cap every 43.2 minutes and Enphase Kilowatt’s monthly cap every 259.2 minutes. The limits cover different endpoints, so compare the shapes, not a ranking. No daily or monthly cap is stated on the Aurora page.
How do API authentication and rate limits work?
Authentication proves who is calling. A rate limit caps your calls in a period. A call over the cap is refused until the period resets.
- Enphase: the application has an API key, client ID and client secret. The FAQ says tokens must use Enphase Cloud credentials, not developer account credentials. Each telemetry call covers at most 7 days.
- Google Solar API: you must turn on billing for the project. You send an API key or OAuth token with every request. The limit is 600 queries a minute across Building Insights and Data Layers.
- Aurora: the response codes page says a 401 may mean a missing or wrong token. A 429 means you passed the rate limit. The rate-limits page says to read the response body or the Retry-After header. It also says to use webhooks instead of polling. It adds that most customers who hit the throttle run polling processes.
- OpenSolar: limits apply per user and per organisation, and "all endpoints" have a quota even when unlisted. The page gives no status code for a refused call. It advises exponential backoff. That means waiting longer after each failed retry.
For push alerts that skip polling, see webhooks. For ready-made links built on APIs, see integrations and marketplaces.
Worked example: 300 projects against documented limits
Polling 300 objects every 5 minutes fits Aurora’s default limit. It breaks OpenSolar’s daily cap and Enphase’s monthly caps. We assume one call per object per sweep and a 30-day month. The 300-project case matches the one on our webhooks page.
| Limit read (October 2026) | Shortest safe sweep, 300 objects | If you poll every 5 minutes |
|---|---|---|
| Aurora: 90 requests a minute (default) | 3.3 minutes | 60 calls a minute, 66.7% of the limit. 86,400 calls a day |
| OpenSolar get project: 100 a minute per user, 10,000 a day per organisation | 43.2 minutes | 86,400 calls a day, 8.6 times the daily cap |
| Enphase Kilowatt: 50 a minute, 50,000 hits a month | 259.2 minutes (4.3 hours) | 2,592,000 hits a month, 51.8 times the cap |
| Enphase Watt: 10 a minute, 1,000 hits a month | 12,960 minutes (9 days) | Not usable. One pull a day is 9,000 hits a month |
Three more checks use the same limits:
- Bulk import: OpenSolar’s create-project limit is 10 a minute per user. Loading 500 projects takes at least 50 minutes.
- History backfill: one year of Enphase telemetry needs 53 requests per system (365 days ÷ 7, rounded up). For 300 systems that is 15,900 hits, or 31.8% of one Kilowatt month. At 50 a minute it takes 5.3 hours.
- Lead pre-screening: 5,000 roofs at 600 queries a minute take 8.3 minutes with one call each. If a second call per roof shares the cap, it takes 16.7 minutes. The page does not say whether the 600 is shared.
The fix for polling is rarely a bigger plan. Use push events where offered. Sweep only the objects that changed. Try your own numbers below.
Enter the objects you poll and the limits your company publishes. The calculator gives the shortest safe sweep and your share of each limit.
How solar software handles an API
All four companies publish API documentation, but the cost and access terms differ. Aurora and OpenSolar document webhooks. Enphase prices by plan tier, and Google bills by SKU.
| Software | Publishes API documentation? | Limits as documented |
|---|---|---|
| Aurora Solar | Yes | 90 a minute default. Endpoints may set their own. Retry-After header |
| OpenSolar | Yes | Per-user and per-organisation throttles. Create project 10 a minute. Get project 100 a minute |
| Enphase Enlighten | Yes | Watt 10 a minute, 1,000 hits a month. Kilowatt 50 a minute, 50,000. Megawatt 100 a minute, 300,000 |
| Google Solar API | Yes | 600 queries a minute for Building Insights and Data Layers |
- Aurora Solar: covers projects, designs, assets, AHJ lookup and webhooks. The v2018.01 webhooks page names Sync API or Design API access. The v2024.05 page does not say. Price not stated.
- OpenSolar: the menu lists system, project management, pricing and payment options, hardware, teams and webhooks. API Access has a 30-day free trial, then a fee for each new project. Amount not stated.
- Enphase Enlighten: covers system details, production, consumption, device-level data and EV charger monitoring. Watt is free. Kilowatt is USD 249 a month and Megawatt USD 999 a month, plus USD 0.10 per Live Status hit. Extra hits cost USD 0.005 each (plans page, October 2026).
- Google Solar API: covers building insights, data layers and GeoTIFF rasters. Billing must be on, and you pay by SKU. The limits page still shows a 2025 credit date, so check the current threshold.
Google’s overview page says that for an EEA billing address, effective 8 July 2025, "certain content from the Solar API will no longer be returned". Check the page for what is affected. Only these four companies’ API pages are rated here. "Price not stated" above means the page we read gives no price. For a wider comparison, see the best all-in-one solar software.
What should you ask a company about its API?
Ask these questions, in this order, before you sign. Each one matches a gap in the documents above.
| Question | Why it matters | What the documents above show |
|---|---|---|
| 1. Is the API in my plan, and what does it cost? | A free app can have a paid API. | OpenSolar charges per new project after a trial. Enphase prices by plan tier (Watt, Kilowatt, Megawatt). Google needs billing. |
| 2. How do we authenticate, and who must authorise? | Tokens tied to a customer login add steps to onboarding. | Enphase tokens use Enphase Cloud credentials. Google takes an API key or OAuth token. |
| 3. What are the limits per user, per organisation, per day and per month? | The tightest limit sets your sync speed. | Aurora states one default. OpenSolar lists per-endpoint figures. Enphase adds monthly caps. |
| 4. What happens at the limit? | Your code needs a retry rule. | Aurora names 429 and Retry-After. OpenSolar names no status code. |
| 5. Can it push events so we do not poll? | Push saves calls and gives faster updates. | Aurora and OpenSolar document webhooks. The Enphase FAQ page mentions none. |
| 6. Can we export our data if we leave? | An API that cannot return your records locks you in. | Not checked here. See data export and portability. |
Common mistakes with an API
FAQs
Does Aurora Solar have an API?
Yes. Aurora publishes API documentation with a default limit of 90 requests a minute. Its pages cover projects, designs, assets, AHJ lookup and webhooks. Price and access terms are not stated on the pages we read.
Do I need a developer to use a solar software API?
Usually someone must write or set up the requests. The company documents are written for developers. A no-code connector can do the same job. Check the integrations list first.
Is a solar software API free?
Not by default. Enphase’s Watt plan is free for 1,000 hits a month. OpenSolar’s API Access has a 30-day trial, then a fee per new project. Google needs billing turned on.
What happens when I hit a rate limit?
The call is refused until the period resets. Aurora documents a 429 response and a Retry-After header. OpenSolar advises retrying with exponential backoff. It names no status code.
Can an API pull my customers’ inverter data?
For Enphase systems, yes, within the plan limits. The Watt plan returns site-level production and consumption. Device-level data is listed for Kilowatt and above. You make tokens with Enphase Cloud credentials.
How is an API different from an integration?
An API is the raw, documented door. An integration is a ready-made link that someone built on top of it. Our integrations page covers the second.
Related terms
- Webhooks: push messages a company sends when an event happens.
- Integrations: ready-made connections between tools.
- Data export and portability: getting your records out of a tool.
Next step: run your own polling numbers in the calculator above, then put the six company questions to each tool on the best solar workflow automation software list.
Sources
- Google Solar API usage and billing, page showing "Last updated 2026-10-28 UTC" (checked 30 October 2026).
- Google Solar API overview (checked 30 October 2026).
- Enphase developer plans (checked 30 October 2026).
- Enphase API FAQ (checked October 2026).
- Aurora API rate limits (checked October 2026).
- Aurora API HTTP response codes (checked October 2026).
- Aurora API projects reference and webhooks reference (v2024.05) and v2018.01 (checked October 2026).
- OpenSolar throttle limits and API overview (checked October 2026).
- OpenSolar API Access trial details, updated 31 March 2026 (checked October 2026).
Last updated 30 October 2026. Next scheduled review: 30 January 2027.