Convert classic index to an ecommerce index
Context
Ecommerce indexes are not just a thin wrapper around a Marqo Classic index. They require additional config records in DDB and per-index AWS resources (e.g. SQS queues). These are automatically set up when creating a new ecommerce index, but require an extra step for existing Classic indexes.
Process
-
Call the create index ecom API for the existing index, with the extra field
allowExisting: truein the body. This will perform all the steps that would normally happen when creating a new ecom index (e.g. provisioning DDB records and SQS queues), but not actually create the index.curl -X POST \ <your ecom API URL, e.g. dev or staging>/api/v1/indexes \ -H "Content-Type: application/json" \ -H "Authorization: Bearer YOUR_API_KEY" \ -d '{ "indexName": "EXISTING_INDEX_NAME", "modelType": "ecommerce", "allowExisting": true }' staging index URL: https://staging-ecom.dev-marqo.orgThis is sufficient to start using the ecom API for this index.
-
To make Console treat the index like an ecom index, add
{metadata: {shopId: "INDEX_SHOP_ID"}}to theCustomerIndexConfigTable- For regular ecom indexes (i.e. not created through the Shopify integration), “shop ID” is just
{SYSTEM_ACCOUNT_ID}-{INDEX_NAME}. - For now this is a manual operation. Use Escalator: Self-Service Admin for prod admin access if your index is in prod.
- For regular ecom indexes (i.e. not created through the Shopify integration), “shop ID” is just