public static DeviceToken AuthenticateXASD(AccessToken accessToken) { RestClientEx client = ClientFactory("https://device.auth.xboxlive.com"); RestRequestEx request = new RestRequestEx("device/authenticate", Method.POST); request.AddHeader("x-xbl-contract-version", "1"); request.AddJsonBody(new XASDRequest(accessToken)); IRestResponse <XASResponse> response = client.Execute <XASResponse>(request); return(new DeviceToken(response.Data)); }
public static async Task <UserToken> AuthenticateXASUAsync(AccessToken accessToken) { RestClientEx client = ClientFactory("https://user.auth.xboxlive.com"); RestRequestEx request = new RestRequestEx("user/authenticate", Method.POST); request.AddHeader("x-xbl-contract-version", "1"); request.AddJsonBody(new XASURequest(accessToken)); IRestResponse <XASResponse> response = await client.ExecuteTaskAsync <XASResponse>(request); return(new UserToken(response.Data)); }
public static XToken AuthenticateXSTS(UserToken userToken, DeviceToken deviceToken = null, TitleToken titleToken = null) { RestClientEx client = ClientFactory("https://xsts.auth.xboxlive.com"); RestRequestEx request = new RestRequestEx("xsts/authorize", Method.POST); request.AddHeader("x-xbl-contract-version", "1"); request.AddJsonBody(new XSTSRequest(userToken, deviceToken: deviceToken, titleToken: titleToken)); IRestResponse <XASResponse> response = client.Execute <XASResponse>(request); return(new XToken(response.Data)); }