Sample code for 30+ languages & platforms
Java

Google Sheets Conditional Formatting - Color Gradient

See more Google Sheets Examples

Add a conditional color gradient across a row

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Http;
import com.chilkatsoft.chilkat2.HttpResponse;
import com.chilkatsoft.chilkat2.JsonObject;

public class ChilkatExample {

    public static void main(String[] args) {
        // This example assumes the Chilkat API to have been previously unlocked.
        // See Global Unlock Sample for sample code.

        Http http = new Http();

        // Implements the following CURL command:

        // curl -H "Content-Type: application/json" \
        //    -H "Authorization: Bearer ACCESS_TOKEN" \
        //    -X POST \
        //    -d '{
        //   "requests": [
        //     {
        //       "addConditionalFormatRule": {
        //         "rule": {
        //           "ranges": [
        //             {
        //               "sheetId": sheetId,
        //               "startRowIndex": 9,
        //               "endRowIndex": 10,
        //             }
        //           ],
        //           "gradientRule": {
        //             "minpoint": {
        //               "color": {
        //                 "green": 0.2,
        //                 "red": 0.8
        //               },
        //               "type": "MIN"
        //             },
        //             "maxpoint": {
        //               "color": {
        //                 "green": 0.9
        //               },
        //               "type": "MAX"
        //             },
        //           }
        //         },
        //         "index": 0
        //       }
        //     },
        //     {
        //       "addConditionalFormatRule": {
        //         "rule": {
        //           "ranges": [
        //             {
        //               "sheetId": sheetId,
        //               "startRowIndex": 10,
        //               "endRowIndex": 11,
        //             }
        //           ],
        //           "gradientRule": {
        //             "minpoint": {
        //               "color": {
        //                 "green": 0.8,
        //                 "red": 0.8
        //               },
        //               "type": "NUMBER",
        //               "value": "0"
        //             },
        //             "maxpoint": {
        //               "color": {
        //                 "blue": 0.9,
        //                 "green": 0.5,
        //                 "red": 0.5
        //               },
        //               "type": "NUMBER",
        //               "value": "256"
        //             },
        //           }
        //         },
        //         "index": 1
        //       }
        //     },
        //   ]
        // }' https://sheets.googleapis.com/v4/spreadsheets/{spreadsheetId}:batchUpdate

        // Use the following online tool to generate HTTP code from a CURL command
        // Convert a cURL Command to HTTP Source Code

        // Use this online tool to generate code from sample JSON:
        // Generate Code to Create JSON

        // The following JSON is sent in the request body.

        // {
        //   "requests": [
        //     {
        //       "addConditionalFormatRule": {
        //         "rule": {
        //           "ranges": [
        //             {
        //               "sheetId": sheetId,
        //               "startRowIndex": 9,
        //               "endRowIndex": 10
        //             }
        //           ],
        //           "gradientRule": {
        //             "minpoint": {
        //               "color": {
        //                 "green": 0.2,
        //                 "red": 0.8
        //               },
        //               "type": "MIN"
        //             },
        //             "maxpoint": {
        //               "color": {
        //                 "green": 0.9
        //               },
        //               "type": "MAX"
        //             }
        //           }
        //         },
        //         "index": 0
        //       }
        //     },
        //     {
        //       "addConditionalFormatRule": {
        //         "rule": {
        //           "ranges": [
        //             {
        //               "sheetId": sheetId,
        //               "startRowIndex": 10,
        //               "endRowIndex": 11
        //             }
        //           ],
        //           "gradientRule": {
        //             "minpoint": {
        //               "color": {
        //                 "green": 0.8,
        //                 "red": 0.8
        //               },
        //               "type": "NUMBER",
        //               "value": "0"
        //             },
        //             "maxpoint": {
        //               "color": {
        //                 "blue": 0.9,
        //                 "green": 0.5,
        //                 "red": 0.5
        //               },
        //               "type": "NUMBER",
        //               "value": "256"
        //             }
        //           }
        //         },
        //         "index": 1
        //       }
        //     }
        //   ]
        // }

        String sheetId = "YOUR_SHEET_ID";

        JsonObject json = new JsonObject();
        json.updateString("requests[0].addConditionalFormatRule.rule.ranges[0].sheetId", sheetId);
        json.updateInt("requests[0].addConditionalFormatRule.rule.ranges[0].startRowIndex", 9);
        json.updateInt("requests[0].addConditionalFormatRule.rule.ranges[0].endRowIndex", 10);
        json.updateNumber("requests[0].addConditionalFormatRule.rule.gradientRule.minpoint.color.green", "0.2");
        json.updateNumber("requests[0].addConditionalFormatRule.rule.gradientRule.minpoint.color.red", "0.8");
        json.updateString("requests[0].addConditionalFormatRule.rule.gradientRule.minpoint.type", "MIN");
        json.updateNumber("requests[0].addConditionalFormatRule.rule.gradientRule.maxpoint.color.green", "0.9");
        json.updateString("requests[0].addConditionalFormatRule.rule.gradientRule.maxpoint.type", "MAX");
        json.updateInt("requests[0].addConditionalFormatRule.index", 0);
        json.updateString("requests[1].addConditionalFormatRule.rule.ranges[0].sheetId", sheetId);
        json.updateInt("requests[1].addConditionalFormatRule.rule.ranges[0].startRowIndex", 10);
        json.updateInt("requests[1].addConditionalFormatRule.rule.ranges[0].endRowIndex", 11);
        json.updateNumber("requests[1].addConditionalFormatRule.rule.gradientRule.minpoint.color.green", "0.8");
        json.updateNumber("requests[1].addConditionalFormatRule.rule.gradientRule.minpoint.color.red", "0.8");
        json.updateString("requests[1].addConditionalFormatRule.rule.gradientRule.minpoint.type", "NUMBER");
        json.updateString("requests[1].addConditionalFormatRule.rule.gradientRule.minpoint.value", "0");
        json.updateNumber("requests[1].addConditionalFormatRule.rule.gradientRule.maxpoint.color.blue", "0.9");
        json.updateNumber("requests[1].addConditionalFormatRule.rule.gradientRule.maxpoint.color.green", "0.5");
        json.updateNumber("requests[1].addConditionalFormatRule.rule.gradientRule.maxpoint.color.red", "0.5");
        json.updateString("requests[1].addConditionalFormatRule.rule.gradientRule.maxpoint.type", "NUMBER");
        json.updateString("requests[1].addConditionalFormatRule.rule.gradientRule.maxpoint.value", "256");
        json.updateInt("requests[1].addConditionalFormatRule.index", 1);

        // Adds the "Authorization: Bearer ACCESS_TOKEN" header.
        http.setAuthToken("ACCESS_TOKEN");
        http.setRequestHeader("Content-Type", "application/json");

        HttpResponse resp = new HttpResponse();
        try {
            http.httpJson("POST", "https://sheets.googleapis.com/v4/spreadsheets/{spreadsheetId}:batchUpdate", json, "application/json", resp);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        System.out.println("Status code: " + resp.getStatusCode());
        System.out.println("Response body:");
        System.out.println(resp.getBodyStr());
    }
}