Greenbot API Documentation

Download the Greenbot API Postman Collection

- Last updated: 20/07/2021

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.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
Email 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)
Email 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  Pocket
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

Greenbot


Greenbot is an Environmental Trading Portal that allows solar retailers to manage their solar installations and trade STCs with no processing fees. Get our best pricing and see why many solar installers and retailers are using Greenbot for their installations.

Download The App Now