Skip to content

Feeds

Inspect product feeds and their runs, and look up product data and recent changes.

Tips & tricks

Check the latest feed run before investigating missing products. A failed run explains most gaps.

Show the latest product feed run for my website and whether it succeeded.

To dig into a specific failed run, list recent runs to get the runId, then fetch the full detail record.

List the last 5 runs for feed <ID> on my website, then show me the full detail for any that failed.

Watch itemsDeleted in a run result. A spike often means the feed URL returned a partial response, not that the products were genuinely removed.

Show the latest feed run for my website and flag anything unusual about the item counts.

Once you know a product is indexed, use the product data tools to see exactly what Hello Retail has stored for it.

Show the indexed data for product number <NUMBER> on my website.

createProductFeed

Create a new V2 product feed for a customer website. The feed is created in state INACTIVE by default, so it can be configured and verified before it starts running. Once ACTIVE, the feed runs on a schedule every runIntervalSeconds (default: every 24 hours). Returns the full configuration detail of the created feed, including the new feed ID.

Write operation

This tool creates a new feed. The feed starts INACTIVE and won't run until you activate it in My Hello Retail. Your assistant will ask for confirmation before this runs.

Name Type Required Description
websiteUuid string Yes UUID of the customer's website. Use getWebsiteInfo to look up available websites, or find it in my.helloretail.com under Settings → Website Settings → Website Unique Id.
name string Yes Display name of the feed.
url string Yes URL the feed will be fetched from. Must be an http(s) URL.
format string Yes Content format of the feed response. One of: JSON, XML, DSV, JSONL.
Optional parameters
Name Type Description
requestType string How the feed is fetched. One of: SINGLE_REQUEST, PAGE_BASED, OFFSET_BASED. PAGE_BASED requires pageBasedConfig and OFFSET_BASED requires offsetBasedConfig. Default: SINGLE_REQUEST.
state string Initial feed lifecycle state. One of: ACTIVE, INACTIVE. Default: INACTIVE.
runIntervalSeconds integer Seconds between scheduled runs, clamped to between 1800 (30 minutes) and 8640000 (100 days). 0 means manual runs only and is allowed only for INACTIVE feeds. Default: 86400 (24 hours).
itemsPath string Path to the products array in the feed response, as a '>'-separated chain of element names (e.g. "products>product"). Omit or use "root" when the products are at the feed root.
transformationCode string JavaScript executed on each product after parsing. Defaults to an identity transform that passes every product through unchanged.
basicAuthUser string HTTP Basic Auth username.
basicAuthPassword string HTTP Basic Auth password.
customHeaders string JSON object of custom HTTP headers, e.g. {"X-Api-Key": "abc"}.
requestWaitSeconds integer Seconds to wait between paginated requests (0-30). Default: 0.
cacheBusting boolean Whether to append a cache-busting query parameter to the URL. Default: true.
allowDeltaRuns boolean Whether to enable incremental delta runs. Default: true.
pageBasedConfig string JSON object for page-based pagination: {"pageVariable": "page", "pageInitialValue": 1, "sizeVariable": "pageSize", "sizeValue": 200}. Required when requestType is PAGE_BASED, not allowed otherwise.
offsetBasedConfig string JSON object for offset-based pagination: {"startOffsetVariable": "from", "offsetInitialValue": 0, "offsetSizeVariable": "length", "offsetSize": 200}. Required when requestType is OFFSET_BASED, not allowed otherwise.
createProducts boolean Whether the feed is allowed to create new products. Default: true.
stopIfFewerThanExpected boolean Enable/disable the fewer-than-expected safety stop. Default: true.
stopIfMoreThanExpected boolean Enable/disable the more-than-expected safety stop. Default: true.
Example request & response
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "createProductFeed",
    "arguments": {
      "websiteUuid": "<string>",
      "name": "<string>",
      "url": "<string>",
      "format": "<string>"
    }
  }
}
{
  "id": 0,
  "name": "<string>",
  "url": "<string>",
  "state": "<string>",
  "format": "<string>",
  "requestType": "<string>",
  "runIntervalSeconds": 0,
  "lastRunAt": "<string>",
  "nextRunAt": "<string>",
  "itemsPath": "<string>",
  "transformationCode": "<string>",
  "basicAuthUser": "<string>",
  "customHeaders": "<string>",
  "requestWaitSeconds": 0,
  "cacheBusting": false,
  "allowDeltaRuns": false,
  "pageBasedConfig": "<string>",
  "offsetBasedConfig": "<string>",
  "createProducts": false,
  "stopIfFewerThanExpected": false,
  "stopIfMoreThanExpected": false
}

