diff --git a/javascript/src/viamapi-client.js b/javascript/src/viamapi-client.js
index bb40ca79c9872883b0b39e357c6f6db34c5e205f..d57c2d980b8d2125b0552223474143c05a9d269c 100644
--- a/javascript/src/viamapi-client.js
+++ b/javascript/src/viamapi-client.js
@@ -8,7 +8,7 @@ const Penpal = require('penpal').default;
  * @param apiUrl -  API URL used to access API endpoints
  * @returns {*}
  */
-async function setupViamAPI(divId, methods, iframeUrl, apiUrl) {
+function setupViamAPI(divId, methods, iframeUrl, apiUrl) {
 	if (!apiUrl) {
 		return Promise.reject('API Host not specified.')
 	}
@@ -22,10 +22,8 @@ async function setupViamAPI(divId, methods, iframeUrl, apiUrl) {
 	  methods
 	});
 
-	const child = await connection.promise;
-	await child.initializeApiHost(apiUrl);
-
-	return child;
+	return connection.promise
+		.then((child) => child.initializeApiHost(apiUrl).then(() => child))
 }
 
 window.setupViamAPI = setupViamAPI;