Forum Discussion
Martin-Coupal
Oct 12, 2020Steel Contributor
Get the ID used in a link for accessing a Booking appointment
Is there a way to get the ID used in a link to the booking appointment with Graph API? https://outlook.office365.com/owa/calendar/[BookingCalendarAddress]/bookings/xxxxxxxxxxxxxxxxxxxxx This ...
prathapniecs
Sep 23, 2024Copper Contributor
Any Idea for the 1:N service booking? Does it have the (Base64String of the serlfserivceappointmentID)_"some more string"?Anyone decoded this ?
hohohono
Sep 27, 2024Brass Contributor
prathapniecs Hmm, you're right -- for 1:N services, the selfServiceAppointmentID is still a GUID/UUID, but the actual meeting URL is not returned in base64. I can't tell what it is.
Here's an example I have for a 1:N service booking:
- The SelfServiceAppointmentID (GUID) is 1400d058-9ee2-4865-8986-467f322d64e2
- The meeting URL ID is WNAAFOKeZUiJhkZ_Mi1k4unlGuHvJxVAt3btZqe9Hw81
- The base64 of that GUID is WNAAFOKeZUiJhkZ/Mi1k4g==. if we remove the last 3 characters (and also do the conversions of "/" characters and whatnot), then we get the first half of that meeting URL ID above!
I feel like that last half of the meeting URL ID can be obtained somehow, but I'm not well-versed in base64 or GUIDs or anything of that sort, so I haven't got a clue.
I'm thinking I can ask someone from MSFT about this, but in the meantime, does anyone else have an idea about this?
- Marco7403Oct 04, 2024Copper ContributorJust for the sake of it i tried to do some reverse engineering and if you take the string just after the "WNAAFOKeZUiJhkZ_Mi1k4" that is "unlGuHvJxVAt3btZqe9Hw81" remove the last digit or letter and put two padding "=" at the end and you try to get the UUID you'll end up with: "b84679ba-c97b-50c5-2ddd-bb59a9ef47c3".
This works every time on every url i tried it on.
the problem is i couldn't find any way to associate the found UUID to anything reported from Microsoft Graph about the appointment.
I tried encoding the email of the booking user with UUID v3 or v5, endoding it with different namespaces (trying all the different uuid included in the appointment Graph details ) but ended up with nothing useful.