code: func (c *Client) CreateUserWithOTP(token, password, otpToken string) (services.WebSession, error) {
  	out, err := c.PostJSON(c.Endpoint("signuptokens", "users"), createUserWithTokenReq{
  		Token:    token,
  		Password: password,
  		OTPToken: otpToken,
  	})
  	if err != nil {
  		return nil, trace.Wrap(err)
  	}
  	return services.GetWebSessionMarshaler().UnmarshalWebSession(out.Bytes())
  }
docs: // CreateUserWithOTP creates account with provided token and password.
  // Account username and OTP key are taken from token data.
  // Deletes token after account creation.