diff --git a/javascript/src/iframe/viamapi-iframe.js b/javascript/src/iframe/viamapi-iframe.js
index cf62bf4b9dcc0be361911a1c03f7aad5c417c0c1..53e9c24fb151b39968ff5c6a8b7652c20a06c8ff 100644
--- a/javascript/src/iframe/viamapi-iframe.js
+++ b/javascript/src/iframe/viamapi-iframe.js
@@ -610,6 +610,36 @@ const connection = Penpal.connectToParent({
 
       return responseToClient;
     },
+    identityPullAvatarFromGravatar() {
+      return new Penpal.Promise(result => {
+        const authenticationPublicKey = localStorage.getItem("authenticatedIdentity");
+        if (authenticationPublicKey === null) {
+          result({"data" : "",
+            "code" : "400",
+            "status" : "Identity not authenticated"
+          })
+        }
+        if (window.loadedIdentities[authenticationPublicKey] === null) {
+          result({"data" : "",
+            "code" : "400",
+            "status" : "Identity not authenticated"
+          })
+        }
+
+        var success = extendPinCodeTtl(authenticationPublicKey);
+
+        if(success === false) {
+          result({"data" : "",
+            "code" : "400",
+            "status" : "Identity not authenticated"
+          })
+        }
+
+        executeRestfulFunction("private", viamApi, viamApi.identityPullAvatarFromGravatar).then(executeResult => {
+          result(executeResult);
+        });
+      });
+    },
     identityAddNewDevice() {
       return new Penpal.Promise(result => {
         const authenticationPublicKey = localStorage.getItem("authenticatedIdentity");