Get All Projects
Retrieve a paginated list of all projects (quotations) from your Solar Proof account, with optional expanded details including user and company information.
https://solarproof.com.au/apidata.php
Description
Returns a comprehensive list of all projects (solar quotations/proposals) in your Solar Proof account.
Each project includes detailed solar system specifications, pricing, financing details, and site information.
Use the expanded=1
parameter to include additional user and company details. Results are
paginated with 50 projects per page.
page
parameter to retrieve additional pages of results.
expanded=1
to include user company information,
pricing items/systems, battery details, and customer statuses. This provides complete context
for each project.
Request Parameters
Query Parameters
Parameter | Type | Required | Description |
---|---|---|---|
api_key |
string | Required | Your Solar Proof API key |
action |
string | Required | Must be set to "getallprojects" |
page |
integer | Optional | Page number for pagination (default: 1). Each page returns 50 projects. Page 1: projects 1-50, Page 2: projects 51-100, etc. |
expanded |
integer | Optional | Set to 1 to retrieve expanded project information including user details, pricing items, and battery info |
Response Structure
Due to the extensive number of fields (60+ in project_info alone), please see the expandable sections below for complete documentation.
The response is an array where each item contains two arrays:
project_info
- Core project details (system specs, pricing, site info)expanded_info
- Additional user/company details (only whenexpanded=1
)
Key Project Information Fields
project_id
- Unique IDquotenickname
- Project namecustomer_id
- Associated customerafterrebatecost
- Final pricepanelqty
- Number of panelspaneltype
- Panel modelinvertertype
- Inverter modelsiteaddress
- JSON addresssigned_at
- Signature dateproposal_link
- PDF URLSee full example response below for complete field list
Example Response
[
{
"project_info": [{
"project_id": "2143",
"quotenickname": "Project #2143",
"user_id": "321",
"battery_id": "5",
"batteryqty": "1",
"afterrebatecost": "15500",
"quotecreationdate": "2022-08-15 00:38:24",
"signed_at": "2022-08-20 14:30:00",
"customer_id": "80008",
"siteaddress": "{\"streetnum\":\"447\",\"street\":\"Collins St\",\"suburb\":\"Melbourne\",\"state\":\"VIC\",\"postcode\":\"3000\",\"country\":\"AU\"}",
"rooftype": "Tin",
"roofheight": "Single Storey",
"dailykwhuse": "20",
"costperkwh": "0.265",
"exportvalue": "0.08",
"paneltype": "365W - LONGI Solar - (LR6-72PE-365M)",
"panelwattage": "365",
"panelqty": "33",
"invertertype": "GOODWE 5kW (GW5000-DT)",
"inverterqty": "1",
"racking": "Clenergy",
"stcvalue": "37",
"stcqty": "114",
"financetype": "finance",
"proposal_link": "/uploads/pdfs/2143/proposal_2143.pdf",
"panel_model": "LR6-72PE-365M",
"panel_brand": "LONGI Solar",
"inverter_model": "Symo 15.0-3-M",
"inverter_brand": "Fronius"
}],
"expanded_info": [{
"username": "jsmith@solarproof.com.au",
"name": "Jim Smith",
"email": "jsmith@solarproof.com.au",
"companyname": "Solar Proof",
"companyaddress": "PO Box 630, Mullumbimby, NSW, 2482",
"companyphone": "07 3054 4308",
"batterycapacity": "9.8",
"batteryname": "LG Chem RESU 9.8kWh",
"batterybrand": "LG",
"batterymodel": "RESU 9.8kWh",
"company_id": "321"
}]
}
]
Example Requests
Basic Request
curl -X GET "https://solarproof.com.au/apidata.php?action=getallprojects&page=1&api_key=YOUR_API_KEY"
Request with Expanded Information
curl -X GET "https://solarproof.com.au/apidata.php?action=getallprojects&page=1&expanded=1&api_key=YOUR_API_KEY"
const apiKey = 'YOUR_API_KEY';
const page = 1;
const expanded = 1;
const url = `https://solarproof.com.au/apidata.php?action=getallprojects&page=${page}&expanded=${expanded}&api_key=${apiKey}`;
fetch(url)
.then(response => response.json())
.then(projects => {
console.log(`Retrieved ${projects.length} projects`);
projects.forEach(project => {
const info = project.project_info[0];
console.log(`Project: ${info.quotenickname}`);
console.log(` Panels: ${info.panelqty}x ${info.paneltype}`);
console.log(` Cost: $${info.afterrebatecost}`);
if (project.expanded_info && project.expanded_info.length > 0) {
console.log(` Company: ${project.expanded_info[0].companyname}`);
}
});
})
.catch(error => console.error('Error:', error));
import requests
from urllib.parse import urlencode
api_key = 'YOUR_API_KEY'
page = 1
params = {
'action': 'getallprojects',
'page': page,
'expanded': 1,
'api_key': api_key
}
url = f'https://solarproof.com.au/apidata.php?{urlencode(params)}'
response = requests.get(url)
projects = response.json()
print(f'Retrieved {len(projects)} projects')
for project in projects:
info = project['project_info'][0]
print(f"Project: {info['quotenickname']}")
print(f" Panels: {info['panelqty']}x {info['panelwattage']}W")
print(f" Cost: ${info['afterrebatecost']}")
print("---")
Common Use Cases
Sales Analytics & Reporting
Analyze project values, system sizes, panel types, and conversion rates. Track signed vs unsigned projects.
CRM Integration
Export all project data to external CRM systems with complete solar system specifications and pricing.
Financial Reporting
Track project values, financing details, STC rebates, and payment terms for financial analysis.