Google Sheets is an online spreadsheet that lets users create and format spreadsheets and simultaneously work with other people. The Google Spreadsheet endpoint allows you to access the Google Spreadsheet API Version v4 through Ballerina.
The following sections provide you with information on how to use the Ballerina Google Spreadsheet endpoint.
Ballerina Language Versions | Google Spreadsheet API Version |
---|---|
1.0.x, 1.1.x | V4 |
Download the ballerina distribution.
You can pull the Spreadsheet client from Ballerina Central:
$ ballerina pull wso2/gsheets4
Alternatively, you can install Spreadsheet client from the source using the following instructions.
Building the source
-
Clone this repository using the following command:
$ git clone https://github.com/wso2-ballerina/module-googlespreadsheet.git
-
Run this command from the
module-googlespreadsheet
root directory:$ ballerina build gsheets4
Installation
You can install module-googlespreadsheet using:
shell $ ballerina install gsheets4
This adds the googlespreadsheet module into the Ballerina home repository.
First, import the wso2/gsheets4
module into the Ballerina project.
import wso2/gsheets4;
All the actions return valid response or error. If the action is a success, then the requested resource will be returned. Else error will be returned.
In order for you to use the GSheets Endpoint, first you need to create a GSheets Client endpoint.
import wso2/gsheets4;
gsheets4:SpreadsheetConfiguration spreadsheetConfig = {
oAuthClientConfig: {
accessToken: "<accessToken>",
refreshConfig: {
clientId: "<clientId>",
clientSecret: "<clientSecret>",
refreshUrl: "<refreshUrl>",
refreshToken: "<refreshToken>"
}
}
};
gsheets4:Client spreadsheetClient = new (spreadsheetConfig);
Then the endpoint actions can be invoked as var response = spreadsheetClient->actionName(arguments)
.
import ballerina/io;
import wso2/gsheets4;
gsheets4:SpreadsheetConfiguration spreadsheetConfig = {
oAuthClientConfig: {
accessToken: "<accessToken>",
refreshConfig: {
clientId: "<clientId>",
clientSecret: "<clientSecret>",
refreshUrl: "<refreshUrl>",
refreshToken: "<refreshToken>"
}
}
};
gsheets4:Client spreadsheetClient = new (spreadsheetConfig);
public function main(string... args) {
var response = spreadsheetClient->openSpreadsheetById("1nROELRHZ9JadnvIBizBfnx0FASo2tg7r-gRP1ribYNY");
if (response is gsheets4:Spreadsheet) {
io:println("Spreadsheet Details: ", response);
} else {
io:println("Error: ", response);
}
}
import ballerina/io;
import wso2/gsheets4;
gsheets4:SpreadsheetConfiguration spreadsheetConfig = {
oAuthClientConfig: {
accessToken: "<accessToken>",
refreshConfig: {
clientId: "<clientId>",
clientSecret: "<clientSecret>",
refreshUrl: "<refreshUrl>",
refreshToken: "<refreshToken>"
}
},
secureSocketConfig: {
trustStore:{
path: "<fullQualifiedPathToTrustStore>",
password: "<truststorePassword>"
}
}
};
gsheets4:Client spreadsheetClient = new (spreadsheetConfig);
public function main(string... args) {
var response = spreadsheetClient->openSpreadsheetById("1nROELRHZ9JadnvIBizBfnx0FASo2tg7r-gRP1ribYNY");
if (response is gsheets4:Spreadsheet) {
io:println("Spreadsheet Details: ", response);
} else {
io:println("Error: ", response);
}
}
Clone the repository by running the following command
git clone https://github.com/wso2-ballerina/module-googlespreadsheet.git
As an open source project, we welcome contributions from the community. Check the issue tracker for open issues that interest you. We look forward to receiving your contributions.