Greenbot API Documentation
Download the Greenbot API Postman Collection
1. Change History
Version | Date | Reason for Change | Section Updated |
---|---|---|---|
1.0 | 18 Jan 2018 | Initial Document | N/A |
1.1 | 20 July 2020 | New API features added | All |
2. Overview
Greenbot’s Vendor API documentation allows you to create Greenbot jobs, Edit Jobs and Retrieve Job information from your Solar Company Greenbot Portal.
3. Connecting to API URL
For the implementation process, Greenbot provides test server information as follows:
Test API Service URL: https://devapi.greenbot.com.au/
To test the API, you are able to use the devapi user logging to explore.
Test Login User: devapi | Test Login Password: devapi
Live API Service URL: https://api.greenbot.com.au
Please Note: For a new account, only test environment is available. Until the connection and implementation prove sends by the approval, the live environment of Greenbot system will not beavailable.
4. API Standard Responses
Below are the standard response you will get on when it is success response or error response :
Success Response
{
"Status": true,
"StatusCode": "OK",
"Message": "Successful message"
}
Error Responses
1.
{
"Status": false,
"StatusCode": "NoContent",
"Message": " Error message"
}
2.
{
"Status": false,
"StatusCode": "BadRequest",
"Message": "Street Number is required. Phone is required. State is required. Post Code is required.
Street Number is required. Street Name is required. Town is required. State is required. Street Type
is required."
}
3.
{
Message": "Authorization has been denied for this request."
}
5. APIs
5.1 API Login
This method is used to validate login details like Username and Password to access greenbot system. On success response api will return bearer token for Authentication. This token will active for 1 day for now and we can change it as per our need.
5.1.1 Invocation Details
- Path : /api/Account/Login
- Type : Post
- Headers:
- Content-Type: application/json
5.1.2 Login Request Base Parameters
Parameters | Required | Description |
---|---|---|
Username | Yes | User's Username |
Password | Yes | User's Password |
5.1.3 Login Examples
Request:
{
"Username" : "devapi",
"Password" : "devapi"
}
Response:
{
"TokenData": {
"access_token": "N3Xo6SVvmic483QG6lGgsHJIJ9pzWe9bvyfQTNqZcmIjY_I-
5g92W_CRnQ9exQeIozLBZkFNNjRCqDqcMf7EoWh6Rvv4-
1qt14bASoWSiz8TBhPbu82ltmKFb6G9FSh9Al5C_q-
M5zWDJE14rsec3wCDVGvSoXsqZGIGD092l4i7D4KXEdeoZT8ZceZlnQ4pFzUE9RgzCJa9yKqYEG1OUQ",
"token_type": "bearer"
},
"Status": true,
"StatusCode": "OK",
"Message": "Login Successfully"
}
5.2 Create Job
This method is used for creating job. You need to pass bearer token which was generated at the time of login for authentication along with request body parameters
5.2.1 Create Job Invocation Details
- Path : /api/Account/CreateJob
- Type : Post
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
(Example :
Authorization: bearer N3Xo6SVvmic483QG6lGgsHJIJ9pzWe9bvyfQTNqZcmIjY_I-
5g92W_CRnQ9exQeIozLBZkFNNjRCqDqcMf7EoWh6Rvv4-
1qt14bASoWSiz8TBhPbu82ltmKFb6G9FSh9Al5C_q-
M5zWDJE14rsec3wCDVGvSoXsqZGIGD092l4i7D4KXEdeoZT8ZceZlnQ4pFzUE9RgzCJa9yKqYEG1OU
Q)
5.2.2 Create Job Request Base Parameters
Parameters | Required | Datatype | Description |
---|---|---|---|
VendorJobId | Yes | String | Unique Job ID |
BasicDetails | |||
JobType | Yes | Int | Refer table 6.1 |
RefNumber | Yes | String | Reference number of the job |
JobStage | Yes | Int | Refer table 6.2 |
Title | Yes | String | Title of the job |
strInstallationDate | No | DateTime | Installation Date - YYYY/MM/DD |
Priority | Yes | Int | Refer table 6.3 |
Description | Yes | String | Description of the job |
IsClassic | No | Bool | Job is classic or not (Default is false if not passed) |
IsGst | No | Bool | is GST included in the job |
GSTDocument | No | String | Name of the GST document |
GstFileBase64 | No | String | GST Document Content in base64 |
JobOwnerDetails | |||
OwnerType | Yes | String | Refer table 6.4 |
CompanyName | Conditional | String | Organization name not mandatory when OwnerType is Individual |
FirstName | Yes | String | Owner's First name |
LastName | Yes | String | Owner's Last name |
No | String | Owner's Email ID | |
Phone | Yes | String | Minimum 6 character required |
Mobile | No | String | Owner's Phone number |
AddressID | Yes | Int | Address Type -- Refer table 6.5 |
UnitTypeID | No | Int | Refer table 6.14 |
UnitNumber | Conditional | String | Mandatory when UnitTypeID has value |
StreetName | Conditional | String | Mandatory when AddressID is physical address |
StreetNumber | Conditional | String | Mandatory when AddressID is physical address and not mandatory when UnitTypeID has value |
StreetTypeID | Conditional | Int | Street Type - Refer table 6.15 - Mandatory when AddressID is physical address |
PostalAddressID | Conditional | String | Postal Delivery Type mandatory when AddressID is P.O BOX |
PostalDeliveryNumber | Conditional | String | Postal Delivery number mandatory when AddressID is P.O BOX |
Town | Yes | String | Owner's Town/Suburb |
State | Yes | String | Must be in the following values (VIC, NT, SA, NSW, WA, QLD, TAS, ACT) |
Postcode | Yes | String | Owner's Postcode |
isPostalAddress | Yes | bool | P.O Box : True Physical Address : False |
JobInstallationDetails | |||
AddressID | Yes | Int | Address Type -- Refer table 6.5 |
UnitTypeID | No | int | Refer table 6.14 |
UnitNumber | No | String | Mandatory when UnitTypeID has value |
StreetName | Conditional | String | Mandatory when AddressID is physical address |
StreetNumber | Conditional | String | Mandatory when AddressID is physical address and not Mandatory when UnitTypeID has value |
StreetTypeID | Conditional | Int | Street Type - Refer table 6.15 - Mandatory when AddressID is physical address |
PostalAddressID | Conditional | Int | Postal Delivery Type mandatory when AddressID is P.O BOX |
PostalDeliveryNumber | Conditional | String | Postal Delivery number mandatory when AddressID is P.O BOX |
Town | Yes | String | |
State | Yes | String | |
PostCode | Yes | String | Postcode |
PropertyType | No | String | Installation property type - Refer table 6.6 |
SingleMultipleStory | No | String | Single or multi-story -- Refer table 6.7 |
InstallingNewPanel | No | String | Are you installing new, replacing or adding panels to a system? Only for PVD Job -- Refer table 6.8 |
Location | No | String | What side facing roof are these panels located? - Refer table 6.13 Only when InstallingNewPanel has value "Replacing" or "Adding" |
DistributorID | No | Int | Distributor - Refer table 6.22 |
ElectricityProviderID | No | Int | Electricity Provider – Refer table 6.23 - Only For PVD job |
NMI | No | String | NMI - Only For PVD job |
MeterNumber | No | String | Meter Number - Only For PVD job |
PhaseProperty | No | String | Phase Property – Value from 1 to 5 – Only For PVD job |
ExistingSystem | No | Bool | Does the home owner have an existing system on the property? - Only For PVD job |
ExistingSystemSize | No | decimal | Only For PVD job – Only when Existing System value "True" |
NoOfPanels | No | Int | Number of the panels for the solar system - Only For PVD job – Only when Existing System value "True" |
SystemLocation | No | String | Only For PVD job – Only when Existing System value "True" |
JobSystemDetails | |||
SystemSize | No | Decimal | System Size (kW) |
SerialNumbers | No | String | Panel Serial Numbers (Comma separated string values) |
InstallationType | No | String | Only For SWH Job - Refer table 6.17 |
SystemBrand | No | String | Only for SWH Job - System Brand Name |
SystemModel | Mandatory | String | Only for SWH Job - System Model Name – mandatory if passing System Brand |
NoOfPanel | Mandatory | Int | Only For SWH Job - Number of Panel – mandatory if passing System Brand |
JobSTCDetails | |||
TypeOfConnection | No | String | Only For PVD Job - Type of connection to the electricity grid - Refer table 6.9 |
SystemMountingType | No | String | Only For PVD Job - System Mounting Type Refer table 6.10 |
DeemingPeriod | No | String | Only For PVD Job - For what period would you like to create RECs – Refer table 6.11 |
MultipleSGUAddress | No | String | Is there more than one SGU at this address? -- Refer table 6.12 |
Location | No | String | Where is the location of this system in relation to the existing system? - Refer table 6.13 – Only when MultipleSGUAddress values is "Yes" |
VolumetricCapacity | No | String | Only for SWH Job - Is the volumetric capacity of this installation greater than 700L (Y/N)? – Value : Yes/No |
SecondhandWaterHeater | No | String |
Only for SWH Job - Is your water heater second hand (Y/N) (has to be No to successfully submit, else willfail)? - Value : Yes/No |
StatutoryDeclarations | No | String |
Only For SWH Job - Statutory declarations sent (Y/N) (has to be yes to submit from Rec Registry logic)? – Value : Yes/No (Only when Volumetric Capacity value is "Yes") |
panel | For PVD Job Type(one or more than one nodes allowed) |
||
Brand | No | String | Panel Brand Name - Must be exact name taken from CEC accredited PV module list |
Model | Conditional | String | Panel Model Name - Must be exact name taken from CEC accredited PV module list - Mandatory if passing panel brand |
inverter | For PVD Job Type Only (one or more than one nodes allowed) | ||
Brand | No | String | Inverter Brand Name - Must be exact name taken from CEC accredited inverter list |
Model | Conditional | String | Series of Inverter Brand. Must be exact name taken from CEC accredited inverter list - Mandatory if passing inverter brand |
lstJobNotes | One or more than one nodes allowed | ||
Notes | Conditional | String | Notes Details |
VendorJobNoteId | Conditional | Int | Unique VendorJobNoteId - Mandatory if inserting JobNotes |
InstallerView | |||
CECAccreditationNumber | Yes | String | CEC Accreditation Number of Installer |
SEDesignRoleId | Yes | Int | 1(For installer), 2 (For Design only), 3 (Design and Install) |
No | String | Installer's Email ID | |
FirstName | No | String | Installer's First name |
LastName | Yes | String | Installer's Last name |
Phone | Yes | String | Installer's Phone number |
Mobile | No | String | Installer's Mobile number |
ElectricalContractorsLicenseNumber | No | String | Installer's License number |
AddressID | Yes | Int | Address Type -- Refer table 6.5 |
UnitTypeID | No | Int | Refer table 6.14 |
UnitNumber | Conditional | String | Mandatory when UnitTypeID has value |
StreetName | Conditional | String | Mandatory when AddressID is physical address |
StreetNumber | Conditional | String | Mandatory when AddressID is physical address and not Mandatory when UnitTypeID has value |
StreetTypeID | Conditional | Int | Street Type - Refer table 6.15 - Mandatory when AddressID is physical address |
PostalAddressID | Conditional | String | Postal Delivery Type mandatory when AddressID is P.O BOX |
PostalDeliveryNumber | Conditional | String | Postal Delivery number mandatory when AddressID is P.O BOX |
Town | Yes | String | Installer Town/Suburb |
State | Yes | String | Installer State. Must be in the following values (VIC, NT, SA, NSW, WA, QLD, TAS, ACT) |
PostCode | Yes | String | Installer's Postcode |
IsPostalAddress | Yes | Bool | PO Box : True Physical Address : False |
SignBase64 | No | String | Signature Image Content in base64 |
SESignature | Conditional | String | Name of signature image – Mandatory if passing SignBase64 |
lstCustomDetails | One or more than one nodes allowed | ||
VendorJobCustomFieldId | Conditional | Int | Unique JobCustomFieldId - Mandatory if inserting CustomDetails |
FieldName | Conditional | String | Custom Field Name – Mandatory if passing VendorJobCustomFieldId |
FieldValue | No | String | Custom Field Value |
5.2.3 Create Job Example
Request:
{
"VendorJobId": "YourUniqueVendorID_01",
"BasicDetails": {
"Title": "Mark Jacobs - 5kW System VIC ",
"Description": "22 x 330W suntech panels with 5kW SMA inverter",
"RefNumber": "YourUniqueVendorID_01",
"JobStage": "1",
"JobType": "1",
"Priority": "1",
"strInstallationDate": "2020/08/12", // YYYY/MM/DD
"IsGst": "true", //for attaching GST invoice to the job for +GST claims
"GSTDocument": "Gst.txt",
"GstFileBase64": ""
},
"JobOwnerDetails": {
"OwnerType": "Corporate body",
"CompanyName": " GREENBOT PTY. LTD.",
"CompanyABN": "83614837124",
"FirstName": "Mark",
"LastName": "Jacobs",
"Phone": "0399000000",
"Mobile": "0400000000",
"EMail": "noreply@emergingenergy.com.au",
"AddressID": 1,
"IsPostalAddress": false,
"StreetNumber": "300",
"StreetName": "Wales",
"StreetTypeID": "1",
"Town": "MELBOURNE",
"State": "VIC",
"PostCode": "3000"
},
"JobInstallationDetails": {
"AddressID": 1,
"PostalAddressID": 0,
"StreetNumber": "300",
"StreetName": "Wales",
"StreetTypeID": "1",
"Town": "MELBOURNE",
"State": "VIC",
"PostCode": "3000",
"NMI": "22313113222",
"PropertyType": "Commercial",
"SingleMultipleStory": "Single story",
"InstallingNewPanel": "replacing", //values are new, extension, adding or replacing. If value is not new, then JobInstallationDetails>location and JobSTCDetails>AdditionalCapacityNotes is mandatory
"Location": "North", //Associated with installingNewPanel field if additional or replacement
"ExistingSystem": true, //Put information about any existing system before
"ExistingSystemSize": "10",
"NoOfPanels": 2,
"SystemLocation": "Existing system location notes isset here and also in JobSTCDetails>AdditionalCapacityNotes field",
"AdditionalInstallationInformation": "Custom installation information that is in the Additional Installation field"
},
"JobSTCDetails": {
"TypeOfConnection": "Connected to an electricity grid without battery storage",
"SystemMountingType": "Building or structure",
"DeemingPeriod": "10",
"MultipleSGUAddress": "Yes",
"Location": "South",
"AdditionalLocationInformation": "This notes is used for more than 1 SGU additional information", //this notes is for more than 1 SGU
"AdditionalCapacityNotes": "this is for additional systems, replacing systems or extension systems installation notes" //this notes is for installation type: Additional, Replacement. This note is mandatory if InstallingNewPanel value is extension, adding, or replacing
},
"InstallerView": {
"CECAccreditationNumber": "A1234567",
"FirstName": "Greenbot",
"LastName": "El",
"IsAutoAddVisit": "false", //if installer is connected, allows for a visit to be scheduled if set to true.
"IsUpdate": "true", //allows for installer details to be edited for example address information if set to true
"AddressID": 1,
"StreetNumber": "123",
"StreetName": "Wales",
"StreetTypeID": "1",
"Town": "TANSEY",
"State": "QLD",
"PostCode": "4601",
"Phone": "4563221",
"Mobile": "895463217",
"Email": "noreply@emergingenergy.com.au",
"SEDesignRoleId": 3,
"SignBase64": "",
"SESignature": "installerSignature.jpg",
"Latitude": "23.0346774", //associated with installer signature capture
"Longitude": "72.5021803" //associated with installer signature capture
},
"DesignerView": {
"CECAccreditationNumber": "A2834459",
"FirstName": "Aaron",
"LastName": "Adams",
"IsUpdate": "true", //allows for designer details to be edited for example address information if set to true
"Phone": "4563221",
"Mobile": "895463217",
"Email": "noreply@emergingenergy.com.au",
"AddressID": 1,
"StreetName": "melbourne",
"StreetNumber": "123",
"StreetTypeID": "1",
"Town": "MELBOURNE",
"State": "VIC",
"PostCode": "3000",
"SEDesignRoleId": 1,
"SignBase64": "",
"SESignature": "r_4ab4acb5-aa31-4ddb-99fc-a94e36ecbd11.jpg",
"Latitude": "23.0346774",
"Longitude": "72.5021803"
},
"JobElectricians": {
"LicenseNumber": "a4290312123",
"CompanyName": "Electrician Company Name",
"FirstName": "John",
"LastName": "Doe",
"IsUpdate": "true", //allows for installer details to be edited for example address information if set to true
"IsPostalAddress": 0,
"StreetTypeID": "1",
"StreetNumber": "123",
"StreetName": "melbourne",
"Town": "MELBOURNE",
"State": "VIC",
"PostCode": "3000",
"Phone": "0400000000",
"Mobile": "0400000000",
"Email": "noreply@emergingenergy.com.au"
},
"JobSystemDetails": {
"SystemSize": "6.66",
"SerialNumbers": "4567"
},
"panel": [
{
"Brand": "Wuxi Suntech Power Co Ltd",
"Model": "STP330S-A60/Wfhm",
"NoOfPanel": "2"
}
],
"inverter": [
{
"Brand": "ABB Australia",
"Series": "ACSM1 Solar Pump Drive",
"Model": "ACSM1-04AS-012A-4",
"NoOfInverter": "1"
}
],
"batteryManufacturer": [
{
"Brand": "Alpha ESS Co Ltd",
"Model": "eSTORE-BAT-10.3",
"BatterySystemPartOfAnAggregatedControl": "No",
"ChangedSettingOfBatteryStorageSystem": "No"
}
]
// "lstJobNotes" :
//[
//{"VendorJobNoteId" : "21","Notes" : ""},
// {"VendorJobNoteId" : "22","Notes" : ""}
//],
//"lstCustomDetails": [
// {
// "VendorJobCustomFieldId": "InverterSerialNumber",
// "FieldValue": "322390538259023,325235252",
// "FieldName": "InverterSerialNumber"
// }
// ]
}
Response:
{
"Status": true,
"StatusCode": "OK",
"Message": "Job Created Successfully"
}
5.3 Update Job
This method is used for updating job. You need to pass bearer token which was generated at the time of login for authentication along with request body parameters
5.3.1 Update Job Invocation Details
- Path : /api/Account/UpdateJob
- Type : Post
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.3.2 Request Base Parameters
Refer table on Section 5.2.2
5.3.3 Update Job Example
Success Response:
{
"Status": true,
"StatusCode": "OK",
"Message": " Job Updated Successfully"
}
5.4 Get Panel
This method will allow you to retrieve data of all panels by calling this API
5.4.1 Get Panel Invocation Details
- Path : /api/Account/GetPanel
- Type : Get
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.4.2 Get Panel Example
Success Response:
{
"panel":
[
{"Brand":"Ablytek Co Ltd","Model":"6MN48145"},
{"Brand":"Ablytek Co Ltd","Model":"6MN48150"}
]
}
5.5 Get Inverter
You will get the data of inverters by calling this API.
5.5.1 Get Inverter Invocation Details
- Path : /api/Account/GetInverter
- Type : Get
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.5.2 Get Inverter Example
Success Response:
{
"inverter":[
{
"Brand": "(ABB) Power-One Energy Solutions Pty Ltd",
"Series": "String Inverter",
"Model": "UNO-2.0-I-OUTD"
},
{
"Brand": "(ABB) Power-One Energy Solutions Pty Ltd",
"Series": "String Inverter",
"Model": "UNO-2.0-I-OUTD-S"
}
]
}
5.6 Get System Brand
You will get the data for system brand by using this method.
5.6.1 Get System Brand Invocation Details
- Path : /api/Account/GetSystemBrand
- Type : Get
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.6.2 Get System Brand Example
Success Response:
{
"systemBrand":[
{
"Brand": "Airmax",
"Model": "270-11AC3-134"
},
{
"Brand": "Airmax",
"Model": "270-11AC4-134"
}]
}
5.7 Get Battery Manufacturer
You will get the data of battery storage detail by calling this API.
5.7.1 Get Battery Manufacture Invocation Details
- Path : /api/Account/GetBatterymanufacturer
- Type : Get
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.7.2 Get Battery Manufacture Example
Success Response:
{
"batteryManufacturer:[
{
"Brand": "Wuxi Soltaro EnergyTechnology Co Ltd", "Model": "SOL-R16-4.5KWH"
},
{
"Brand": "LG Chem LTD.",
"Model": "RESU10"
}
]
}
5.8 Upload Job Image
This method will allow you to upload images into your targeted job by using the VendorJobId parameter. Images must be converted to a base64 string. Images will be sent to the Default Photos (New Job Screen) and targeted folder such as serial number photos or installation photos sub-folders. Target destination of photo file by using the PhotoType parameter.
5.8.1 Upload Job Image Invocation Details
- Path : /api/Account/UploadJobImage
- Type : Post
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.8.2 Upload Job Image Request Base Parameters
Parameters | Required | DataType | Description |
---|---|---|---|
VendorJobPhotoId | Yes | String | Unique VendorJobPhotoId of job |
VendorJobId | Yes | String | VendorJobId of job |
IsClassic | Yes | Bool | Job is classic or not |
ImageBase64 | Yes | String | Image File Content in base64 |
PhotoType | Yes | Int | Refer table 6.19 |
Filename | Yes | String | Image file name |
5.8.3 Upload Job Image Example
Request:
{
"VendorJobPhotoId" : "SerialPhotos01",
"VendorJobID":735,
"IsClassic": false,
"ImageBase64":"BASE64 STRING",
"PhotoType":"1",
"Filename":"r_4ab4acb5-aa31-4ddb-99fc-a94e36ecbd11.jpg",
"Latitude":"23.0346774",
"Longitude":"72.5021803"
}
Success Response:
{
"Status": true,
"StatusCode": "OK",
"Message": "Photo uploaded successfully"
}
5.9 Upload Documents
This method will allow you to upload documents into your targeted job by using the VendorJobId parameter. Documents must be converted to a base64 string. Documents will be sent to CES, STC or Other document sections. Target destination of document file by using the DocumentType parameter.
5.9.1 Upload Documents Invocation Details
- Path : /api/Account/UploadJobImage
- Type : Post
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.9.2 Upload Documents Request Base Parameters
Parameters | Required | DataType | Description |
---|---|---|---|
VendorJobDocumentId | Yes | String | Unique VendorJobDocumentId of job |
VendorJobId | Yes | String | VendorJobId of job |
IsClassic | Yes | Bool | Job is classic or not |
DocumentBase64 | Yes | String | Document Content in base64 |
DocumentType | Yes | Int | Refer table 6.20 |
DocumentName | Yes | String | Document Name with extension |
JobType | Yes | Int | Refer table 6.1 |
5.9.3 Upload Documents Example
Request:
{
"VendorJobId":"12Feb2",
"IsClassic":1,
"VendorJobDocumentId":"12Feb_D_1",
"DocumentType":"2",
"DocumentName":"New2.pdf",
"JobType":"1",
"DocumentBase64":"BASE64 STRING"
}
Success Response:
{
"Status": true,
"StatusCode": "OK",
"Message": "Document uploaded successfully"
}
5.10 Delete Job Image
This method will allow you to delete images in a targeted job by using the VendorJobId parameter and also the VendorJobPhotoId.
5.10.1 Delete Job Image Invocation Details
- Path : /api/Account/DeleteJobImage
- Type : Post
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.10.2 Delete Job Image Request Base Parameters
Parameters | Required | DataType | Description |
---|---|---|---|
VendorJobPhotoId | Yes | String | Unique VendorJobPhotoId of job |
VendorJobId | Yes | String | VendorJobId of job |
IsClassic | Yes | Bool | Job is classic or not |
5.10.3 Delete Job Image Example
Request:
Deleting single photo :
{
"VendorJobId":"12Feb2018",
"VendorJobPhotoId":"12Feb2018_P_125",
"IsClassic":1
}
Deleting multiple photos :
{
"VendorJobId":"12Feb2018",
"VendorJobPhotoId":"12Feb2018_P_125, 12Feb2018_P_126",
"IsClassic":1
}Success Response:
{
"Status": true,
"StatusCode": "OK",
"Message": "Photo deleted successfully"
}
5.11 Delete Documents
This method will allow you to delete job documents into your targeted job by using the VendorJobId and VendorJobDocumentId parameter.
5.11.1 Delete Documents Invocation Details
- Path : /api/Account/DeleteDocuments
- Type : Post
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.11.2 Delete Documents Request Base Parameters
Parameters | Required | DataType | Description |
---|---|---|---|
VendorJobDocumentId | Yes | String | Unique VendorJobDocumentId of job |
VendorJobId | Yes | String | VendorJobId of job |
IsClassic | Yes | Bool | Job is classic or not |
5.11.3 Delete Documents Example
Request:
Deleting single document:
{
"VendorJobId":"12Feb2018",
" VendorJobDocumentId ":" 12Feb2018_D_1",
"IsClassic":1
}
Deleting multiple documents:
{
"VendorJobId":"12Feb2018",
" VendorJobDocumentId ":" 12Feb2018_D_1, 12Feb2018_D_2",
"IsClassic":1
}
Success Response:
{
"Status": true,
"StatusCode": "OK",
"Message": " Document deleted successfully"
}
5.12 Get Job
This method will allow you to get solar job data from the Greenbot Portal. Data can be retrieved by date range, creation date, refNumber and VendorJobId.
5.12.1 GetJobs Invocation Details
- Path : /api/Account/GetJobs?CreatedDate=DD/MM/YYYY
- Type : Get
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.12.2 GetJobs Examples
Request:
Path : /api/Account/GetJobs?FromDate=08/02/2018&ToDate=09/02/2018
Path : /api/Account/GetJobs?CreatedDate=08/02/2018
Path : /api/Account/GetJobs?RefNumber=XXX
Path : /api/Account/GetJobs?VendorJobId=XXXXXX
Path : /api/Account/GetJobs?JobId=XXXXXX
Success Response:
{
"lstJobData": [
{
"BasicDetails": { "VendorJobId":"12Feb2018", “CreatedDate”:"2018-02-08T00:00:00”, "JobType": 1, "RefNumber": "ClassicScreen_Job", "JobStage": 1, "Title": "ClassicScreen_Job", "InstallationDate": "2018-12-10T00:00:00", "Priority": 1, "Description": "ClassicScreen_Job", "IsClassic": true }, "JobOwnerDetails": { "OwnerType": "Individual", "CompanyName": "", "FirstName": "FFF2", "LastName": "LL2", "UnitTypeID": null, "UnitNumber": "", "StreetNumber": "123", "StreetName": "Wales", "Town": "MELROSE", "State": "QLD", "PostCode": "4613", "Phone": "456321", "Mobile": "", "Email": "", "IsPostalAddress": false, "PostalAddressID": "", "PostalDeliveryNumber": "", "AddressID": 1, "StreetTypeID": 1 }, "JobElectricians": { "CompanyName": "", "FirstName": "", "LastName": "", "Email": "", "Phone": "", "Mobile": "", "LicenseNumber": "", "AddressID": 1, "UnitTypeID": null, "UnitNumber": "", "IsPostalAddress": false, "PostalAddressID": 0, "PostalDeliveryNumber": "", "StreetNumber": "", "StreetName": "", "StreetTypeID": null, "Town": "", "State": "", "PostCode": "" }, "JobInstallationDetails": { "UnitTypeID": null, "UnitNumber": "", "StreetNumber": "123", "StreetName": "Wales", "Town": "MELROSE", "State": "QLD", "PostCode": "4613", "NMI": "", "PropertyType": "Commercial", "PropertyName": "", "SingleMultipleStory": "Single story", "InstallingNewPanel": "New", "MeterNumber": "", "PhaseProperty": "", "ElectricityProviderID": null, "AdditionalNotes": "", "ExistingSystem": true, "ExistingSystemSize": 10, "NoOfPanels": 2, "SystemLocation": "first sys location", "SystemSize": null, "PostalDeliveryNumber": "", "IsPostalAddress": false, "PostalAddressID": 0, "AddressID": 1, "StreetTypeID": 1, "Location": "", "DistributorID": null, "AdditionalInstallationInformation": "adddi" }, "JobSTCDetails": { "TypeOfConnection": "Connected to an electricity grid without battery storage",
"SystemMountingType": "Building or Structure", "InstallingCompleteUnit": "Yes", "AdditionalCapacityNotes": "", "DeemingPeriod": "One year", "CertificateCreated": "", "FailedAccreditationCode": "", "FailedReason": "", "MultipleSGUAddress": "Yes", "Location": "North", "SGUSystemLocated": "", "VolumetricCapacity": "", "StatutoryDeclarations": "", "SecondhandWaterHeater": "", "AdditionalLocationInformation": "", "AdditionalSystemInformation": "" }, "JobSystemDetails": { "SystemSize": 26, "SerialNumbers": "oneagainyes "CalculatedSTC": 35, "CalculatedSTCForSWH": null, "SystemBrand": null, "SystemModel": null, "NoOfPanel": null, "InstallationType": "" }, "JobInstallerDetails": { "FirstName": "", "Surname": "", "Phone": "", "Mobile": "", "Email": "", "UnitTypeID": null, "UnitNumber": "", "StreetNumber": "", "StreetName": "", "Town": "", "State": "", "PostCode": "", "IsPostalAddress": false, "PostalAddressID": 0, "PostalDeliveryNumber": "", "StreetTypeID": null, "AddressID": 1, "ElectricianID": 0 }, "InstallerView": { "FirstName": "Installer_test", "LastName": "Test_Installer", "UnitTypeID": 0, "UnitNumber": "", "StreetNumber": "123", "StreetName": "Wales", "StreetTypeID": 1, "Town": "MELROSE", "State": "QLD", "PostCode": "4613", "CECAccreditationNumber": "A0242480", "CECDesignerNumber": "", "IsPostalAddress": false, "PostalAddressID": 0, "PostalDeliveryNumber": "", "AddressID": 1, "Email": "", "SEDesignRoleId": 0, "ElectricalContractorsLicenseNumber": "", "Phone": "4563221", "Mobile": "895463217" }, "DesignerView": { "FirstName": null, "LastName": null, "UnitTypeID": 0, "UnitNumber": null, "StreetNumber": null, "StreetName": null, "StreetTypeID": 0, "Town": null, "State": null, "PostCode": null, "CECAccreditationNumber": null, "CECDesignerNumber": null, "IsPostalAddress": false, "PostalAddressID": 0, "PostalDeliveryNumber": null, "AddressID": 1, "Email": null, "SEDesignRoleId": 0, "ElectricalContractorsLicenseNumber": null, "Phone": null, "Mobile": null }, "lstJobPanelDetails": [ { "JobPanelID": 24353, "JobID": 7530, "Brand": "Advance Future GmbH", "Model": "AEF-5M-170M-72", "NoOfPanel": 2, "CreatedBy": 544, "ModifiedBy": 0, "IsDeleted": false, "CertificateHolder": null, "ModelNumber": null }, { "JobPanelID": 24354, "JobID": 7530, "Brand": "All PV Australia Pty Ltd", "Model": "AP5M24-55", "NoOfPanel": 2, "CreatedBy": 544, "ModifiedBy": 0, "IsDeleted": false, "CertificateHolder": null, "ModelNumber": null } ], "lstJobInverterDetails": [], "lstCustomDetails": null, "STCStatus": "Not Yet Submitted" } ], "Status": true, "StatusCode": "OK", "Message": "Jobs found" }
5.13 Get STC Submission
This method will allow you to get STC submission data from the Greenbot Portal. Data can be retrieved by date range, creation date, refNumber and VendorJobId.
5.13.1 Get Submission Invocation Details
- Path : /api/Account/GetStcSubmission?VendorJobId=VendorJobId
- Type : Get
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.13.2 Get Submission Examples
Success Response:
{
"lstStcSubmissionData": [
{
"VendorJobId":
"Vendor_20180718",
"STC": 4,
"STCStatus": "CER Approved",
"STCPVDCode": "125",
"CERApprovedDate": "2018-07-18T20:04:11.69",
"TradedBy": "Deep Solar Company"
}
],
"Status": true,
"StatusCode": "OK",
"Message": "Stc data found"
}
5.14 Get Job Scheduling Detail
This method will allow you to get the scheduling details of job from the Greenbot Portal.
5.14.1 Get Job Scheduling Detail Invocation Details
- Path : /api/Account/GetJobSchedulingDetail?VendorJobId=VendorJobId
- Type : Get
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.14.2 Get Submission Examples
Success Response:
{
"lstJobSchedulingDetails": [
{
"JobSchedulingId": 167288,
"VisitUniqueId": "200818002",
"VisitStatus": "Open",
"VisitCheckListItems": [
{
"VisitChecklistItemId": 1544535,
"ItemName": "Capture Back Panel Label"
},
{
"VisitChecklistItemId": 1544536,
"ItemName": "Capture PV Serial Numbers"
},
{
"VisitChecklistItemId": 1544537,
"ItemName": "Capture Installation Photos"
},
{
"VisitChecklistItemId": 1544538,
"ItemName": "Capture Inverter(s) photo"
},
{
"VisitChecklistItemId": 1544539,
"ItemName": "Capture Meterbox Photos"
},
{
"VisitChecklistItemId": 1544540,
"ItemName": "Capture Switchboard Photos"
},
{
"VisitChecklistItemId": 1544541,
"ItemName": "Capture inverter(s) Model label"
},
{
"VisitChecklistItemId": 1544542,
"ItemName": "Capture Signatures"
},
{
"VisitChecklistItemId": 1544543,
"ItemName": "Capture Certificate of Electrical Safety"
},
{
"VisitChecklistItemId": 1544544,
"ItemName": "Scan serial numbers only"
}
]
}
],
"Status": true,
"StatusCode": "OK",
"Message": "Job Scheduling data found"
}
5.15 Close Visit
This method will allow you to close visit of job from the Greenbot Portal.
5.15.1 Close Visit Invocation Details
- Path : /api/Account/CloseVisit
- Type : Post
- Headers:
- Content-Type: application/json
- Authorization: "token_type" "access_token"
5.9.2 Upload Documents Request Base Parameters
Parameters | Required | DataType | Description |
---|---|---|---|
VendorJobId | Yes | String | VendorJobId of job |
JobSchedulingId | Yes | String | JobSchedulingId of Job |
VisitStatus | Yes | int | VisitStatus=1 for OpenVisit, VisitStatus-2 for Close/CompleteVisit |
5.9.3 Upload Documents Example
Request:
{
"VendorJobId":"rid_VendorApi_20200820_3",
"JobSchedulingId":"10917",
"VisitStatus":1
}
Success Response:
{
"Status": true,
"StatusCode": "OK",
"Message": "Visit status has been changed successfully."
}
6.1 JobType
Value | Description |
---|---|
1 | PVD |
2 | SWH |
6.2 JobStage
Value | Description |
---|---|
1 | New |
2 | Preapproval |
3 | New Installation |
4 | In Progress |
5 | Complete |
6 | STC Trade |
7 | Aftersales |
8 | Cancellations |
9 | Installation Complete |
6.3 Priority
Value | Description |
---|---|
1 | High |
2 | Normal |
3 | Low |
6.4 OwnerType
Value |
---|
Individual |
Government body |
Corporate body |
Trustee |
6.5 AddressID
Value | Description |
---|---|
1 | physical address |
2 | P.O BOX |
6.6 PropertyType
Value |
---|
Residential |
School |
Commercial |
6.7 SingleMultipleStory
Value |
---|
Single story |
Multi story |
6.8 InstallingNewPanel
Value |
---|
New |
Replacing |
Adding |
6.9 TypeOfConnection
Value |
---|
Connected to an electricity grid without battery storage |
Connected to an electricity grid with battery storage |
Stand-alone (not connected to an electricity grid) |
6.10 SystemMountingType
Value |
---|
Building or structure |
Ground mounted or free standing |
6.11 DeemingPeriod (Based on installation year)
With increase in Installation Year = DeemingPeriod will decrease
Installation Year | DeemingPeriod |
---|---|
2017 | 14 |
2018 | 13 |
2019 | 12 |
2020 | 11 |
2021 | 10 |
6.12 MultipleSGUAddress
Value |
---|
Yes |
No |
6.13 Location
Value |
---|
North |
North-East |
East |
South-East |
South |
South-West |
West |
North-West |
6.14 UnitTypeID
Value | Description |
---|---|
1 | ANTENNA |
2 | APARTMENT |
3 | AUTOMATED TELLER MACHINE |
4 | BARBECUE |
5 | BUILDING |
6 | BLOCK |
7 | BUNGALOW |
8 | BOATSHED |
9 | CAGE |
10 | CARPARK |
11 | CARSPACE |
12 | CLUB |
13 | COOLROOM |
14 | COTTAGE |
15 | DUPLEX |
16 | FACTORY |
17 | FLAT |
18 | FLOOR |
19 | GARAGE |
20 | GRID |
21 | HALL |
22 | HOUSE |
23 | JETTY |
24 | KIOSK |
25 | LOBBY |
26 | LEVEL |
27 | LOC |
28 | LOFT |
29 | LOT |
30 | LEASE |
31 | MARINE BERTH |
32 | MAISONETTE |
33 | OFFICE |
34 | RESERVE |
35 | ROOM |
36 | SUITE |
37 | SECTION |
38 | SHED |
39 | SHOP |
40 | SHOWROOM |
41 | SIGN |
42 | SITE |
43 | STALL |
44 | STORE |
45 | STRATA UNIT |
46 | STUDIO |
47 | SUBSTATION |
48 | TENANCY |
49 | TOWNHOUSE |
50 | TOWER |
51 | UNIT |
52 | VILLA |
53 | VAULT |
54 | WARD |
55 | WAREHOUSE |
56 | WORKSHOP |
6.15 StreetTypeID
Value | Description |
---|---|
1 | Access |
2 | Alley |
3 | Alleyway |
4 | Amble |
5 | Approach |
6 | Arcade |
7 | Arterial |
8 | Artery |
9 | Avenue |
10 | Banan |
11 | Bend |
12 | Brace |
13 | Break |
14 | Brow |
15 | Boulevard |
16 | Boardwalk |
17 | Broadway |
18 | Bypass |
19 | Byway |
20 | Circuit |
21 | Chase |
22 | Circle |
23 | Close |
24 | Corner |
25 | Common |
26 | Concourse |
27 | Cove |
28 | Copse |
29 | Crescent |
30 | Circus |
31 | Cross |
32 | Crest |
33 | Cul-de-sac |
34 | Causeway |
35 | Court |
36 | Centre |
37 | Courtyard |
38 | Cutting |
39 | Dale |
40 | Dip |
41 | Drive |
42 | Driveway |
43 | Edge |
44 | Elbow |
45 | End |
46 | Entrance |
47 | Esplanade |
48 | Expressway |
49 | Fairway |
50 | Follow |
51 | Formation |
52 | Frontage |
53 | Footway |
54 | Freeway |
55 | Gap |
56 | Gardens |
57 | Glade |
58 | Glen |
59 | Grove |
60 | Grange |
61 | Green |
62 | Gate |
63 | Hill |
64 | Highroad |
65 | Heights |
66 | Highway |
67 | Interchange |
68 | Junction |
69 | Key |
70 | Lane |
71 | Line |
72 | Link |
73 | Lookout |
74 | Laneway |
75 | Loop |
76 | Mall |
77 | Mews |
78 | Meander |
79 | Motorway |
80 | Nook |
81 | Outlook |
82 | Pass |
83 | Path |
84 | Parade |
85 | Piazza |
86 | |
87 | Place |
88 | Plaza |
89 | Point |
90 | Port |
91 | Promenade |
92 | Passage |
93 | Pathway |
94 | Parkway |
95 | Quadrant |
96 | Quays |
97 | Road |
98 | Ridge |
99 | Rest |
100 | Rise |
101 | Ramble |
102 | Row |
103 | Route |
104 | Retreat |
105 | Rotary |
106 | Rue |
107 | Subway |
108 | Shunt |
109 | Square |
110 | Street |
111 | Strip |
112 | Spur |
113 | Serviceway |
114 | Tarn |
115 | Terrace |
116 | Thoroughfare |
117 | Tollway |
118 | Top |
119 | Tor |
120 | Track |
121 | Trail |
122 | Turn |
123 | Underpass |
124 | Vale |
125 | Viaduct |
126 | View |
127 | Village |
128 | Vista |
129 | Walk |
130 | Way |
131 | Wharf |
132 | Walkway |
133 | waters |
134 | Wynd |
135 | Brae |
6.16 PostalAddressID
Value | Description |
---|---|
1 | CARE-OF POST OFFICE |
2 | COMMUNITY MAIL AGENT |
3 | COMMUNITY MAIL BAG |
4 | GENERAL POST OFFICE BOX |
5 | LOCKED MAIL BAG SERVICE |
6 | MAIL SERVICE |
7 | POST OFFICE BOX |
8 | PRIVATE MAIL BAG SERVICE |
9 | ROADSIDE DELIVERY |
10 | ROADSIDE MAIL BOX/BAG |
11 | ROADSIDE MAIL SERVICE |
6.17 SWH InstallationType
Value |
---|
New building |
Replaced electric heater |
Replaced solar water heater |
First solar water heater at existing building |
Replaced gas water heater |
Other |
6.18 SEDesignRole
Value | Description |
---|---|
1 | Install |
2 | Design |
3 | Design_Install |
6.19 PhotoType
Value | Description |
---|---|
1 | Installation |
2 | SerialNumber |
6.20 DocumentType
Value | Description |
---|---|
1 | CES |
2 | STC |
3 | OTHER (Not for classic job) |
6.21 DocumentNameID
Value | Description |
---|---|
43 | STC_Assignment_Form |
44 | cespvd |
45 | EESG_SWH_Form |
46 | cessw |
6.22 DistributorID
Value | Description |
---|---|
1 | ActewAGL |
2 | AUSGRID |
3 | ENDEVOUR ENERGY |
4 | ENERGEX LIMITED |
5 | ERGON ENERGY CORPORATION |
6 | ESSENTIAL ENERGY |
7 | Horizon Power |
8 | JEMENA |
9 | NT Power and Water Corp |
10 | POWERCOR |
11 | PVD |
12 | SA Power Networks |
13 | SP AUSNET |
14 | SWH |
15 | TasNetworks |
16 | UNITED ENERGY DISTRIBUTION |
17 | Western Power |
6.23 ElectricityProviderID
Value | Description |
---|---|
1 | AGL |
2 | Australian Power & Gas |
3 | Alinta Energy |
4 | Aurora Energy |
5 | Blue NRG |
6 | Click Energy |
7 | Country Energy |
8 | Dodo Power & Gas |
9 | Diamond energy |
10 | EnergyAustralia |
11 | ERM Business Energy |
12 | ERM Power Retail |
13 | GoEnergy |
14 | Hydro Tasmania |
15 | Integral Energy |
16 | Jacana Energy |
17 | Lumo Energy |
18 | Momentum Energy |
19 | Neighbourhood Energy |
20 | Origin Energy |
21 | Powerdirect |
22 | Qenergy |
23 | Red Energy |
24 | Rimfire Energy |
25 | Sanctuary Energy |
26 | Simply Energy |
27 | Sun Retail |
28 | Synergy |
29 | TasGas |
30 | Transend Networks |
31 | SPAUSNET |
32 | POWERCOR |
33 | JEMENA |
34 | UNITED DISTRIBUTION |
35 | AUSGRID |
36 | ESSENTIAL ENERGY |
37 | ENDEVOUR ENERGY |
38 | ACTEWAGL |
39 | ENERGEX |
40 | ERGON ENERGY |
41 | SA POWER NETWORKS |
42 | WESTERN POWER |
43 | HORIZON POWER |
44 | NT POWER AND WATER CORP |
45 | TASNETWORKS |
6.24 IsDefault
Value | Description |
---|---|
0 | Default Photos |
1 | Reference Photos |