Wix Media events are triggered on your site's backend when certain events occur in your media manager. You can write event handlers that react to these events. Event handler functions receive data that corresponds to the event that was fired. Use event handlers to create custom responses to media events.
To add a Wix Media event handler, add an events.js file to the Backend section of your site if one does not already exists. All event handler functions for your site are defined in this file.
Notes:
Event handler functions are defined using the following pattern:
export function <wixAppName>_<eventName>(event) {}
For example, an event handler that handles the update of a file descriptor looks like:
export function wixMediaSiteMedia_onFileDescriptorUpdated(event) {}
Triggered when a file is deleted.
function wixMediaSiteMedia_onFileDescriptorDeleted(
event: FileDescriptorDeleted,
): void;
Contains metadata for the event.
// Place this code in the events.js file
// of your site's Backend section.
// Add the file if it doesn't exist.
export function wixMediaSiteMedia_onFileDescriptorDeleted(event) {
const eventTime = event.metadata.eventTime;
const entityId = event.metadata.entityId;
console.log(`File with ID ${entityId} was deleted at ${eventTime}.`);
}
/* Full event object:
* {
* "metadata": {
* "entityId": "d4dde1_e26da94b5cb440649ede0c433425449c~mv2.jpg",
* "eventTime": "2023-09-18T10:22:56.532Z",
* "id": "c5ad126c-26f0-4ccf-a53c-fa43ea1428bf",
* "triggeredByAnonymizeRequest": false
* }
* }
*/
This method doesn’t return any custom errors, but may return standard errors. Learn more about standard Wix errors.
Triggered when a file fails during post-upload processing.
function wixMediaSiteMedia_onFileDescriptorFileFailed(
event: FileDescriptorFileFailed,
): void;
Information about the failed file and metadata for the event.
// Place this code in the events.js file
// of your site's Backend section.
// Add the file if it doesn't exist.
export function wixMediaSiteMedia_onFileDescriptorFileFailed(event) {
const eventTime = event.metadata.eventTime;
const entityId = event.metadata.entityId;
console.log(
`File with ID ${entityId} failed during essential post-upload processing at ${eventTime}.`,
);
}
/* Full event object:
* {
* "data": {
* "externalInfo": {}
* },
* "metadata": {
* "entityId": "d4dde1_f6660fb1274c41bf87514db2f5926ae0",
* "eventTime": "2023-09-18T10:27:33.046Z",
* "id": "8cf0189d-9f49-45c5-9f3c-bc7928a42e34",
* "triggeredByAnonymizeRequest": false
* }
* }
*/
This method doesn’t return any custom errors, but may return standard errors. Learn more about standard Wix errors.
Triggered when a file is ready to be used, after any post-upload processing.
This event is also triggered when a file is restored from the Media Manager's trash bin.
function wixMediaSiteMedia_onFileDescriptorFileReady(
event: FileDescriptorFileReady,
): void;
Information about the file and metadata for the event.
// Place this code in the events.js file
// of your site's Backend section.
// Add the file if it doesn't exist.
export function wixMediaSiteMedia_onFileDescriptorFileReady(event) {
const displayName = event.data.file.displayName;
const parentFolderId = event.data.parentFolderId;
const eventTime = event.metadata.eventTime;
console.log(
`${displayName}, located in the parent folder with ID ${parentFolderId}, is ready to be used. Completion of post-upload processing was at ${eventTime}.`,
);
}
/* Full event object:
* {
* "data": {
* "externalInfo": {},
* "file": {
* "_createdDate": "2023-08-09T08:45:49.000Z",
* "_id": "d4dde1_e26da94b5cb440649ede0c433425449c~mv2.jpg",
* "_updatedDate": "2023-08-09T08:45:49.000Z",
* "displayName": "mountains.jpg",
* "hash": "800fae3e0cb7908518a391c25864436c",
* "labels": [
* "mountainous range",
* "mountain range",
* "mountain peak",
* "mountains",
* "snow capped mountains",
* "mountainous landscape"
* ],
* "media": {
* "image": {
* "colors": {
* "palette": [
* {
* "rgb": {
* "b": 47,
* "g": 36,
* "r": 31
* }
* },
* {
* "rgb": {
* "b": 155,
* "g": 153,
* "r": 195
* }
* },
* {
* "rgb": {
* "b": 141,
* "g": 123,
* "r": 138
* }
* },
* {
* "rgb": {
* "b": 177,
* "g": 161,
* "r": 190
* }
* },
* {
* "rgb": {
* "b": 179,
* "g": 178,
* "r": 217
* }
* },
* {
* "rgb": {
* "b": 160,
* "g": 176,
* "r": 229
* }
* },
* {
* "rgb": {
* "b": 176,
* "g": 151,
* "r": 162
* }
* },
* {
* "rgb": {
* "b": 93,
* "g": 78,
* "r": 71
* }
* },
* {
* "rgb": {
* "b": 45,
* "g": 63,
* "r": 107
* }
* },
* {
* "rgb": {
* "b": 104,
* "g": 88,
* "r": 82
* }
* }
* ],
* "prominent": {
* "rgb": {
* "b": 47,
* "g": 36,
* "r": 31
* }
* }
* },
* "faces": [],
* "image": "wix:image://v1/d4dde1_e26da94b5cb440649ede0c433425449c~mv2.jpg/mountains.jpg#originWidth=5833&originHeight=3894"
* }
* },
* "mediaType": "IMAGE",
* "operationStatus": "READY",
* "parentFolderId": "media-root",
* "private": false,
* "siteId": "c96bcd13-173a-4938-88e0-a126391adf49",
* "sizeInBytes": "3013886",
* "thumbnailUrl": "https://static.wixstatic.com/media/d4dde1_e26da94b5cb440649ede0c433425449c~mv2.jpg",
* "url": "https://static.wixstatic.com/media/d4dde1_e26da94b5cb440649ede0c433425449c~mv2.jpg"
* },
* "triggeredByUndelete": true
* },
* "metadata": {
* "entityId": "d4dde1_e26da94b5cb440649ede0c433425449c~mv2.jpg",
* "eventTime": "2023-09-18T10:22:49.159Z",
* "id": "6057a4bd-86d1-428e-bfe5-026dcc869ec3",
* "triggeredByAnonymizeRequest": false
* }
* }
*/
This method doesn’t return any custom errors, but may return standard errors. Learn more about standard Wix errors.