chrome.storage.sync.set() not storing values (inside background.js page in chrome extension)

The following is code from a chrome extension I’m working on. My manifest.json has the appropriate “storage” permission. The output I refer to in the code block is being seen in the ‘inspect popup’ javascript console, for background pages. I even tried downloading the storage explorer and checking there, and it shows the chrome.storage being empty after the function finishes. Any thoughts? I’ve been at this bug for days.

(It seems all the similar chrome.storage API questions on stackoverflow have to do with not understanding the asynchronous nature of the API, but that isn’t the case here obviously, so I’m stuck.)

function startOauth() {
  // open stripe onboarding
  chrome.identity.launchWebAuthFlow({
    'url': 'https://connect.stripe.com/express/oauth/authorize?client_id=',
    'interactive': true
  }, (redirect_url) => {
    // check if user exited or finished onboarding
    if(!chrome.runtime.lastError) {
      let code = redirect_url.substring(redirect_url.lastIndexOf('=')+1);
      // no error, so send code to backend to retrieve userid and authtoken for user
      $.post('', { code }, (data) => {
        if(data.error) {
          // problem retrieving authtoken from stripe
          console.log(data.error, data.error_description);
        } else {


          // authtoken and account data for user retrieved. store for later
          console.log('response: ', data); // <---- THIS PRINTS FULL DATA OBJECT
          chrome.storage.sync.set({
            "key1": data.value1,
            "key2": data.value2,
            "key3": data.value3,
          }, () => {
            // check and see if stored successfully
            chrome.storage.sync.get(null, (items) => {
              console.log('storage: ', items); // <---- THIS PRINTS {}
            });
          });


        }
      }).fail(() => {
        console.log('POST request to backend failed');
      });
    } else {
      console.log('user quit the oauth process');
    }
  });

What algorithm do Google use to fetch frequently contacted users in Google Contacts?

I do not see any way to get Frequently Contacted users in Google Contact API documentation. However, there is a section named ‘Frequently Contacted’ in Google Contacts page. I want to retrieve these contacts in my chrome app. How can i achieve this with minimal request to the Google APIs?