diff --git src/bp-core/js/avatar.js src/bp-core/js/avatar.js
index 1226d2b..b410204 100644
--- src/bp-core/js/avatar.js
+++ src/bp-core/js/avatar.js
@@ -34,6 +34,9 @@ window.bp = window.bp || {};
 			// Avatars are uploaded files
 			this.avatars = bp.Uploader.filesUploaded;
 
+			// The Avatar Attachment object.
+			this.Attachment = new Backbone.Model();
+
 			// Wait till the queue is reset
 			bp.Uploader.filesQueue.on( 'reset', this.cropView, this );
 
@@ -256,6 +259,20 @@ window.bp = window.bp || {};
 				// Inject the Delete nav
 				bp.Avatar.navItems.get( 'delete' ).set( { hide: 0 } );
 
+				/**
+				 * Set the Attachment object
+				 *
+				 * You can run extra actions once the avatar is set using:
+				 * bp.Avatar.Attachment.on( 'change:url', function( data ) { your code } );
+				 *
+				 * In this case data.attributes will include the url to the newly
+				 * uploaded avatar, the object and the item_id concerned.
+				 */
+				self.Attachment.set( _.extend(
+					_.pick( avatar.attributes, ['object', 'item_id'] ),
+					{ url: response.avatar, action: 'uploaded' }
+				) );
+
 			} ).fail( function( response ) {
 				var feedback = BP_Uploader.strings.default_error;
 				if ( ! _.isUndefined( response ) ) {
@@ -329,8 +346,22 @@ window.bp = window.bp || {};
 					$( this ).prop( 'src', response.avatar );
 				} );
 
-				 // Remove the Delete nav
-				 bp.Avatar.navItems.get( 'delete' ).set( { active: 0, hide: 1 } );
+				// Remove the Delete nav
+				bp.Avatar.navItems.get( 'delete' ).set( { active: 0, hide: 1 } );
+
+				/**
+				 * Reset the Attachment object
+				 *
+				 * You can run extra actions once the avatar is set using:
+				 * bp.Avatar.Attachment.on( 'change:url', function( data ) { your code } );
+				 *
+				 * In this case data.attributes will include the url to the gravatar,
+				 * the object and the item_id concerned.
+				 */
+				self.Attachment.set( _.extend(
+					_.pick( model.attributes, ['object', 'item_id'] ),
+					{ url: response.avatar, action: 'deleted' }
+				) );
 
 			} ).fail( function( response ) {
 				var feedback = BP_Uploader.strings.default_error;
diff --git src/bp-core/js/cover-image.js src/bp-core/js/cover-image.js
index bd51777..07b2259 100644
--- src/bp-core/js/cover-image.js
+++ src/bp-core/js/cover-image.js
@@ -20,6 +20,9 @@ window.bp = window.bp || {};
 			this.views   = new Backbone.Collection();
 			this.warning = null;
 
+			// The Cover Image Attachment object.
+			this.Attachment = new Backbone.Model();
+
 			// Set up views
 			this.uploaderView();
 
@@ -125,6 +128,20 @@ window.bp = window.bp || {};
 				// Reset the has_cover_image bp_param
 				BP_Uploader.settings.defaults.multipart_params.bp_params.has_cover_image = false;
 
+				/**
+				 * Reset the Attachment object
+				 *
+				 * You can run extra actions once the cover image is set using:
+				 * bp.CoverImage.Attachment.on( 'change:url', function( data ) { your code } );
+				 *
+				 * In this case data.attributes will include the default url for the
+				 * cover image (most of the time: ''), the object and the item_id concerned.
+				 */
+				self.Attachment.set( _.extend(
+					_.pick( model.attributes, ['object', 'item_id'] ),
+					{ url: response.reset_url, action: 'deleted' }
+				) );
+
 			} ).fail( function( response ) {
 				var feedback = BP_Uploader.strings.default_error;
 				if ( ! _.isUndefined( response ) ) {
@@ -203,6 +220,20 @@ window.bp = window.bp || {};
 
 				// Add the delete view
 				bp.CoverImage.deleteView();
+
+				/**
+				 * Set the Attachment object
+				 *
+				 * You can run extra actions once the cover image is set using:
+				 * bp.CoverImage.Attachment.on( 'change:url', function( data ) { your code } );
+				 *
+				 * In this case data.attributes will include the url to the newly
+				 * uploaded cover image, the object and the item_id concerned.
+				 */
+				bp.CoverImage.Attachment.set( _.extend(
+					_.pick( BP_Uploader.settings.defaults.multipart_params.bp_params, ['object', 'item_id'] ),
+					{ url: model.get( 'url' ), action: 'uploaded' }
+				) );
 			}
 		}
 	} );
