Вам нужно инициализировать VisualRecognition, используя другой инициализатор, как показано ниже
let visualRecognition = VisualRecognition(version: version, apiKey: apiKey, iamUrl: nil)
Разница в том, что вам нужно будет вызвать этот конструктор с тремя аргументами и третьим аргументом, то есть iamUrl, даже если вы сделаете его равным нулю, а все остальное будет таким же. Это говорит классу VisualRecognition для аутентификации вашего приложения с использованием IAM.
Git документация очень запутанная, которая говорит здесь https://github.com/watson-developer-cloud/swift-sdk#visual-recognition
Примечание: для аутентификации используется другой инициализатор с экземплярами, созданными до 23 мая 2018 года:
Что означает, что старый способ должен просто работать, ЕСЛИ , они допустили ошибку и на самом деле означают ПОСЛЕ 23 мая 2018
В любом случае, если вы попробуете, это должно сработать. У меня была эта проблема за 30 минут до написания этого ответа.