URL Query Builder - Data360_Analyze - Latest

Data360 Analyze Server Help

Product type
Software
Portfolio
Verify
Product family
Data360
Product
Data360 Analyze
Version
Latest
Language
English
Product name
Data360 Analyze
Title
Data360 Analyze Server Help
Copyright
2024
First publish date
2016
Last updated
2024-11-28
Published on
2024-11-28T15:26:57.181000

Creates a list of URLs which can be used for HTTP requests.

The URL Query Builder node concatenates a list of base URLs with query string values. The node encodes the query string values creating complete URLs which can be used for a HTTP request. You can use the output of this node as input to a HTTP node.

Tip: The input to this node must contain well-formed URLs. This node does not validate or HTTP encode the URLs themselves, the node only HTTP encodes the query strings.

To configure this node:

  1. In the UrlField property, type the name of the input field that contains the base URL. One field in the input should contain the base URL.
  2. All remaining input fields (i.e. all input fields except the field that contains the base URL) are used to create the query strings. If you want to explicitly exclude fields, you can do this in the ExcludeFields property.
  3. In the UrlOutputField property, type a name for the output field that will contain the complete output URL.

The node outputs the same number of rows as there are in the input and converts all non-string values to string data using the same format as the Script str function:

  • Integers and longs will appear as they are written in the query string.
  • Doubles will be rounded to 6 significant digits and can also use scientific notation if necessary (for example, "1.012E20").
  • Boolean values will be converted to "1" for true values and "0" for false values.
  • Dates will be converted to string using the "CCYY-MM-DD" format.
  • Times will use the "HH:MM:SS" format.
  • A datetime will use the "CCYY-MM-DD HH:MM:SS" format.

Example

You have the following input data:

URL

string

q

string

appid

string

http://samples.openweathermap.org/data/2.5/weather "Boston,US" b1b15e88fa797225412429c1c50c122a1
http://samples.openweathermap.org/data/2.5/weather "Berlin,DE" b1b15e88fa797225412429c1c50c122a1

You want to append the query string values in the q and appid fields to the base URLs in the URL field.

  1. Connect a URL Query Builder node to the input.
  2. In the UrlField property type URL.
  3. In the UrlOutputField property, type a name for the output field that will contain the base URL with appended query string, for example OutputURL.
  4. Run the URL Query Builder node.

The output is as follows:

URL

string

http://samples.openweathermap.org/data/2.5/weather?q=Boston%2CUS&appid=b1b15e88fa797225412429c1c50c122a1
http://samples.openweathermap.org/data/2.5/weather?q=Berlin%2CDE&appid=b1b15e88fa797225412429c1c50c122a1

Properties

UrlField

Optionally specify the field that contains URLs that the user wants to append query strings to. If the UrlOutputField is specified, then this property must be specified as well. The data evaluated based on this property must either evaluate to a string or be converted to a string.

If there already is a query string in the UrlField, then that query string is completely replaced by the query string generated by this node.

UrlOutputField

Optionally specify the name of the output field containing the URLs with encoded query strings appended to them. If it is not filled in, then the node will not output a field containing URLs with query strings appended. The node will throw an error if UrlField is specified but UrlOutputField is not. The node will also throw an error if UrlOutputField is filled in but UrlField is not filled in.

IncludeFields

Optionally specify which fields are to be included in the query string. If the user wants to include more than one field, then the field names should be separated by commas. Field references can contain wildcards "?" and "*" that match field names in the same way that filenames are matched.

In evaluating the full list of fields to be included in the query string, the node will create a list of all fields that match the IncludeFields field list. Then, the node will remove from this list all fields that match the ExcludeFields field list. The remaining fields will be included in the output query string.

In order to match a question mark or an asterisk exactly, precede the character in question with a backslash. For example, to match a field named "Approved?" and to match no other fields, use the pattern: Approved\?.

ExcludeFields

Optionally specify which fields are to be excluded from query string encoding. If the user wants to exclude more than one field, then the field names should be separated by commas. Field references can contain wildcards "?" and "*" that match field names in the same way that filenames are matched.

In evaluating the full list of fields to be included in the query string, the node will create a list of all fields that match the IncludeFields field list. Then, the node will remove from this list all fields that match the ExcludeFields field list. The remaining fields will be included in the output query string.

In order to match a question mark or an asterisk exactly, precede the character in question with a backslash. For example, to match a field named "Approved?" and to match no other fields, use the pattern: Approved\?.

The default value for this property is "{{^UrlField=^}}". This means that, by default, this node excludes the UrlField as long as it is defined. If it is not defined, then this node does not exclude anything by default. If you would like to include all input fields in the query string, including the UrlField, then simply replace the text in this node with {{^^}}. If there are other fields that you would like exclude instead of UrlField, then simply overwrite the default value of this node with the fields you would rather exclude.

QueryStringOutputField

Optionally specify the name of the output field containing the encoded query strings. If it is not filled in, then there is no separate field containing only encoded query strings in the output, as the query string may be included in the UrlOutputField. The node will throw an error if QueryStringOutputFields is blank, either the IncludeFields or ExcludeFields property is filled in, and none of the URL-related properties are filled in.

PassThroughFields

Optionally specify which input fields will "pass through" the node unchanged from the input to the output, assuming that the input exists. The input fields specified will appear on those output records which were produced as a result of the input fields. Choose from:

  • All - Passes through all the input data fields to the output.
  • None - Passes none of the input data fields to the output; as such, only the fields created by the node appear on the output.
  • Used - Passes through all the fields that the node used to create the output. Used fields include any input field referenced by a property, be it explicitly (i.e., via a 'field1' reference) or via a field pattern (i.e., '1:foo*').
  • Unused - Passes through all the fields that the node did not use to create the output.

The default value is Used.

If a naming conflict exists between a pass-through field and an explicitly named output field, the pass-through field will be overwritten by the named output field.

NullValueBehavior

Optionally specify the action to take if there is a NULL value for one of the properties that fills the query string. Choose from:

  • Error - Throws an error if there is a NULL value in the property list.
  • Blank - Results in the property being output in the Query string without a value (ie. Parameter=).
  • Ignore. Results in the node not outputting the NULL property to the output Query String at all.

The default value is Error.

Inputs and outputs

Inputs: Input.

Outputs: Encoded.