This is usually due to either the CORS issue you mentioned, or an http/https mismatch. My guess is that your spec calls for http, but the portal is being served on https. Try changing to https.
Have you tried running trace on your API? You should see a OPTIONS request which you will need to respond to with a 200 and the correct headers (e.g. x-apikey) that your API is passing.
Even I was having same issue.
200 responses were successfully reflecting in Swagger Document, but in error conditions it was giving undocumentedTypeError: Failed to fetch error.
Issue is resolved on adding CORs in error flow like below: