Step 2: Install the ECL Menu Connector
Overview
The ECL Menu Connector pulls menu data directly from the ECLs in your account and converts them into full Menu entities within the same account. This connector utilizes a custom entity type called “Menu” that was created specifically for converting and storing ECL data as entities.
Fields included on this entity type are:
- Menu Section (custom field type, comprised of the following subfields)
- Section Name
- Section ID
- Section Description
- Menu Item (custom field type, comprised of the following subfields)
- Item Name
- Item ID
- Item Price (Value)
- Item Description
- Item Photo
This connector will not delete your ECLs upon creation of the entities, and your ECLs will continue to power your listings across platforms. By converting your ECLs into entities, you will have increased flexibility for adding menu data to your Search, Pages, and Chat products.
Menu entities allow you to nest menu item data onto the Menu entity so that it mimics the structure of your menu ECLs. We are unable to add menu item options and any other sub-option fields directly to the Menu entities. If you would like to be able to reference menu item option fields, we recommend installing both the ECL Menu Connector and the ECL Menu Item Connector and using streams to link your Menu Item entities to your Menu entities to represent the full breadth of data stored in your ECLs.
If you would like to create Menu Item entities rather than Menu entities, see Step 3 of this guide.
If you would like to use the two ECL menu connectors together, see Step 4 of this guide.
Steps to Install
This app will create an ECL Menu connector in your Yext account. This connector will create full Menu entities out of your Menu ECLs.
- Navigate to Apps > Directory and search for ECL Menu Connector.
- Review the app details and click Install.
- Allow the connector to access your Yext Account by clicking Next.
- Input the API Key that you generated in Step 1.
- Click Authorize, which will install and run the connector. You will be redirected to the ECL Menu Connector overview page.
- Click Run Connector to pull in all of your Menu entities.
- Check out the newly created Menu entities in your account!
After installing the app you will have the ability to customize further. You can click Edit Configuration if you would like to add any additional data transforms or field mappings.
Menu Entity Relationship Mapping
Item Photo Field: Any menu item that does not have a Photo URL will be uploaded with a gray placeholder image. If you would like to update the placeholder image, you can replace the link in Transform #27 in the Connector with the link to whichever photo you would prefer. If you don’t have any item photos, you can unmap all of the photo fields in bulk by selecting all of the photo columns in the mappings tab, and then clicking More Actions > Clear Field Mapping.
Index Mapping: By default, this connector includes mapping for 20 menu sections and 20 menu items within each section. If your menus have more than 20 sections or items per section, you will need to add the additional selectors and mappings manually.
- You can do this either in the UI or in the Admin Console. For each field, you would need to add an additional index number
[x]
starting with 20 (the first 20 sections/items are index 0-19). You can copy the formatting in the Admin Console or in the UI for each field.
- You can do this either in the UI or in the Admin Console. For each field, you would need to add an additional index number
Troubleshooting
Download the details of your connector run and open the entity diagnostics file. Check what the error message is and see if you can troubleshoot.
- If the error relates to the item photo fields, make sure that all of your photo links are formatted correctly. If there is incorrect syntax in any of the links, the connector may fail. If needed, you can add additional transforms to fix the link errors based on the diagnostics file.
- If you receive a
429
error when running the connector multiple times in a short period, you are hitting a rate limit on the API. Check back in an hour and try re-running the connector then.