ghoul Posted 12 hours ago Report Posted 12 hours ago I'm trying to make my own API calls for a game I play called The Outlast Trials to scrape data for a site I'm making. I have used Requestly to view network traffic of the game but for some reason it won't fully log me in to the game when I have Requestly capturing all system traffic so I can't view every call the game makes. I have been able to view the initial authentication though, which shows me my API key and I'm able to make calls for certain stat leaderboards because the game log file has occasional information about where it's sending API requests to. This is great for manually scraping data, but the API key only lasts 60 minutes. I have no way to refresh the token and I'm struggling to generate my own because of the Steam ticket. The authentication call looks like this, and returns a valid key when successful. url = "https://prod.rbg-services.com/auth/public/sessions" headers = { "accept": "*/*", "accept-encoding": "gzip", "accepts": "application/json", "content-type": "application/json", "host": "prod.rbg-services.com", "user-agent": "X-OPP-Client", } payload = { "steamApplicationId": 1304930, "platform": "steam", "applicationId": "0e67af76-2839-4451-880b-471a48757e09", "apiKey": "", "releaseKey": "vbrzgw2mGlM5Axa9Ier4ApOQYjuVfG", "language": "en", "acceptedPolicyDocuments": [], "platformAppId": "", "clientEnvironment": "prod", "eosIdToken": "", "ticket": "1400000057CCF54021E8213ACBC7851A01001001E1F3C669180000000100000005000000B97E69F3378D98133C0E9A0005000000B80000003800000004000000CBC7851A0100100162E913002F16BF26714B088A00000000DB88C7695B38E36901003F070F00010042103A0000000000914F34EA6FAFD8B191CDB648EAB978CCE7D52896BA455C2EC3092DEEFA2890393C7C13E04228CD368EF5724D2C921C12189D12220F25A1DB8D1E52B1AA8D139849A9FF5CFE8AA82787AE56D1D92F501135D20CE650F27408C923FDF71F82645835175DB5AC64E487F1412B765BE528989582557B7ED1E95D9C94A31CD6161156" } I've left out my eosIdToken because I've already figured out how to generate that but the ticket in that code was a valid ticket. I've noticed they all start with 14000000 I've tried using https://github.com/ValvePython/steam and the two methods, 'get_encrypted_app_ticket(1304930, b"")' and 'get_app_ticket(1304930)' but when I do this and convert the ticket to hex, I am given a much shorter string E0BB0AE58DF917D6F1D1B4308300C253039CCBED224918AFAD639B156E425CFD91575EE2521A6F122B9B2D74B23862D127DA156CB63D0D222D3D6470E8999413F0253E087A4CA727FA439BC8AA7DE2867F0EC7AF64DD88E2881CC9A079A61CFD003709A3B72A841B9D6C4718AA630E9B19E25A1905E651CFF38D13515C5BC034 for encrypted and 77D882516B73FE44CCD75225B0CCB5033B7D0B5AA6D67A28623057E31600E940B3817148BEE2E9EFD81BB283A57E231AB9A2876BA87626A2A57F1BC34051679518C0E92AF7621712E895E7D22B96EEB2A569A15448A8BFAAF4389F91E53FE43278944A16A9520A10462D7A0A7241F0CB7EE203588970BFE262300D9F41AB6C3 for non encrypted When I try these strings as the ticket, I'm returned "Unexpected response format when processing steam authentication. Params key not found in body." I'm not sure if the ticket includes other data before the Steam ticket but I'm super confused on what to do next. Any help is appreciated if this is even possible, I'm not very experienced with this stuff at all Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.