getProductFeed

Retrieve full configuration detail for a single V2 product feed.

Name Type Required Description
websiteUuid string Yes UUID of the customer's website. Use getWebsiteInfo to look up available websites, or find it in my.helloretail.com under Settings → Website Settings → Website Unique Id.
feedId integer Yes ID of the feed. Use listProductFeeds to find available feed IDs.
Example request & response
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "getProductFeed",
    "arguments": {
      "websiteUuid": "<string>",
      "feedId": 0
    }
  }
}
{
  "id": 0,
  "name": "<string>",
  "url": "<string>",
  "state": "<string>",
  "format": "<string>",
  "requestType": "<string>",
  "runIntervalSeconds": 0,
  "lastRunAt": "<string>",
  "nextRunAt": "<string>",
  "itemsPath": "<string>",
  "transformationCode": "<string>",
  "basicAuthUser": "<string>",
  "customHeaders": "<string>",
  "requestWaitSeconds": 0,
  "cacheBusting": false,
  "allowDeltaRuns": false,
  "pageBasedConfig": "<string>",
  "offsetBasedConfig": "<string>",
  "createProducts": false,
  "stopIfFewerThanExpected": false,
  "stopIfMoreThanExpected": false
}

updateProductFeed

Patch one or more fields on a V2 product feed. This is a partial update: only the fields you provide are changed. Every omitted field keeps its current value.

Write operation

This tool modifies the feed configuration. Changes apply immediately and may affect the next scheduled run. Your assistant will ask for confirmation before this runs.

Name Type Required Description
websiteUuid string Yes UUID of the customer's website. Use getWebsiteInfo to look up available websites, or find it in my.helloretail.com under Settings → Website Settings → Website Unique Id.
feedId integer Yes ID of the feed to update. Use listProductFeeds to find available feed IDs.
Optional parameters
Name Type Description
name string Display name of the feed.
url string URL the feed should be fetched from. Must be an http(s) URL.
state string Feed lifecycle state. One of: ACTIVE, INACTIVE, ARCHIVED.
itemsPath string Path to the products array in the feed response, as a '>'-separated chain of element names (e.g. "products>product"). Omit or use "root" when the products are at the feed root.
crawlConfig string JSON string defining how fields are extracted from each product in the feed.
transformationCode string JavaScript executed on each product after parsing.
basicAuthUser string HTTP Basic Auth username.
basicAuthPassword string HTTP Basic Auth password.
customHeaders string JSON object of custom HTTP headers, e.g. {"X-Api-Key": "abc"}.
runIntervalSeconds integer Seconds between scheduled runs. Must be positive; values are clamped to between 1800 (30 minutes) and 8640000 (100 days).
requestWaitSeconds integer Seconds to wait between paginated requests (0-30).
cacheBusting boolean Whether to append a cache-busting query parameter to the URL.
allowDeltaRuns boolean Whether to enable incremental delta runs.
pageBasedConfig string JSON object for page-based pagination. Only valid for feeds with requestType PAGE_BASED.
offsetBasedConfig string JSON object for offset-based pagination. Only valid for feeds with requestType OFFSET_BASED.
createProducts boolean Whether the feed is allowed to create new products.
stopIfFewerThanExpected boolean Enable/disable the fewer-than-expected safety stop.
stopIfMoreThanExpected boolean Enable/disable the more-than-expected safety stop.
Example request & response
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "updateProductFeed",
    "arguments": {
      "websiteUuid": "<string>",
      "feedId": 0
    }
  }
}
{
  "id": 0,
  "name": "<string>",
  "state": "<string>",
  "lastModified": "<string>"
}

listProductFeeds

List all V2 product feeds for a customer website. Archived feeds are excluded by default.

