title: async and await call an api for a response,
body: <p>I have a function that looks like this,</p>
  <pre><code>const addItem = async(req, res, next) =&gt; {
      const itemApi = new Connector({
          url: '/item',
          method: 'POST',
          headers: {},
          body: {item: &quot;item name&quot;}
      });
      try {
         const response = await itemApi.call();
         if(response.data &amp;&amp; response.data.errors) {
             return response.data.errors;
         } else {
           return response.data;
         }
     } catch(error) {
        console.log(error);
     }
  </code></pre>
  <p>I invoking this method like this,</p>
  <pre><code>addItem(req, res, next)
     .then((response) =&gt; console.log(response))
     .catch((error) =&gt; console.log(error))
  </code></pre>
  <p>It seems that the <code>then</code> is always called and catch never called even if the api returns an error? Am I doing something wrong?</p>