diff --git a/javascript/src/iframe/viamapi-iframe.js b/javascript/src/iframe/viamapi-iframe.js
index 7e363315bc4206db21018877603467aae71b98d6..a1d55dcf0eb6180f08df452b4e60c429fdce15dd 100644
--- a/javascript/src/iframe/viamapi-iframe.js
+++ b/javascript/src/iframe/viamapi-iframe.js
@@ -653,6 +653,19 @@ const connection = Penpal.connectToParent({
 
       return responseToClient;
     },
+    identityPullAvatarFromGravatar: async () => {
+      const authenticationPublicKey = localStorage.getItem("authenticatedIdentity");
+
+      if (
+        !authenticationPublicKey ||
+        !window.loadedIdentities[authenticationPublicKey] ||
+        !extendPinCodeTtl(authenticationPublicKey)
+      ) {
+        return encodeResponse("400", "", "Identity not authenticated");
+      }
+
+      return await executeRestfulFunction("private", viamApi, viamApi.identityPullAvatarFromGravatar);
+    },
     identityAddNewDevice() {
       return new Penpal.Promise(result => {
         const authenticationPublicKey = localStorage.getItem("authenticatedIdentity");