AppSheet icon

AppSheet

Interact with the AppSheet API to add, read, update, delete records, or invoke a custom action on table records.

Overview

This node integrates with the AppSheet API to perform various operations on table records within an AppSheet application. Specifically, for the Create Record operation, it allows users to add new records to a specified AppSheet table by providing the record data in JSON format.

Common scenarios where this node is beneficial include:

  • Automating data entry into AppSheet tables from other systems or workflows.
  • Bulk importing multiple records into an AppSheet app.
  • Integrating external data sources with AppSheet apps without manual input.

For example, you can use this node to add new product groups to an inventory management AppSheet app by supplying an array of product group objects with their respective fields.

Properties

Name Meaning
Region The AppSheet region domain to use in the API URL. Options: "Global (www.appsheet.com)" or "EU (eu.appsheet.com)".
Table Name The name of the AppSheet table where the record(s) will be added. This should be URL-encoded if necessary.
Record Data A JSON array of objects representing the record(s) to add. Each object must include the key fields required by the table. Example:
[{
  "Product Group": "New Product Group",
  "Product Group Image": "https://example.com/images/new-product-group.png",
  "Default UOM": "Units",
  "Tender Summary Initial Template": "Default Tender Template",
  "Product Group Short Code": "NPG",
  "Model Naming Syntax": "NPG-{ID}"
}]
```                                                                                      |
| Locale       | Locale used for formatting dates and numbers, e.g., "en-US".                                                                                                                                                             |
| Location     | Geographical coordinates as a string, e.g., "47.623098, -122.330184".                                                                                                                                                    |
| Timezone     | Timezone used for date/time formatting, e.g., "Pacific Standard Time".                                                                                                                                                   |

## Output
The output is a JSON array containing the response(s) from the AppSheet API after attempting to create the record(s). Each element corresponds to the result of adding a record and typically includes details about the created record or any errors encountered.

If multiple input items are processed, the output aggregates all responses into a single array.

No binary data output is produced by this operation.

## Dependencies
- Requires an API key credential for authenticating with the AppSheet API.
- Needs the App ID of the target AppSheet application.
- The node makes HTTP POST requests to the AppSheet API endpoint corresponding to the selected region and table.
- Proper configuration of credentials and permissions in n8n is necessary to allow access to the AppSheet API.

## Troubleshooting
- **Invalid JSON format in Record Data**: If the JSON provided in the "Record Data" property is malformed or not a valid JSON array of objects, the node will throw an error. Ensure the JSON syntax is correct and that it represents an array of objects.
- **API Authentication Errors**: If the API key or App ID credentials are incorrect or missing, the request will fail. Verify that the credentials are correctly set up in n8n.
- **Table Name Issues**: If the table name is incorrect or does not exist in the AppSheet app, the API will return an error. Confirm the exact table name and URL-encode it if necessary.
- **Region Mismatch**: Using the wrong region domain may cause connectivity issues. Make sure the region matches the location of your AppSheet app.
- **Empty or Missing Required Fields**: Records must include all key fields required by the AppSheet table schema. Omitting these will cause the API to reject the record creation.

## Links and References
- [AppSheet API Documentation](https://help.appsheet.com/en/articles/1977570-appsheet-api-overview)
- [AppSheet Actions and Table API Reference](https://help.appsheet.com/en/articles/1977581-table-actions-api)
- [n8n Documentation on Creating Custom Nodes](https://docs.n8n.io/integrations/creating-nodes/)

Discussion