NOTE
To add Catalog to your Iterable account, talk to your customer success manager.
When searching through the items in a catalog, a catalog collection can only inspect fields that have been assigned explicit data types. Data types allow the collection to understand the values stored in catalog items and to provide relevant search operators to work with them.
This document describes how to set data types for the fields in catalog items.
In this article
Collections and data types
When searching through a catalog, collections can only inspect catalog item fields that have been given explicit data types.
As you add new items to a catalog, Iterable will prompt you to define data types for any fields for which it doesn't already know the type.
For a list of data types that can be assigned to catalog item fields, read Data Types for Catalog Item Fields.
You can skip type definition when creating new catalog items. However, collections cannot run searches against untyped fields, which limits their usefulness when personalizing campaigns.
If you skip type definition when creating new catalog items, you can come back and do it later. However, collections can only search fields whose data type was known when the field was originally created. Because of this, to search against newly typed fields in previously created data, you'll also need to re-create or re-upload that data.
Once a field's type has been set, it will be the same for all catalog items in that catalog.
IMPORTANT
Do not use periods in catalog item field names, since they make it impossible to define a data type for that field.
Defining data types when creating catalog items
When creating catalog items, Iterable will prompt you to define data types for any previously unseen fields.
For example, this screenshot shows that a CSV upload to a Restaurants
catalog,
and it has a newvegetarian
field:
Click the Define Field Types button.
-
Select a Field Type value for each undefined field.
NOTE
When defining the data type for an object field:
- Set the top-level field to be an object.
- Provide data types (string, long, etc.) for each of the fields contained in that top-level object.
-
Click Review These Changes, and review the changes:
If everything looks correct, click Confirm and Upload. Otherwise, click Go Back to make changes.
Defining data types with the API
To use Iterable's API to define data types, call PUT /api/catalogs/{catalogName}/fieldMappings
.
TIP
You can use this API before putting any data in a catalog.
Defining data types for existing fields
To define data types for untyped fields that already exist in a catalog:
Navigate to Content > Catalogs and open a catalog.
-
Navigate to the field definitions screen by clicking Define Field Types.
-
Review the field types in the catalog:
Click Define Now to update the definitions for any undefined fields.
-
For each untyped field, click on the Field Type column and select the appropriate data type:
-
Click Review These Changes to make sure everything looks correct:
Finally, click Confirm Save to set the data types or Go Back to make more changes.
IMPORTANT
Collections can only search data created after a field's type has been defined. Because of this, to search that field in data created before the type was set, you'll need to re-create or re-upload that data.