Appearance
Frequently Asked Questions
MyRelewise - I can't login! Who do I contact/What do I do?
Expand
If you have forgotten your password to your MyRelewise account, the easiest way to retrieve it is to use the forgot password feature on the website. This should help you reset your password in a matter of minutes.
If you cannot reset your password, consider reaching out to us at support@relewise.com or via Slack, and we will do what we can to get you back to working order as soon as possible.
MyRelewise - The Interface is not showing my currency in the Currency picker
Expand
The UI will only show currencies that have been tracked within the chosen time period. Specifically, the UI tracks the use of currencies in order trackings, and does not consider a currency "active" if it hasn't been used in any order trackings recently. This is to prevent our customers from being billed for currencies in markets that are not yet released, even if such currency data exists on the product data.
Entity Data - Are Datakeys Case Sensitive?
Expand
Yes! As a rule, all datakeys in Relewise are case sensitive. To avoid running into issues during implementation of our services, ensure that you match the content of each key exactly.
Failure to observe case sensitivity may lead to sub-par performance, as tracking, search results and entity integration will suffer from double-tracking, duplicate products, inaccurate search results, and more.
Area | Key Type | Area | Key Type |
---|---|---|---|
General | Currency | Product | Id |
Language | Display Name | ||
Location | Category Name | ||
Search Term | Category Id | ||
User | AuthenticatedId | Brand Name | |
TemporaryId | Variant | Id | |
Classification Key | Display Name | ||
Classification Value | Specification Key | ||
Identifier Value | Specification Value | ||
Channel | Content | Id | |
Company | Id | Display Name | |
Cart and Order | Cart Name |
Entity Data - My products are showing incorrect prices on my website / in my email recommendations
Expand
It is likely that your prices have yet to be synchronized to Relewise. When your products are showing incorrect prices in a search or recommendation result, check the product(s) in your MyRelewise, under Entities -> Products. This is the price being used by Relewise, and if it does not reflect the changes you have made in your ERP/PIM, it means that the data has yet to be synchronized to your dataset.
Depending on how your data is being intergrated, it may be a matter of the feed job needing time to run again; typically, a job runs every hour.
For data related to email campaigns, the job to synchronize data typically runs every 6-8 hours.
If you push data via the API, you may have to check with your internal IT to know when the data will be synchronized.
Entity Data - I updated my products, and now one or more of them have changed from disabled to enabled. What happened?
Expand
Using the UpdateKind ClearAndReplace
will reset your products to enabled by default. Normally you would use ProductAdministrativeAction
to enable or disable a product, as per the implementation steps. However, the ClearAndReplace
UpdateKind of a ProductUpdate
request will treat the product as if it was freshly imported into Relewise, which means that it will default to an Enabled state.
ClearAndReplace
does not affect the product ID, and products updated this way will retain their associated tracking data.
Entity Data - Do Variant IDs need to be unique?
Expand
Variant IDs only need to be unique across their associated product. Since each variant product is explicitly tied to a main product, the variant number is only checked in reference to this primary product ID. This means that you can have variants with the same ID associated with different products, without causing problems for Relewise Search and Recommendations.
Example of Variant IDs across Products
Product A with ProductID
= "p1121" has Variants with VariantID
= "v12", "v13", "v14".
Product B with ProductID
= "p1705" has Variants with VariantID
= "v12", "v13", "v14".
These will not conflict, since the engine looks at the ProductID
first, and the VariantID
second.
Entity Data - What is the difference between Specifications and Data on Variants?
Expand
Specifications refer to a series of key-value data sets that specify the dimensions of a variant product. This could be, for instance, a specification of color
with the values red
, black
, and green
.
Variant Data refers to any kind of data key you might want to use to do one or more of the following: Store, retrieve as part of a response, search within (indexed), filter by, merchandise based on etc.
Variants themselves refer to the unique combination of specifications that make up a particular product. So a T-shirt that has the specifications color
and size
, might be the variant size=small, color=black
.
Providing specifications allows Relewise to try and match variants of one product to the variants of another in recommendation scenarios.
Read more about Variants here.
Entity Data - What is the best way to separate markets that use the same currency but differ in sales price?
Expand
Use currency prefixes. Currencies can have any format you desire in Relewise; this means that you can use prefixes to differentiate between markets that use the same currency but where the prices might be different. For instance, the Euro can be sorted into German Euro and Italian Euro by naming them de-eur
and it-eur
respectively. The only important thing to remember is that each currency must have a valid ISO 639-1 code.
Entity Data - How should I format my language keys?
Expand
Languages in Relewise can have any name that you desire, so long as it maps to a valid ISO 639-1 code. The Relewise Search Index maps to the ISO 639-1 standard, eg. en
for English or de
for German. It is however possible to use any language code that you desire; doing so just requires you to map your custom language(s) to the ISO standard. This can be done via the MyRelewise Search Index. Relewise automatically converts language and currency keys to lowercase when encoding the data.
Entity Data - What is the Custom Dictionary for Variants, and what do I use it for?
Expand
The Custom Dictionary is intended for internal use only. For any kind of custom data that you need to append to an entity, you can use the Data Dictionary and one of the many different data types that Relewise supports.
Tracking - How should I track return orders?
Expand
You shouldn't. When tracking, consider that Relewise mainly uses order tracking to create connections between products that are purchased together. We do not consider the price for tracking purposes. When you send a tracking request with products A and B, it tells our engine that they have been purchased together - information that we can then use for recommendation purposes, among other things. By sending a second tracking, even with a negative price attached, all you end up doing is telling the engine a second time that products A and B were tracked together in an order. Therefore: Handle your returns in your ERP, but leave them out of Relewise.
Search - Why am I not getting my expected search results in the expected order?
Expand
Many things can affect the results of your search, and the order in which results are displayed. For concrete assistance in troubleshooting product(s) out of place, please refer to our troubleshooting guide.
A common mistake during implementation is imposing a sorting logic on the search results after they are returned from Relewise. Doing so defeats the purpose of using Relewise for your search, as it undermines the personalization and relevancy scores that we rely on to deliver results.
To check if your implementation is sorting products after they are returned from Relewise, find your search in the MyRelewise search live view, and consult the order of the products shown there. Then compare product number one with what is shown in first place on your site. If these do not correspond exactly, something is happening on the front end to affect your search results.
Search - Why do my Redirects not work?
Expand
Redirects are not, despite the name, a forced 301-redirect for your website. Since Relewise is simply an API, we do not have any capacity to affect the UI functions of your website - which also means that we are unable to enforce a page redirect in any way, shape or form.
A redirect in a Relewise context is simply a URL string that you can attach to the result of a search query, when that query matches a particular parameter. This URL, in turn, must be handled by your website in some capacity, typically either by enacting a forced 301-redirect to the particular URL upon hitting the search button, or by creating a UI element that offers the user access to the page specified by the Redirect rule.
If you have set up a Redirect rule in MyRelewise, but it is not having an effect, odds are that you are lacking the necessary frontend component to handle the URL string being returned with your query. We urge you to investigate this with your frontend developers, as Relewise are unable to help you create the necessary frontend changes. We are, of course, more than happy to assist with sparring, should you require it.
Search - How do I account for subcategories and supercategories in my searches?
Expand
Relewise handles all types of word relations via our Synonyms feature. Hyponyms are words that belong to a subcategory of words, eg. red
and blue
are hyponyms of color
, while Hypernyms are words that belong to a category of more specific words, eg. vehicle
is a hypernym of car
and bike
. These are not innately built into the Relewise engine, but can be set up using one-way Synonyms via the MyRelewise interface. You can read more about using Synonyms in Relewise in our documentation here: Synonyms in Relewise Search
Search - Can Synonyms be Multiple Words?
Expand
No; in Relewise, a synonym cannot be created from a term that is more than one word long. This includes "open" compound words (those compound words that contain spaces), such as ice cream
or sleeping bag
.
In essence, the Relewise engine indexes each word of a synonym separately. This means that adding open compound words will register as individual words in the logic of the engine, and be treated as such.
Synonym logic example
For the Multidirectional synonym Gelato
<--> Ice Cream
The engine will interpret it as Gelato
= Ice
= Cream
This means that searching for Ice
will yield results for Gelato
and Cream
as well.
This may not be ideal, depending on the usecase scenario.
If you find yourself in a situation where you need to create synonyms for open compound words, consider instead using a search term modifier to affect change to the search term before it is evaluated by the engine.
Alternatively, think laterally about how you might accomplish your goal through the use of alternative, single-word synonyms, optimized entity data, or search index adjustments. We strongly encourage you to reach out to us to discuss such scenarios, so we can find the best solution for you.
Recommendations - What recommendation type should I use for my PDP/PLP/Basket?
Expand
The ideal recommendation type is entirely dependent on the kind of business you run, whether you cater to B2C or B2B customers, the type of products you sell, and so much more. For general advice on where to use our various recommendation types, we have created the Recommendation Usage page to assist with selecting the recommendation type that is right for you.
We have also collected a number of suggestions for which recommendation type goes where. You can find this list under our best practices, available here.
Recommendations - My Recommendations shows strange/unexpected/the wrong products
Expand
This issue arises when there is insufficient behavioral tracking to properly support a substantial recommendation scheme. For instance, if you are using the ProductsViewedAfterViewingProduct
recommendation, it is a prerequisite that Relewise has been able to gather enough product view trackings to predict what products should be shown.
When there is insufficient behavioral tracking to properly fill the recommendation, the system may not have enough data to fill out your recommendation slider. There are two popular solutions for this, both of which are predicated on enabling the Fill function via the AllowFillIfNecessaryToReachNumberOfRecommendations
flag.
The default Fill will attempt to fill out a recommendation slider with Popular products, ensuring that your users will see entities that, if not directly relevant to the product they are viewing, at least has a proven high interest rate across your site.
Alternatively, you can include a filter on the Fill that limits the scope to only target popular products from the same product category as the product being viewed. This helps to ensure that the products being recommended has more direct value to the user.
csharp
request.Filters.Add(new ProductCategoryIdFilter("category-id", CategoryScope.ImmediateParent)
{
Settings = new FilterSettings
{
Scopes = new FilterScopes
{
Default = new ApplyFilterSettings(false),
Fill = new ApplyFilterSettings(true),
}
}
});
Filters - What is the difference between Filters and Facets?
Expand
A Filter sets the conditions on which products may be shown in a search or a recommendation to begin with. This lets you define the group of potential hits that a customer may get - the sum total of the entities being evaluated.
Facets, on the other hand, are applied client-side, and serve to sort the entities according to user preference. Facets are where you apply your sorting according to size, color, material etc.
Typically, the purpose of Filters is to narrow down the potential group of entities that are targetable. You might have some products you don't want to be searched or recommended, some entities reserved for special user groups, etc. Facets are applied secondarily by the user to narrow down the hits to something more relevant for them.
It is important to distinguish between the two concepts and apply them as intended, since filtering on things like product variant data can wind up excluding more products than intended.
API - My API key fails when called from a browser
Expand
Make sure you are using a different API key than the Master key. In MyRelewise, under Administration -> API Keys, you will find a list of the API keys attached to your dataset. For reasons of security, the Master Key cannot be used for browser-related calls, and so you have to create a new API key with the necessary permissions for the job(s) you are trying to do.
There is no limit on how many API keys you can have at once, and we recommend creating new keys with the least amount of viable permissions for each area you are working in. Since you can revoke your keys at any time, by providing it with the least necessary permissions required ensures that your security stays high.
API - Do I need a newer MessagePack than 2.3.85 to run the Relewise NuGet Package?
Expand
No. So long as you have MessagePack >= 2.3.85, you are fine. You do not need to install the newest package to install Relewise's NuGet Package, and if you want to prevent the system from prompting you to update when you go to install the package, you can install it without dependencies as so:
Install-Package Relewise.Client -IgnoreDependencies
Afterwards, you can add a AssemblyRedirect that points to the version you are running.
We recommend installing a Relewise.Client version newer than 1.10.0, since older versions have deprecated and lack several of the newer features available in Relewise.
API - Can I run the Relewise NuGet Package on a Newtonsoft.json version lower than 13?
Expand
Our package requires a version higher than 13 due to a vulnerability in the earlier versions. If you are bound to the lower version or simply wish to install Relewise regardless, you can install the package without dependencies, as so:
Install-Package Relewise.Client -IgnoreDependencies
API - Can I filter certain IPs/internal traffic out of being tracked?
Expand
Yes and no. There is no built-in filter in MyRelewise for removing incoming traffic, so any filtering must be done client-side. However, if you know the IPs, user IDs or other signifier for the traffic you want to sort out, you can set up a rule to not send the tracking request to Relewise for those identifiers. This ensures that you only track the data you are interested in tracking.