chrome.tabs.highlight giving error "No tab at index"

chrome.tabs.highlight requires a tab index, not a tabId. You can convert a tabId into an index using chrome.tabs.get:

chrome.tabs.get(tabId, function(tab) {
  chrome.tabs.highlight({'tabs': tab.index}, function() {});
});

Another important thing (in addition of using the tab index) is to provide the windowId. This is not documented in the official chrome docs, but helps if a different window or inspector is active.

chrome.tabs.highlight({
  windowId: tab.windowId,
  tabs: tab.index
}, function () {});