Syndigo Upsert
Overview
You can use this Snap to update existing entity records and create new entity records based on matching attributes for each entity. The Snap allows you to specify the domain, entity type, global locale, global source to locate the entity and update its details. You can use this Snap to perform create and update operations on the entity details by passing the corresponding data in a simple JSON format. The upsert operation allows adding new attributes to an existing entity and deleting the existing attributes.
You cannot delete an entire entity using this Snap. Use the Syndigo Delete Snap instead.

Write-type Snap
Works in Ultra Tasks
Limitations and known issues
None.
Snap views
View | Description | Examples of upstream and downstream Snaps |
---|---|---|
Input | This Snap has at the most one document input view. The entity or entities for which you want to create, update, and/or delete the details. | |
Output | This Snap has at the most one document output view. This Snap displays the details of the entity/entities from the Syndigo in the RSJSON or simplified JSON format. | |
Error |
Error handling is a generic way to handle errors without losing data or failing the Snap execution. You can handle the errors that the Snap might encounter when running the pipeline by choosing one of the following options from the When errors occur list under the Views tab. The available options are:
Learn more about Error handling in Pipelines. |
Snap settings
- Expression icon (
): Allows using JavaScript syntax to access SnapLogic Expressions to set field values dynamically (if enabled). If disabled, you can provide a static value. Learn more.
- SnapGPT (
): Generates SnapLogic Expressions based on natural language using SnapGPT. Learn more.
- Suggestion icon (
): Populates a list of values dynamically based on your Snap configuration. You can select only one attribute at a time using the icon. Type into the field if it supports a comma-separated list of values.
- Upload
: Uploads files. Learn more.
Field / Field set | Type | Description |
---|---|---|
Label | String |
Required. Specify a unique name for the Snap. Modify this to be more appropriate, especially if more than one of the same Snaps is in the pipeline. Default value: Syndigo Upsert Example: CUD operations on things |
Domain | String/Expression/ Suggestion |
A (data) domain in Syndigo refers to a large data set that covers a specific area of importance like Product data, Customer data, Asset data, or Suppplier data. Specify the domain to upsert the entity information records from. See the list of permitted domains. Default value: None. Example: thing |
Entity | String/Expression/ Suggestion |
Required. Specify the entity type (category) under the chosen domains to update the entity information. The list of suggested entities is based on the specified domain. If no Domain is specified, this field suggests all entities that the Snap account can access. Default value: None. Example: product |
Validate input | Checkbox |
Select this checkbox for the Snap to validate the input data against the expected schema for the selected Domain-Entity combination. Note: If this checkbox is selected, the Snap verifies whether:
Default status: Selected |
RSJSON input | Checkbox |
Select this checkbox to indicate that the input is in the RSJSON format. The Snap does not validate the input data for RSJSON format compliance. Selecting this checkbox disables the Global locale, Global source, and UOM seprator fields. Default status: Deselected |
Global locale | String/Expression | Specify the global locale to be used, in the xx-XX language identifier format,
while formatting this simplified/flattened JSON input data to RSJSON format.
Default value: en-US Example: fr-FR |
Global source | String/Expression | Specify the source to be used, whether it is internal or external, while formatting this simplified/flattened JSON input data to RSJSON format. Default value: internal Example: external |
UOM separator | String/Expression |
Specify the separator character/string that separates a value from its unit of measure (UOM) in the simplified/flattened JSON input. Default value: ## Example: @$%, ^$* |
Snap execution | Dropdown list |
Choose one of the three modes in
which the Snap executes. Available options are:
Default value: Execute only Example: Validate & Execute |
Troubleshooting
Error while validating the input. Invalid RSJSON format.
The Syndigo Upsert Snap expects input data in a valid RSJSON format schema when the RSJSON input checkbox is selected.
Restructure your input (if it follows simplified JSON schema or otherwise) to match the schema expectations of the RSJSON format.
Error while generating schema
The schema of the input data does not match with that of the specified Domain and Entity combination. Syndigo Upsert Snap expects input data in a valid RSJSON format schema.
Either restructure your input to follow the simplified JSON schema or RSJSON (OR) choose a valid combination of Domain and Entity that matches with the input data's schema.
Error while validating the input. No matching attributes found in the input data.
The Snap did not find atleast one matching configuration in the input for the specified Domain and Entity combination. Syndigo Upsert Snap expects atleast one matching configuration in the input data.
Either modify your input to include atleast one matching configuration (OR) choose a valid combination of Domain and Entity that matches with the input data's schema.