Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.

In this article


You can use this Snap to generate a JSON document for the next Snap in the Pipeline.

  • This Snap is often used at the beginning of a Pipeline to create a file.
  • This Snap does not need any Accounts.

Image Modified



Limitations and Known Issues

The maximum size for a JSON file generated using this Snap is 16 MB.

Snap Input and Output

Input/OutputType of ViewNumber of ViewsExamples of Upstream and Downstream SnapsDescription


  • Min: 0
  • Max: 1
  • Mapper Snap
  • Copy Snap
  • Splitter Snap
This Snap can have an upstream Snap that can pass a JSON document in output view. 


  • Min: 1
  • Max: 1
  • Mapper Snap
  • Copy Snap
  • JSON Parser
  • JSON Formatter

This Snap generates a document that contains the expected result along with the original JSON document (when Pass through is enabled).

Snap Settings

Parameter NameData TypeDescriptionDefault ValueExample 
Insert excerpt
File Writer
File Writer
N/AJSON Generator
Edit JSONApache Velocity template

Optional. Launches the JSON editor which allows you to define JSON. The editor loads an existing JSON document if defined previously. The editor lets you save JSON in SnapLogic's file system or import existing JSON documents from it.

You can substitute the variables in the JSON with document values from the input view of the Snap.

The JSON text is treated as an Apache Velocity template, so you can substitute values from input documents or the pipeline parameters. The Apache Velocity template can be used to pass dynamic values from upstream Snaps. For more information, see

You can customize the JSON file to: 

  • Generate static content that produces one output document.

  • Generate a list of static documents within an array definition which can then be transformed into multiple documents upstream by using a JSON Splitter Snap.

Learn more:

Empty JSON fileFile with JSON content
Process ArrayCheckboxOptional. The Process array property specifies whether or not the Component should take a root JSON array and write each element of the array as a JSON document. SelectedSelected
Pass throughCheckboxOptional. Use this property to pass the data in the input document through to the output document and merge it under the key 'original'. See example for more details.DeselectedSelected
Support Type ExtensionsCheckbox
Multiexcerpt include macro
pageJSON Formatter
Snap ExecutionString

Indicates how the Snap must be executed. Available options are:

  • Validate & Execute: Performs limited execution of the Snap (up to 50 records) during Pipeline validation; performs full execution of the Snap (unlimited records) during Pipeline execution.
  • Execute only: Performs full execution of the Snap during Pipeline execution; does not execute the Snap during Pipeline validation.
  • Disabled: Disables the Snap and, by extension, its downstream Snaps.

Validate & ExecuteExecute only


Unexpected character ('{' (code 123)

The array entries in the JSON file do not follow the syntax. A comma ',' is expected before the beginning of every second array—'{'.

Verify the array at the row and column mentioned beside the error message using the Edit JSON feature and add a comma appropriately.

Editing JSON document

  1. Click Edit JSON to launch the JSON Editor. 

  2. Edit the JSON file as required.

  3. Click Ok.
    The JSON document is stored in


  1. the


Generate static content that produces one output document.


  1. Snap.

Options in JSON Editor

Image Modified

The following table describes the numbered callouts in the image:

Callout Number




Hide whitespace

Hides the whitespace in the output that you may have in the JSON input document.


Format code

Allows you to format the JSON input document.



Export the JSON document to SnapLogic's file system (SLFS)



Import a JSON document from your local directory or SLFS.

Escaping Special Characters


The input schema in Mapper Snap when you deselect Support Type Extensions checkbox in the JSON Generator Snap is as follows. The Snap displays the SnapLogic-specific syntax in the Input Schema.

Here's the same Mapper Snap when you select the Support Type Extensions checkbox. Note the data types in the Input Schema—the Snap does not display the SnapLogic-specific syntax in the Input Schema.
Image Modified

Similarly, here's a Mapper Snap showing the JSON Parser output when you deselect the Support Type Extensions checkbox.
Image Modified

Here's the same Mapper when you select the Support Type Extensions checkbox.
Image Modified

The Support Type Extensions state affects the JSON Formatter's output. When you deselect this checkbox, the SnapLogic-specific syntax is not used; the Snap uses a string representation for each of the special objects.
Image Modified

Here's the output when you select the Support Type Extensions checkbox:
Image Modified


titleImportant Steps to Successfully Reuse Pipelines
  1. Download and import the Pipeline into SnapLogic.
  2. Configure Snap accounts as applicable.
  3. Provide Pipeline parameters as applicable.