cubehouse/themeparks

Virtual Line Pass Times for Universal Studios Florida

Closed this issue · 6 comments

Would it be possible to get the Virtual Line Pass times from the attractions at Universal Studios Florida?
Thank you,
Bobby

The system is locked to those with a scanned ticket/pass for the day. To sniff out the endpoints, you'd have to enter the park first. Proprietary systems like these that require logins/valid entry are beyond the scope of this library.

I'm afraid my job is taking up pretty much 100% of my time right now, so I can't look into this.
If what Doug says is how it works, then I'm afraid that is not something we can support for this library. I don't want people to ever be entering their usernames/passwords into this library to get access to stuff, and it edges a lot closer to starting to automate fastpasses and stuff, which I want to stay well away from.

If anyone finds a way of seeing it without needing valid park tickets, please pull request away though :)

Had some free time today, so did some sniffing. It looks like Universal does indeed supply available times (see Fast & Furious):

{
   "TotalCount":5,
   "Pages":1,
   "PreviousPage":"",
   "NextPage":"",
   "Results":[
      {
         "Id":10003,
         "Name":"Race Through New York Starring Jimmy Fallon",
         "MaxAppointmentSize":8,
         "AppointmentDuration":"01:00:00",
         "SessionTimeoutInSec":20,
         "QueueEntityId":14348,
         "QueueEntityType":"Rides",
         "AppointmentTimes":[

         ],
         "QueueImage":null,
         "AdjustmentStatus":null,
         "AdjustmentEndTime":null,
         "GracePeriodInMin":15
      },
      {
         "Id":10004,
         "Name":"Fast & Furious - Supercharged",
         "MaxAppointmentSize":10,
         "AppointmentDuration":"00:30:00",
         "SessionTimeoutInSec":20,
         "QueueEntityId":16061,
         "QueueEntityType":"Rides",
         "AppointmentTimes":[
            {
               "Id":132181,
               "StartTime":"2020-06-04T15:50:00-04:00",
               "EndTime":"2020-06-04T16:50:00-04:00",
               "QueueId":10004,
               "CreatedBy":null,
               "LastUpdatedDate":"0001-01-01T00:00:00+00:00",
               "LastUpdatedBy":null,
               "CreatedDate":"0001-01-01T00:00:00+00:00",
               "EffectiveCapacity":105,
               "UsedCapacity":9,
               "UEPAllowance":54,
               "NoShowAllowance":15,
               "StandByAllowance":50
            },
            {
               "Id":132180,
               "StartTime":"2020-06-04T16:00:00-04:00",
               "EndTime":"2020-06-04T17:00:00-04:00",
               "QueueId":10004,
               "CreatedBy":null,
               "LastUpdatedDate":"0001-01-01T00:00:00+00:00",
               "LastUpdatedBy":null,
               "CreatedDate":"0001-01-01T00:00:00+00:00",
               "EffectiveCapacity":111,
               "UsedCapacity":15,
               "UEPAllowance":45,
               "NoShowAllowance":15,
               "StandByAllowance":50
            }
         ],
         "QueueImage":null,
         "AdjustmentStatus":null,
         "AdjustmentEndTime":null,
         "GracePeriodInMin":15
      },
      {
         "Id":10082,
         "Name":"Hagrid's Magical Creatures Motorbike Adventure",
         "MaxAppointmentSize":8,
         "AppointmentDuration":"00:15:00",
         "SessionTimeoutInSec":30,
         "QueueEntityId":17097,
         "QueueEntityType":"Rides",
         "AppointmentTimes":[

         ],
         "QueueImage":null,
         "AdjustmentStatus":null,
         "AdjustmentEndTime":null,
         "GracePeriodInMin":15
      },
      {
         "Id":10105,
         "Name":"Harry Potter and the Forbidden Journey",
         "MaxAppointmentSize":8,
         "AppointmentDuration":"00:30:00",
         "SessionTimeoutInSec":30,
         "QueueEntityId":10840,
         "QueueEntityType":"Rides",
         "AppointmentTimes":[

         ],
         "QueueImage":null,
         "AdjustmentStatus":null,
         "AdjustmentEndTime":null,
         "GracePeriodInMin":15
      },
      {
         "Id":10112,
         "Name":"Revenge of the Mummy",
         "MaxAppointmentSize":8,
         "AppointmentDuration":"00:30:00",
         "SessionTimeoutInSec":30,
         "QueueEntityId":10858,
         "QueueEntityType":"Rides",
         "AppointmentTimes":[

         ],
         "QueueImage":null,
         "AdjustmentStatus":null,
         "AdjustmentEndTime":null,
         "GracePeriodInMin":15
      }
   ]
}

Endpoint is https://services.universalorlando.com/api/AdditionalAppts/QueuesWithAppointments?city=Orlando&page=1&pageSize=all&appTimeForToday=06%2F04%2F2020

Doug, How did you find this data? is there an api breakdown of what is available?
Bobby

I used a HTTP inspector, Fiddler, and then proxied my iPhone through it. Then I can see all requests sent or received by my iPhone. Most of the parks in this library have been added by doing this procedure.

I'm willing to fund someone's time to get this done. - Len