Name Type Required Description
websiteUuid string Yes UUID of the customer's website. Use getWebsiteInfo to look up available websites, or find it in my.helloretail.com under Settings → Website Settings → Website Unique Id.
includeArchived boolean No When true, archived feeds are included in the results. Default: false.
Example request & response
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "listProductFeeds",
    "arguments": {
      "websiteUuid": "<string>"
    }
  }
}
[
  {
    "id": 0,
    "name": "<string>",
    "url": "<string>",
    "state": "<string>",
    "format": "<string>",
    "requestType": "<string>",
    "runIntervalSeconds": 0,
    "lastRunAt": "<string>",
    "nextRunAt": "<string>"
  }
]

getProductFeedRun

Return the full detail record for a specific run identified by its runId. Use this after listProductFeedRuns to drill into a particular run, for example to compare a failed run against a successful one.

Name Type Required Description
websiteUuid string Yes UUID of the customer's website. Find it in my.helloretail.com under Settings → Website Settings → Website Unique Id.
feedId integer Yes ID of the feed the run belongs to. Use listProductFeeds to find available feed IDs.
runId string Yes Queue item ObjectId hex string. Obtained from the runId field in listProductFeedRuns.
Example request & response
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "getProductFeedRun",
    "arguments": {
      "websiteUuid": "<string>",
      "feedId": 0,
      "runId": "<string>"
    }
  }
}
{
  "runId": "<string>",
  "runType": "<string>",
  "state": "<string>",
  "interrupted": false,
  "queuedAt": "<string>",
  "itemsTotal": 0,
  "itemsAdded": 0,
  "itemsUpdated": 0,
  "itemsDeleted": 0,
  "itemsFailed": 0,
  "hasErrors": false,
  "itemsSkipped": 0,
  "downloadTimeMs": 0,
  "parsingTimeMs": 0,
  "feedFileSizeBytes": 0,
  "feedUrl": "<string>",
  "messages": [],
  "incompleteFeed": false,
  "issues": [],
  "ignoredFields": [],
  "autoCorrectedFields": [],
  "deltaTokenUsed": "<string>",
  "deltaTokenFound": "<string>"
}

getLatestProductFeedRun

Return the full detail record for the most recent run of a V2 product feed. Includes timing, per-field quality diagnostics, log messages, and error information. Use this to diagnose a failed or slow run without first calling listProductFeedRuns.

Name Type Required Description
websiteUuid string Yes UUID of the customer's website.
feedId integer Yes ID of the feed. Use listProductFeeds to find available feed IDs.
Example request & response
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "getLatestProductFeedRun",
    "arguments": {
      "websiteUuid": "<string>",
      "feedId": 0
    }
  }
}
{
  "runId": "<string>",
  "runType": "<string>",
  "state": "<string>",
  "interrupted": false,
  "queuedAt": "<string>",
  "itemsTotal": 0,
  "itemsAdded": 0,
  "itemsUpdated": 0,
  "itemsDeleted": 0,
  "itemsFailed": 0,
  "hasErrors": false,
  "itemsSkipped": 0,
  "downloadTimeMs": 0,
  "parsingTimeMs": 0,
  "feedFileSizeBytes": 0,
  "feedUrl": "<string>",
  "messages": [],
  "incompleteFeed": false,
  "issues": [],
  "ignoredFields": [],
  "autoCorrectedFields": [],
  "deltaTokenUsed": "<string>",
  "deltaTokenFound": "<string>"
}

listProductFeedRuns

Return the most recent run history for a V2 product feed, newest first. Useful for checking whether recent runs succeeded and obtaining a runId for getProductFeedRun.

Name Type Required Description
websiteUuid string Yes UUID of the customer's website.
feedId integer Yes ID of the feed. Use listProductFeeds to find available feed IDs.
limit integer No Maximum number of runs to return. Between 1 and 50. Default: 10.
Example request & response
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "listProductFeedRuns",
    "arguments": {
      "websiteUuid": "<string>",
      "feedId": 0
    }
  }
}
[
  {
    "runId": "<string>",
    "runType": "<string>",
    "state": "<string>",
    "interrupted": false,
    "queuedAt": "<string>",
    "itemsTotal": 0,
    "itemsAdded": 0,
    "itemsUpdated": 0,
    "itemsDeleted": 0,
    "itemsFailed": 0,
    "hasErrors": false
  }
]