Sites
Create a new site with the specified ID
Authorizations
Path parameters
projectIdstringRequired
The project ID
siteIdstringRequired
The site ID
Body
Refer to the /schemas/site endpoint for the full JSON Schema definition
codestringRequiredPattern:
^[A-Z0-9]*$
namestringRequired
productionStartDatestring · dateOptional
generationStartDatestring · dateOptional
consumptionStartDatestring · dateOptional
storageStartDatestring · dateOptional
addressstringRequired
townstringRequired
statestringRequired
latnumber · min: -180 · max: 180Required
longnumber · min: -180 · max: 180Required
serviceIdstringOptional
parcelIDstringOptional
parcelAcreagestringOptional
zoningDistrictstringOptional
ownerOfRecordstringOptional
locationIdintegerOptional
The ID of a SolarNetwork location; used to retrieve weather details
plantIdstringOptional
utilitystringOptional
emissionsApproximationMethodstring · enumOptionalPossible values:
timezonestringOptional
expectedDailyDatanumberOptional
accessNotesstringOptional
Responses
200
successful operation
application/json
400
Invalid status value
application/json
post
POST //projects/{projectId}/sites/{siteId} HTTP/1.1
Host: api.ecosuite.io
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 653
{
"code": "text",
"name": "text",
"productionStartDate": "2025-09-16",
"generationStartDate": "2025-09-16",
"consumptionStartDate": "2025-09-16",
"storageStartDate": "2025-09-16",
"address": "text",
"town": "text",
"state": "text",
"lat": 1,
"long": 1,
"serviceId": "text",
"parcelID": "text",
"parcelAcreage": "text",
"zoningDistrict": "text",
"ownerOfRecord": "text",
"locationId": 1,
"plantId": "text",
"utility": "text",
"emissionsApproximationMethod": "static",
"timezone": "text",
"expectedDailyData": 1,
"links": [
{
"name": "text",
"url": "https://example.com"
}
],
"accessNotes": "text",
"contacts": [
{
"name": "text",
"type": "text",
"email": "[email protected]",
"phone": "text",
"voip": "text",
"notes": "text"
}
]
}
{
"site": {
"code": "text",
"name": "text",
"productionStartDate": "2025-09-16",
"generationStartDate": "2025-09-16",
"consumptionStartDate": "2025-09-16",
"storageStartDate": "2025-09-16",
"address": "text",
"town": "text",
"state": "text",
"lat": 1,
"long": 1,
"serviceId": "text",
"parcelID": "text",
"parcelAcreage": "text",
"zoningDistrict": "text",
"ownerOfRecord": "text",
"locationId": 1,
"plantId": "text",
"utility": "text",
"emissionsApproximationMethod": "static",
"timezone": "text",
"expectedDailyData": 1,
"links": [
{
"name": "text",
"url": "https://example.com"
}
],
"accessNotes": "text",
"contacts": [
{
"name": "text",
"type": "text",
"email": "[email protected]",
"phone": "text",
"voip": "text",
"notes": "text"
}
]
}
}
Update an existing site
Authorizations
Path parameters
projectIdstringRequired
The project ID
siteIdstringRequired
The site ID
Body
Refer to the /schemas/site endpoint for the full JSON Schema definition
codestringRequiredPattern:
^[A-Z0-9]*$
namestringRequired
productionStartDatestring · dateOptional
generationStartDatestring · dateOptional
consumptionStartDatestring · dateOptional
storageStartDatestring · dateOptional
addressstringRequired
townstringRequired
statestringRequired
latnumber · min: -180 · max: 180Required
longnumber · min: -180 · max: 180Required
serviceIdstringOptional
parcelIDstringOptional
parcelAcreagestringOptional
zoningDistrictstringOptional
ownerOfRecordstringOptional
locationIdintegerOptional
The ID of a SolarNetwork location; used to retrieve weather details
plantIdstringOptional
utilitystringOptional
emissionsApproximationMethodstring · enumOptionalPossible values:
timezonestringOptional
expectedDailyDatanumberOptional
accessNotesstringOptional
Responses
200
successful operation
application/json
400
Invalid status value
application/json
put
PUT //projects/{projectId}/sites/{siteId} HTTP/1.1
Host: api.ecosuite.io
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 653
{
"code": "text",
"name": "text",
"productionStartDate": "2025-09-16",
"generationStartDate": "2025-09-16",
"consumptionStartDate": "2025-09-16",
"storageStartDate": "2025-09-16",
"address": "text",
"town": "text",
"state": "text",
"lat": 1,
"long": 1,
"serviceId": "text",
"parcelID": "text",
"parcelAcreage": "text",
"zoningDistrict": "text",
"ownerOfRecord": "text",
"locationId": 1,
"plantId": "text",
"utility": "text",
"emissionsApproximationMethod": "static",
"timezone": "text",
"expectedDailyData": 1,
"links": [
{
"name": "text",
"url": "https://example.com"
}
],
"accessNotes": "text",
"contacts": [
{
"name": "text",
"type": "text",
"email": "[email protected]",
"phone": "text",
"voip": "text",
"notes": "text"
}
]
}
{
"site": {
"code": "text",
"name": "text",
"productionStartDate": "2025-09-16",
"generationStartDate": "2025-09-16",
"consumptionStartDate": "2025-09-16",
"storageStartDate": "2025-09-16",
"address": "text",
"town": "text",
"state": "text",
"lat": 1,
"long": 1,
"serviceId": "text",
"parcelID": "text",
"parcelAcreage": "text",
"zoningDistrict": "text",
"ownerOfRecord": "text",
"locationId": 1,
"plantId": "text",
"utility": "text",
"emissionsApproximationMethod": "static",
"timezone": "text",
"expectedDailyData": 1,
"links": [
{
"name": "text",
"url": "https://example.com"
}
],
"accessNotes": "text",
"contacts": [
{
"name": "text",
"type": "text",
"email": "[email protected]",
"phone": "text",
"voip": "text",
"notes": "text"
}
]
}
}
Deletes an existing site
Authorizations
Path parameters
projectIdstringRequired
The project ID
siteIdstringRequired
The site ID
Responses
200
successful operation
application/json
Responseobject
400
Invalid status value
application/json
delete
DELETE //projects/{projectId}/sites/{siteId} HTTP/1.1
Host: api.ecosuite.io
Authorization: YOUR_API_KEY
Accept: */*
{}