public void PostSetupGoogleTest() { Step("Make POST /api/2fa/setup/google and validate response", () => { var model = new GoogleSetupVerifyRequest { Code = Guid.NewGuid().ToString() }; var response = apiV2.SecondFactorAuth.Post2FASetUpGoogle(model, token); Assert.That(response.StatusCode, Is.EqualTo(HttpStatusCode.OK)); Assert.That(response.GetResponseObject().IsValid, Is.False); }); }
public async Task <IActionResult> SetupGoogle2FaVerify([FromBody] GoogleSetupVerifyRequest model) { try { if (await _confirmationCodesClient.Google2FaClientHasSetupAsync(_requestContext.ClientId)) { throw LykkeApiErrorException.BadRequest(LykkeApiErrorCodes.Service.SecondFactorAlreadySetup); } var pd = await _personalDataService.GetAsync(_requestContext.ClientId); var resp = await _confirmationCodesClient.Google2FaVerifySetupAsync( new VerifySetupGoogle2FaRequest { ClientId = _requestContext.ClientId, Phone = pd.ContactPhone, SmsCode = model.Code, GaCode = model.GaCode }); return(Ok(new GoogleSetupVerifyResponse { IsValid = resp.IsValid })); } catch (ApiException e) { switch (e.StatusCode) { case HttpStatusCode.BadRequest: throw LykkeApiErrorException.BadRequest(LykkeApiErrorCodes.Service.InconsistentState); case HttpStatusCode.Forbidden: throw LykkeApiErrorException.BadRequest(LykkeApiErrorCodes.Service.MaxAttemptsReached); } throw; } }
public IResponse <GoogleSetupVerifyResponse> Post2FASetUpGoogle(GoogleSetupVerifyRequest model, string token) { return(Request.Post("/2fa/setup/google").AddJsonBody(model).WithBearerToken(token).Build().Execute <GoogleSetupVerifyResponse>()); }