Skip to main content

Update Data from Google Sheet

The API for using Google Sheets with app.neoagent.co provides functionality to update the data in a sheet by sending a POST request to the endpoint /chat/Chatbot/UpdateGoogleSheetData.

warning

Warning: This API is only compatible with traditional chatbots and is not yet compatible with template-based chatbots.

Endpoint

Request URL: https://app.neoagent.co/chat/Chatbot/UpdateGoogleSheetData
Method: POST

Required Headers

The API request must include the following headers:

  • Authorization: <Your-Secret-Key> - string, required - The secret key to authenticate the API request
  • Content-Type: application/json - string, required - The content type of the request payload (must be application/json)

Request Body

The request body must contain the following parameters:

{
// string, required - Unique identifier (ID) of the chatbot
"serialNumber": "3254a9d0424c4806b9ea3d0763xxxxxx",
// array of objects, required - List of rows of data to update, the field ID is required for the update.
// Each ID represents the ID of the data row to be updated and Data is a dynamic object that users can customize based on their needs.
"rows": [
{
"ID": 1,
"Data": {
"url": "XXXXX",
"name": "apple",
"productname": "iphone 16 pro max",
"price": 111
}
},
{
"ID": 2,
"Data": {
"url": "XXXXX",
"name": "xiaomi",
"productname": "xiaomi 16",
"price": 111
}
}
]
}

Parameters

  • serialNumber - string, required - Unique identifier (ID) of the chatbot
  • rows - array of objects, required - List of Google Sheet data. //In each row element, fields like URL, name, product name, and price are dynamic customizable fields. //Their definitions and values are determined by the user and can be modified based on specific requirements.

Request Examples

const res = await fetch('https://app.neoagent.co/chat/Chatbot/UpdateGoogleSheetData', {
method: 'POST',
headers: {
"Authorization": "<Your-Secret-Key>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"serialNumber": "3254a9d0424c4806b9ea3d0763xxxxxx",
"rows": [
{
"ID": 1,
"Data": {
"url": "XXXXX",
"name": "apple",
"productname": "iphone 16 pro max",
"price": 111
}
},
{
"ID": 2,
"Data": {
"url": "XXXXX",
"name": "xiaomi",
"productname": "xiaomi 16",
"price": 111
}
}
]
})
});

const data = await res.json();
console.log(data);

Response

The API response will be a JSON object with the following structure:

{
// array of integers - Represents the IDs of the data rows that have been updated.
"Data": [
1,
2
],
// string - API version
"Version": "1.0.0",
// boolean - Success status of the operation
"Success": true,
// integer - HTTP status code
"Code": 200,
// string - Error message, if present
"Message": ""
}

Error Handling

If the request fails, you should:

  1. Check the HTTP status code for network-level errors
  2. Examine the Code and Message fields in the response for business-level errors
  3. The Message field will contain detailed information about the error