Forum Discussion

  • prathapniecs's avatar
    prathapniecs
    Copper Contributor
    Any Idea for the 1:N service booking? Does it have the (Base64String of the serlfserivceappointmentID)_"some more string"?Anyone decoded this ?
    • hohohono's avatar
      hohohono
      Brass 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?

      • Marco7403's avatar
        Marco7403
        Copper Contributor
        Just 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.
  • developert2lpr's avatar
    developert2lpr
    Copper Contributor
    Is this still the case?

    Anyone have tips on getting appointment details by power automate or some other method? Looking for details on all appointment details
      • nick_amis's avatar
        nick_amis
        Copper Contributor

        tpoltorak 

        I tried this in PHP as follows but the resulting URL was invalid.

         

        The Self Service Appointment Id guid looks like this: "bd01de34-acd7-44c1-9dbe-d4d2b4cedfb7"

         

        $bytes = unpack("C*", hex2bin(str_replace('-', '', $guid)));
        $base64 = base64_encode(call_user_func_array("pack", array_merge(array("C*"), $bytes)));

         

        This was the output for $base64: +zBNbEGoS7iXtg41xnewEg==

         

        The doesn't look like the URL from MS Bookings as it only has alphnumerics. What have I missed?

         

        Thanks, Nick

         

         

  • Sukumar2021's avatar
    Sukumar2021
    Copper Contributor

    Martin-Coupal , did you ever found an answer to this question? I ran into the same issue where I need this booking id so that I can get back to an existing booking on the bookings page using this id. The appointment id stored in bookings is a different one that's returned by the graph API.

    • Martin-Coupal's avatar
      Martin-Coupal
      Steel Contributor

      Sukumar2021, no I did not find this information. I guess it should be returned by the graph.microsoft.com/beta/bookingBusinesses/ api but it is not for now....

      • Sukumar2021's avatar
        Sukumar2021
        Copper Contributor
        Found the solution. Subscriptionid field is rather converted to short id used in the link. Subscriptionid is converted to 22 char shortid using convert.tobase64string method.

Resources