This script is designed to make exporting data from When2Meet simpler and more efficient, saving you time and effort in organizing participant availability data from a When2Meet page into a CSV file. It combines the best features from various community contributions (originally from camtheman256) into a single, easy-to-use tool.
You can add the When2Meet CSV Export bookmarklet to your browser by visiting this link to activate the link below.
NEW CURRENT:
When2Meet CSV Export Bookmarklet
OLD VERSIONS:
*[When2Meet CSV Export Bookmarklet](javascript:(function(){function%20getCSV({delimiter=%22,%22,timeFormat=%2212-hour%22}=%7B%7D){if([PeopleNames,PeopleIDs,AvailableAtSlot,TimeOfSlot].some(v=%3E!Array.isArray(v)%7Cv.length===0)){console.error(%22Error:%20One%20or%20more%20required%20variables%20(PeopleNames,%20PeopleIDs,%20AvailableAtSlot,%20TimeOfSlot)%20are%20undefined%20or%20empty.%22);return;}let%20result=%60Day%24%7Bdelimiter%7DTime%24%7Bdelimiter%7D%60+PeopleNames.join(delimiter)+%22%5Cn%22;for(let%20i=0;i%3CAvailableAtSlot.length;i++){let%20slot=new%20Date(TimeOfSlot[i]1000);if(!slot){console.error(%60Error:%20Could%20not%20retrieve%20or%20format%20time%20slot%20for%20index%20%24%7Bi%7D.%60);continue;}let%20day=slot.toLocaleDateString(%27en-US%27,{weekday:%27short%27});let%20time=slot.toLocaleTimeString(%27en-US%27,{hour12:timeFormat===%2212-hour%22,hour:%272-digit%27,minute:%272-digit%27});result+=%60%24%7Bday%7D%24%7Bdelimiter%7D%24%7Btime%7D%24%7Bdelimiter%7D%60;result+=PeopleIDs.map(id=%3EAvailableAtSlot[i].includes(id)?1:0).join(delimiter);result+=%22%5Cn%22;}console.log(result);return%20result;}function%20downloadCSV({filename,delimiter=%22,%22,timeFormat=%2212-hour%22}=%7B%7D){const%20urlParams=new%20URLSearchParams(window.location.search);const%20uniqueCode=urlParams.keys().next().value | %27UNKNOWNCODE%27;const%20timestamp=new%20Date().toISOString().slice(0,19).replace(/[:]/g,%22%22);if(!filename){filename=%60when2meet_%24%7BuniqueCode%7D_%24%7Btimestamp%7D.csv%60;}const%20content=getCSV({delimiter,timeFormat});if(!content){console.error(%22Error:%20Failed%20to%20generate%20CSV%20content.%22);return;}const%20file=new%20Blob([content],{type:%27text/plain%27});const%20link=document.createElement(%22a%22);link.href=URL.createObjectURL(file);link.download=filename;link.click();URL.revokeObjectURL(link.href);}downloadCSV({delimiter:%22;%22,timeFormat=%2224-hour%22});)())** |
When2Meet CSV Export Bookmarklet
Drag the link above to your bookmarks bar or right-click the link above and add to bookmarks.
1
for available and 0
for unavailable.when2meet_UNIQUECODE_TIMESTAMP.csv
, where UNIQUECODE
is extracted from the URL and TIMESTAMP
is formatted down to seconds.Add a new issue or check out the github repo and submit a pull request.
F12
or Ctrl + Shift + J
(Windows/Linux) or Cmd + Option + J
(Mac).export_when2meet.js
into the browser’s developer console. In Chrome, you may need to first type allow pasting
before you can copy & paste or drag the file into the console.downloadCSV()
when2meet_UNIQUECODE_TIMESTAMP.csv
will automatically download to your device, where UNIQUECODE
is extracted from the URL and TIMESTAMP
is the current date and time, so for example when2meet_24892637-Evxyx_2024-05-20_133456.csv
would be the download file from https://www.when2meet.com/?24892637-EvxyxYou can customize the filename, delimiter, and time format by passing options when calling the downloadCSV
function. Here are some examples:
when2meet_UNIQUECODE_TIMESTAMP.csv
, where UNIQUECODE
is extracted from the URL and TIMESTAMP
is the current date and time, so for example when2meet_24892637-Evxyx_2024-05-20_133456.csv
would be the download file from https://www.when2meet.com/?24892637-Evxyx
downloadCSV();
downloadCSV({ filename: "my_custom_filename.csv" });
downloadCSV({ delimiter: ";" });
downloadCSV({ timeFormat: "24-hour" });
downloadCSV({ filename: "custom_schedule.csv", delimiter: ";", timeFormat: "24-hour" });
This script is designed to make exporting data from When2Meet simpler and more efficient, saving you time and effort in organizing participant availability.