[]
        
(Showing Draft Content)

Configuring Web API Queries

General

Once you have configured a valid JSON Web API data source, the Configure JSON Queries screen allows you to add one or more queries to the JSON data retrieved by the data source.

Configure JSON Queries

Adding and Removing Queries

You can add and remove Queries by using the Add and Remove buttons below the list on the left side of the screen. At least one query is required to complete proceed to the next steps.

Configuring Queries

Each query has the Name property that is the unique ID of the query and the Path property that is a JSON Path expression that is used to select the repeating nodes from the JSON data to visualize them in a report.

You can set the Path in the JSON data tree by clicking the corresponding node or you can enter the Path manually in the Query textbox. Here are several examples of JSON Path Expressions.

  • If the JSON data is an array, and you want to select all nodes from that array, you can use the expression $.[*], as shown in the screenshot above.
  • If you want to select data from a specific property within an object, such as selecting a customer's orders, you can use an expression like $.orders[*].
  • If you want to filter the data by a specific field, you can use an expression like $.[?(@.country == 'USA')].
  • For more examples, you can check the original JSON Path specification.

Dynamic queries

You could also make a query dynamic by using parameters in the path expression. Parameters are dynamic values that are either supplied programmatically via your application's code or provided by the report reader through user input. To insert a parameter into a path expression, click the Insert parameter... link below the Query textbox. The Parameters dialog will appear:

Configure Dynamic Queries

Here, you can re-use an existing parameter or create a new one by clicking the Add button. The following parameter properties can be configured:

  • Name: The parameter name used as a reference in query. You’ll need this name to supply its value via code if you choose to do so.
  • Type: The data type of the parameter. You can select from Boolean, DateTime, Integer, Float, and String.
  • Testing Value: The value used at design-time to test the query.
  • Input Source: Choose Programmatic to supply the parameter values via your application code, or Interactive to allow report readers to provide the parameter values.

Once you click the OK button, the reference to the selected parameter will be inserted into the path expression. For example, it will be updated to $.[?(@.country == )], which filters the data by country using a dynamic value.

Next steps

Once you have configured one or more queries, click Finish >> to create a report with data binding configured, or click Next > to add a data display control.