@randomrnti Figured out my issue was due to the AWS policy only allowing certain clients for the iot:Connect policy. Changing it to the wildcard * fixed my issue.
Another issue though is I can only get it working for Wifi. The moment I attempt this on NB-IoT I'm getting the following errors:
AWSIoTMQTTClientSocket create error: [Errno -78] MBEDTLS_ERR_NET_SEND_FAILED
This again is on the connect action and I've tried with connecting using both the IP Address and it's domain name.