Files
authentik/packages/client-go/model_flow_challenge_response_request.go
Marc 'risson' Schmitt 2f70351c90 packages/client-go: init (#21139)
* packages/client-go: init

Signed-off-by: Marc 'risson' Schmitt <marc.schmitt@risson.space>

* format

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* remove mod/sum

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* fix translate

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* no go replace

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* update rust makefile with pwd

Signed-off-by: Marc 'risson' Schmitt <marc.schmitt@risson.space>

* fix build

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* fix docs

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* don't need a version ig?

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* exclude go client from cspell

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* fix main docker build

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

---------

Signed-off-by: Marc 'risson' Schmitt <marc.schmitt@risson.space>
Signed-off-by: Jens Langhammer <jens@goauthentik.io>
Co-authored-by: Jens Langhammer <jens@goauthentik.io>
2026-03-25 15:26:50 +01:00

923 lines
38 KiB
Go
Generated

/*
authentik
Making authentication simple.
API version: 2026.5.0-rc1
Contact: hello@goauthentik.io
*/
// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
package api
import (
"encoding/json"
"fmt"
)
// FlowChallengeResponseRequest - struct for FlowChallengeResponseRequest
type FlowChallengeResponseRequest struct {
AppleChallengeResponseRequest *AppleChallengeResponseRequest
AuthenticatorDuoChallengeResponseRequest *AuthenticatorDuoChallengeResponseRequest
AuthenticatorEmailChallengeResponseRequest *AuthenticatorEmailChallengeResponseRequest
AuthenticatorSMSChallengeResponseRequest *AuthenticatorSMSChallengeResponseRequest
AuthenticatorStaticChallengeResponseRequest *AuthenticatorStaticChallengeResponseRequest
AuthenticatorTOTPChallengeResponseRequest *AuthenticatorTOTPChallengeResponseRequest
AuthenticatorValidationChallengeResponseRequest *AuthenticatorValidationChallengeResponseRequest
AuthenticatorWebAuthnChallengeResponseRequest *AuthenticatorWebAuthnChallengeResponseRequest
AutoSubmitChallengeResponseRequest *AutoSubmitChallengeResponseRequest
CaptchaChallengeResponseRequest *CaptchaChallengeResponseRequest
ConsentChallengeResponseRequest *ConsentChallengeResponseRequest
DummyChallengeResponseRequest *DummyChallengeResponseRequest
EmailChallengeResponseRequest *EmailChallengeResponseRequest
EndpointAgentChallengeResponseRequest *EndpointAgentChallengeResponseRequest
FrameChallengeResponseRequest *FrameChallengeResponseRequest
IdentificationChallengeResponseRequest *IdentificationChallengeResponseRequest
IframeLogoutChallengeResponseRequest *IframeLogoutChallengeResponseRequest
NativeLogoutChallengeResponseRequest *NativeLogoutChallengeResponseRequest
OAuthDeviceCodeChallengeResponseRequest *OAuthDeviceCodeChallengeResponseRequest
OAuthDeviceCodeFinishChallengeResponseRequest *OAuthDeviceCodeFinishChallengeResponseRequest
PasswordChallengeResponseRequest *PasswordChallengeResponseRequest
PlexAuthenticationChallengeResponseRequest *PlexAuthenticationChallengeResponseRequest
PromptChallengeResponseRequest *PromptChallengeResponseRequest
RedirectChallengeResponseRequest *RedirectChallengeResponseRequest
TelegramChallengeResponseRequest *TelegramChallengeResponseRequest
UserLoginChallengeResponseRequest *UserLoginChallengeResponseRequest
}
// AppleChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns AppleChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func AppleChallengeResponseRequestAsFlowChallengeResponseRequest(v *AppleChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
AppleChallengeResponseRequest: v,
}
}
// AuthenticatorDuoChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns AuthenticatorDuoChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func AuthenticatorDuoChallengeResponseRequestAsFlowChallengeResponseRequest(v *AuthenticatorDuoChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
AuthenticatorDuoChallengeResponseRequest: v,
}
}
// AuthenticatorEmailChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns AuthenticatorEmailChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func AuthenticatorEmailChallengeResponseRequestAsFlowChallengeResponseRequest(v *AuthenticatorEmailChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
AuthenticatorEmailChallengeResponseRequest: v,
}
}
// AuthenticatorSMSChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns AuthenticatorSMSChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func AuthenticatorSMSChallengeResponseRequestAsFlowChallengeResponseRequest(v *AuthenticatorSMSChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
AuthenticatorSMSChallengeResponseRequest: v,
}
}
// AuthenticatorStaticChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns AuthenticatorStaticChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func AuthenticatorStaticChallengeResponseRequestAsFlowChallengeResponseRequest(v *AuthenticatorStaticChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
AuthenticatorStaticChallengeResponseRequest: v,
}
}
// AuthenticatorTOTPChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns AuthenticatorTOTPChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func AuthenticatorTOTPChallengeResponseRequestAsFlowChallengeResponseRequest(v *AuthenticatorTOTPChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
AuthenticatorTOTPChallengeResponseRequest: v,
}
}
// AuthenticatorValidationChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns AuthenticatorValidationChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func AuthenticatorValidationChallengeResponseRequestAsFlowChallengeResponseRequest(v *AuthenticatorValidationChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
AuthenticatorValidationChallengeResponseRequest: v,
}
}
// AuthenticatorWebAuthnChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns AuthenticatorWebAuthnChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func AuthenticatorWebAuthnChallengeResponseRequestAsFlowChallengeResponseRequest(v *AuthenticatorWebAuthnChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
AuthenticatorWebAuthnChallengeResponseRequest: v,
}
}
// AutoSubmitChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns AutoSubmitChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func AutoSubmitChallengeResponseRequestAsFlowChallengeResponseRequest(v *AutoSubmitChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
AutoSubmitChallengeResponseRequest: v,
}
}
// CaptchaChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns CaptchaChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func CaptchaChallengeResponseRequestAsFlowChallengeResponseRequest(v *CaptchaChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
CaptchaChallengeResponseRequest: v,
}
}
// ConsentChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns ConsentChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func ConsentChallengeResponseRequestAsFlowChallengeResponseRequest(v *ConsentChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
ConsentChallengeResponseRequest: v,
}
}
// DummyChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns DummyChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func DummyChallengeResponseRequestAsFlowChallengeResponseRequest(v *DummyChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
DummyChallengeResponseRequest: v,
}
}
// EmailChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns EmailChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func EmailChallengeResponseRequestAsFlowChallengeResponseRequest(v *EmailChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
EmailChallengeResponseRequest: v,
}
}
// EndpointAgentChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns EndpointAgentChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func EndpointAgentChallengeResponseRequestAsFlowChallengeResponseRequest(v *EndpointAgentChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
EndpointAgentChallengeResponseRequest: v,
}
}
// FrameChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns FrameChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func FrameChallengeResponseRequestAsFlowChallengeResponseRequest(v *FrameChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
FrameChallengeResponseRequest: v,
}
}
// IdentificationChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns IdentificationChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func IdentificationChallengeResponseRequestAsFlowChallengeResponseRequest(v *IdentificationChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
IdentificationChallengeResponseRequest: v,
}
}
// IframeLogoutChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns IframeLogoutChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func IframeLogoutChallengeResponseRequestAsFlowChallengeResponseRequest(v *IframeLogoutChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
IframeLogoutChallengeResponseRequest: v,
}
}
// NativeLogoutChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns NativeLogoutChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func NativeLogoutChallengeResponseRequestAsFlowChallengeResponseRequest(v *NativeLogoutChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
NativeLogoutChallengeResponseRequest: v,
}
}
// OAuthDeviceCodeChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns OAuthDeviceCodeChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func OAuthDeviceCodeChallengeResponseRequestAsFlowChallengeResponseRequest(v *OAuthDeviceCodeChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
OAuthDeviceCodeChallengeResponseRequest: v,
}
}
// OAuthDeviceCodeFinishChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns OAuthDeviceCodeFinishChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func OAuthDeviceCodeFinishChallengeResponseRequestAsFlowChallengeResponseRequest(v *OAuthDeviceCodeFinishChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
OAuthDeviceCodeFinishChallengeResponseRequest: v,
}
}
// PasswordChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns PasswordChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func PasswordChallengeResponseRequestAsFlowChallengeResponseRequest(v *PasswordChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
PasswordChallengeResponseRequest: v,
}
}
// PlexAuthenticationChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns PlexAuthenticationChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func PlexAuthenticationChallengeResponseRequestAsFlowChallengeResponseRequest(v *PlexAuthenticationChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
PlexAuthenticationChallengeResponseRequest: v,
}
}
// PromptChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns PromptChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func PromptChallengeResponseRequestAsFlowChallengeResponseRequest(v *PromptChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
PromptChallengeResponseRequest: v,
}
}
// RedirectChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns RedirectChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func RedirectChallengeResponseRequestAsFlowChallengeResponseRequest(v *RedirectChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
RedirectChallengeResponseRequest: v,
}
}
// TelegramChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns TelegramChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func TelegramChallengeResponseRequestAsFlowChallengeResponseRequest(v *TelegramChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
TelegramChallengeResponseRequest: v,
}
}
// UserLoginChallengeResponseRequestAsFlowChallengeResponseRequest is a convenience function that returns UserLoginChallengeResponseRequest wrapped in FlowChallengeResponseRequest
func UserLoginChallengeResponseRequestAsFlowChallengeResponseRequest(v *UserLoginChallengeResponseRequest) FlowChallengeResponseRequest {
return FlowChallengeResponseRequest{
UserLoginChallengeResponseRequest: v,
}
}
// Unmarshal JSON data into one of the pointers in the struct
func (dst *FlowChallengeResponseRequest) UnmarshalJSON(data []byte) error {
var err error
// use discriminator value to speed up the lookup
var jsonDict map[string]interface{}
err = newStrictDecoder(data).Decode(&jsonDict)
if err != nil {
return fmt.Errorf("failed to unmarshal JSON into map for the discriminator lookup")
}
// check if the discriminator value is 'ak-provider-iframe-logout'
if jsonDict["component"] == "ak-provider-iframe-logout" {
// try to unmarshal JSON data into IframeLogoutChallengeResponseRequest
err = json.Unmarshal(data, &dst.IframeLogoutChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.IframeLogoutChallengeResponseRequest, return on the first match
} else {
dst.IframeLogoutChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as IframeLogoutChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-provider-oauth2-device-code'
if jsonDict["component"] == "ak-provider-oauth2-device-code" {
// try to unmarshal JSON data into OAuthDeviceCodeChallengeResponseRequest
err = json.Unmarshal(data, &dst.OAuthDeviceCodeChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.OAuthDeviceCodeChallengeResponseRequest, return on the first match
} else {
dst.OAuthDeviceCodeChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as OAuthDeviceCodeChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-provider-oauth2-device-code-finish'
if jsonDict["component"] == "ak-provider-oauth2-device-code-finish" {
// try to unmarshal JSON data into OAuthDeviceCodeFinishChallengeResponseRequest
err = json.Unmarshal(data, &dst.OAuthDeviceCodeFinishChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.OAuthDeviceCodeFinishChallengeResponseRequest, return on the first match
} else {
dst.OAuthDeviceCodeFinishChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as OAuthDeviceCodeFinishChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-provider-saml-native-logout'
if jsonDict["component"] == "ak-provider-saml-native-logout" {
// try to unmarshal JSON data into NativeLogoutChallengeResponseRequest
err = json.Unmarshal(data, &dst.NativeLogoutChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.NativeLogoutChallengeResponseRequest, return on the first match
} else {
dst.NativeLogoutChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as NativeLogoutChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-source-oauth-apple'
if jsonDict["component"] == "ak-source-oauth-apple" {
// try to unmarshal JSON data into AppleChallengeResponseRequest
err = json.Unmarshal(data, &dst.AppleChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.AppleChallengeResponseRequest, return on the first match
} else {
dst.AppleChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as AppleChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-source-plex'
if jsonDict["component"] == "ak-source-plex" {
// try to unmarshal JSON data into PlexAuthenticationChallengeResponseRequest
err = json.Unmarshal(data, &dst.PlexAuthenticationChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.PlexAuthenticationChallengeResponseRequest, return on the first match
} else {
dst.PlexAuthenticationChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as PlexAuthenticationChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-source-telegram'
if jsonDict["component"] == "ak-source-telegram" {
// try to unmarshal JSON data into TelegramChallengeResponseRequest
err = json.Unmarshal(data, &dst.TelegramChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.TelegramChallengeResponseRequest, return on the first match
} else {
dst.TelegramChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as TelegramChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-authenticator-duo'
if jsonDict["component"] == "ak-stage-authenticator-duo" {
// try to unmarshal JSON data into AuthenticatorDuoChallengeResponseRequest
err = json.Unmarshal(data, &dst.AuthenticatorDuoChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.AuthenticatorDuoChallengeResponseRequest, return on the first match
} else {
dst.AuthenticatorDuoChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as AuthenticatorDuoChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-authenticator-email'
if jsonDict["component"] == "ak-stage-authenticator-email" {
// try to unmarshal JSON data into AuthenticatorEmailChallengeResponseRequest
err = json.Unmarshal(data, &dst.AuthenticatorEmailChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.AuthenticatorEmailChallengeResponseRequest, return on the first match
} else {
dst.AuthenticatorEmailChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as AuthenticatorEmailChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-authenticator-sms'
if jsonDict["component"] == "ak-stage-authenticator-sms" {
// try to unmarshal JSON data into AuthenticatorSMSChallengeResponseRequest
err = json.Unmarshal(data, &dst.AuthenticatorSMSChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.AuthenticatorSMSChallengeResponseRequest, return on the first match
} else {
dst.AuthenticatorSMSChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as AuthenticatorSMSChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-authenticator-static'
if jsonDict["component"] == "ak-stage-authenticator-static" {
// try to unmarshal JSON data into AuthenticatorStaticChallengeResponseRequest
err = json.Unmarshal(data, &dst.AuthenticatorStaticChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.AuthenticatorStaticChallengeResponseRequest, return on the first match
} else {
dst.AuthenticatorStaticChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as AuthenticatorStaticChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-authenticator-totp'
if jsonDict["component"] == "ak-stage-authenticator-totp" {
// try to unmarshal JSON data into AuthenticatorTOTPChallengeResponseRequest
err = json.Unmarshal(data, &dst.AuthenticatorTOTPChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.AuthenticatorTOTPChallengeResponseRequest, return on the first match
} else {
dst.AuthenticatorTOTPChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as AuthenticatorTOTPChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-authenticator-validate'
if jsonDict["component"] == "ak-stage-authenticator-validate" {
// try to unmarshal JSON data into AuthenticatorValidationChallengeResponseRequest
err = json.Unmarshal(data, &dst.AuthenticatorValidationChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.AuthenticatorValidationChallengeResponseRequest, return on the first match
} else {
dst.AuthenticatorValidationChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as AuthenticatorValidationChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-authenticator-webauthn'
if jsonDict["component"] == "ak-stage-authenticator-webauthn" {
// try to unmarshal JSON data into AuthenticatorWebAuthnChallengeResponseRequest
err = json.Unmarshal(data, &dst.AuthenticatorWebAuthnChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.AuthenticatorWebAuthnChallengeResponseRequest, return on the first match
} else {
dst.AuthenticatorWebAuthnChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as AuthenticatorWebAuthnChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-autosubmit'
if jsonDict["component"] == "ak-stage-autosubmit" {
// try to unmarshal JSON data into AutoSubmitChallengeResponseRequest
err = json.Unmarshal(data, &dst.AutoSubmitChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.AutoSubmitChallengeResponseRequest, return on the first match
} else {
dst.AutoSubmitChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as AutoSubmitChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-captcha'
if jsonDict["component"] == "ak-stage-captcha" {
// try to unmarshal JSON data into CaptchaChallengeResponseRequest
err = json.Unmarshal(data, &dst.CaptchaChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.CaptchaChallengeResponseRequest, return on the first match
} else {
dst.CaptchaChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as CaptchaChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-consent'
if jsonDict["component"] == "ak-stage-consent" {
// try to unmarshal JSON data into ConsentChallengeResponseRequest
err = json.Unmarshal(data, &dst.ConsentChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.ConsentChallengeResponseRequest, return on the first match
} else {
dst.ConsentChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as ConsentChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-dummy'
if jsonDict["component"] == "ak-stage-dummy" {
// try to unmarshal JSON data into DummyChallengeResponseRequest
err = json.Unmarshal(data, &dst.DummyChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.DummyChallengeResponseRequest, return on the first match
} else {
dst.DummyChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as DummyChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-email'
if jsonDict["component"] == "ak-stage-email" {
// try to unmarshal JSON data into EmailChallengeResponseRequest
err = json.Unmarshal(data, &dst.EmailChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.EmailChallengeResponseRequest, return on the first match
} else {
dst.EmailChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as EmailChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-endpoint-agent'
if jsonDict["component"] == "ak-stage-endpoint-agent" {
// try to unmarshal JSON data into EndpointAgentChallengeResponseRequest
err = json.Unmarshal(data, &dst.EndpointAgentChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.EndpointAgentChallengeResponseRequest, return on the first match
} else {
dst.EndpointAgentChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as EndpointAgentChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-identification'
if jsonDict["component"] == "ak-stage-identification" {
// try to unmarshal JSON data into IdentificationChallengeResponseRequest
err = json.Unmarshal(data, &dst.IdentificationChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.IdentificationChallengeResponseRequest, return on the first match
} else {
dst.IdentificationChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as IdentificationChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-password'
if jsonDict["component"] == "ak-stage-password" {
// try to unmarshal JSON data into PasswordChallengeResponseRequest
err = json.Unmarshal(data, &dst.PasswordChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.PasswordChallengeResponseRequest, return on the first match
} else {
dst.PasswordChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as PasswordChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-prompt'
if jsonDict["component"] == "ak-stage-prompt" {
// try to unmarshal JSON data into PromptChallengeResponseRequest
err = json.Unmarshal(data, &dst.PromptChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.PromptChallengeResponseRequest, return on the first match
} else {
dst.PromptChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as PromptChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'ak-stage-user-login'
if jsonDict["component"] == "ak-stage-user-login" {
// try to unmarshal JSON data into UserLoginChallengeResponseRequest
err = json.Unmarshal(data, &dst.UserLoginChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.UserLoginChallengeResponseRequest, return on the first match
} else {
dst.UserLoginChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as UserLoginChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'xak-flow-frame'
if jsonDict["component"] == "xak-flow-frame" {
// try to unmarshal JSON data into FrameChallengeResponseRequest
err = json.Unmarshal(data, &dst.FrameChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.FrameChallengeResponseRequest, return on the first match
} else {
dst.FrameChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as FrameChallengeResponseRequest: %s", err.Error())
}
}
// check if the discriminator value is 'xak-flow-redirect'
if jsonDict["component"] == "xak-flow-redirect" {
// try to unmarshal JSON data into RedirectChallengeResponseRequest
err = json.Unmarshal(data, &dst.RedirectChallengeResponseRequest)
if err == nil {
return nil // data stored in dst.RedirectChallengeResponseRequest, return on the first match
} else {
dst.RedirectChallengeResponseRequest = nil
return fmt.Errorf("failed to unmarshal FlowChallengeResponseRequest as RedirectChallengeResponseRequest: %s", err.Error())
}
}
return nil
}
// Marshal data from the first non-nil pointers in the struct to JSON
func (src FlowChallengeResponseRequest) MarshalJSON() ([]byte, error) {
if src.AppleChallengeResponseRequest != nil {
return json.Marshal(&src.AppleChallengeResponseRequest)
}
if src.AuthenticatorDuoChallengeResponseRequest != nil {
return json.Marshal(&src.AuthenticatorDuoChallengeResponseRequest)
}
if src.AuthenticatorEmailChallengeResponseRequest != nil {
return json.Marshal(&src.AuthenticatorEmailChallengeResponseRequest)
}
if src.AuthenticatorSMSChallengeResponseRequest != nil {
return json.Marshal(&src.AuthenticatorSMSChallengeResponseRequest)
}
if src.AuthenticatorStaticChallengeResponseRequest != nil {
return json.Marshal(&src.AuthenticatorStaticChallengeResponseRequest)
}
if src.AuthenticatorTOTPChallengeResponseRequest != nil {
return json.Marshal(&src.AuthenticatorTOTPChallengeResponseRequest)
}
if src.AuthenticatorValidationChallengeResponseRequest != nil {
return json.Marshal(&src.AuthenticatorValidationChallengeResponseRequest)
}
if src.AuthenticatorWebAuthnChallengeResponseRequest != nil {
return json.Marshal(&src.AuthenticatorWebAuthnChallengeResponseRequest)
}
if src.AutoSubmitChallengeResponseRequest != nil {
return json.Marshal(&src.AutoSubmitChallengeResponseRequest)
}
if src.CaptchaChallengeResponseRequest != nil {
return json.Marshal(&src.CaptchaChallengeResponseRequest)
}
if src.ConsentChallengeResponseRequest != nil {
return json.Marshal(&src.ConsentChallengeResponseRequest)
}
if src.DummyChallengeResponseRequest != nil {
return json.Marshal(&src.DummyChallengeResponseRequest)
}
if src.EmailChallengeResponseRequest != nil {
return json.Marshal(&src.EmailChallengeResponseRequest)
}
if src.EndpointAgentChallengeResponseRequest != nil {
return json.Marshal(&src.EndpointAgentChallengeResponseRequest)
}
if src.FrameChallengeResponseRequest != nil {
return json.Marshal(&src.FrameChallengeResponseRequest)
}
if src.IdentificationChallengeResponseRequest != nil {
return json.Marshal(&src.IdentificationChallengeResponseRequest)
}
if src.IframeLogoutChallengeResponseRequest != nil {
return json.Marshal(&src.IframeLogoutChallengeResponseRequest)
}
if src.NativeLogoutChallengeResponseRequest != nil {
return json.Marshal(&src.NativeLogoutChallengeResponseRequest)
}
if src.OAuthDeviceCodeChallengeResponseRequest != nil {
return json.Marshal(&src.OAuthDeviceCodeChallengeResponseRequest)
}
if src.OAuthDeviceCodeFinishChallengeResponseRequest != nil {
return json.Marshal(&src.OAuthDeviceCodeFinishChallengeResponseRequest)
}
if src.PasswordChallengeResponseRequest != nil {
return json.Marshal(&src.PasswordChallengeResponseRequest)
}
if src.PlexAuthenticationChallengeResponseRequest != nil {
return json.Marshal(&src.PlexAuthenticationChallengeResponseRequest)
}
if src.PromptChallengeResponseRequest != nil {
return json.Marshal(&src.PromptChallengeResponseRequest)
}
if src.RedirectChallengeResponseRequest != nil {
return json.Marshal(&src.RedirectChallengeResponseRequest)
}
if src.TelegramChallengeResponseRequest != nil {
return json.Marshal(&src.TelegramChallengeResponseRequest)
}
if src.UserLoginChallengeResponseRequest != nil {
return json.Marshal(&src.UserLoginChallengeResponseRequest)
}
return nil, nil // no data in oneOf schemas
}
// Get the actual instance
func (obj *FlowChallengeResponseRequest) GetActualInstance() interface{} {
if obj == nil {
return nil
}
if obj.AppleChallengeResponseRequest != nil {
return obj.AppleChallengeResponseRequest
}
if obj.AuthenticatorDuoChallengeResponseRequest != nil {
return obj.AuthenticatorDuoChallengeResponseRequest
}
if obj.AuthenticatorEmailChallengeResponseRequest != nil {
return obj.AuthenticatorEmailChallengeResponseRequest
}
if obj.AuthenticatorSMSChallengeResponseRequest != nil {
return obj.AuthenticatorSMSChallengeResponseRequest
}
if obj.AuthenticatorStaticChallengeResponseRequest != nil {
return obj.AuthenticatorStaticChallengeResponseRequest
}
if obj.AuthenticatorTOTPChallengeResponseRequest != nil {
return obj.AuthenticatorTOTPChallengeResponseRequest
}
if obj.AuthenticatorValidationChallengeResponseRequest != nil {
return obj.AuthenticatorValidationChallengeResponseRequest
}
if obj.AuthenticatorWebAuthnChallengeResponseRequest != nil {
return obj.AuthenticatorWebAuthnChallengeResponseRequest
}
if obj.AutoSubmitChallengeResponseRequest != nil {
return obj.AutoSubmitChallengeResponseRequest
}
if obj.CaptchaChallengeResponseRequest != nil {
return obj.CaptchaChallengeResponseRequest
}
if obj.ConsentChallengeResponseRequest != nil {
return obj.ConsentChallengeResponseRequest
}
if obj.DummyChallengeResponseRequest != nil {
return obj.DummyChallengeResponseRequest
}
if obj.EmailChallengeResponseRequest != nil {
return obj.EmailChallengeResponseRequest
}
if obj.EndpointAgentChallengeResponseRequest != nil {
return obj.EndpointAgentChallengeResponseRequest
}
if obj.FrameChallengeResponseRequest != nil {
return obj.FrameChallengeResponseRequest
}
if obj.IdentificationChallengeResponseRequest != nil {
return obj.IdentificationChallengeResponseRequest
}
if obj.IframeLogoutChallengeResponseRequest != nil {
return obj.IframeLogoutChallengeResponseRequest
}
if obj.NativeLogoutChallengeResponseRequest != nil {
return obj.NativeLogoutChallengeResponseRequest
}
if obj.OAuthDeviceCodeChallengeResponseRequest != nil {
return obj.OAuthDeviceCodeChallengeResponseRequest
}
if obj.OAuthDeviceCodeFinishChallengeResponseRequest != nil {
return obj.OAuthDeviceCodeFinishChallengeResponseRequest
}
if obj.PasswordChallengeResponseRequest != nil {
return obj.PasswordChallengeResponseRequest
}
if obj.PlexAuthenticationChallengeResponseRequest != nil {
return obj.PlexAuthenticationChallengeResponseRequest
}
if obj.PromptChallengeResponseRequest != nil {
return obj.PromptChallengeResponseRequest
}
if obj.RedirectChallengeResponseRequest != nil {
return obj.RedirectChallengeResponseRequest
}
if obj.TelegramChallengeResponseRequest != nil {
return obj.TelegramChallengeResponseRequest
}
if obj.UserLoginChallengeResponseRequest != nil {
return obj.UserLoginChallengeResponseRequest
}
// all schemas are nil
return nil
}
// Get the actual instance value
func (obj FlowChallengeResponseRequest) GetActualInstanceValue() interface{} {
if obj.AppleChallengeResponseRequest != nil {
return *obj.AppleChallengeResponseRequest
}
if obj.AuthenticatorDuoChallengeResponseRequest != nil {
return *obj.AuthenticatorDuoChallengeResponseRequest
}
if obj.AuthenticatorEmailChallengeResponseRequest != nil {
return *obj.AuthenticatorEmailChallengeResponseRequest
}
if obj.AuthenticatorSMSChallengeResponseRequest != nil {
return *obj.AuthenticatorSMSChallengeResponseRequest
}
if obj.AuthenticatorStaticChallengeResponseRequest != nil {
return *obj.AuthenticatorStaticChallengeResponseRequest
}
if obj.AuthenticatorTOTPChallengeResponseRequest != nil {
return *obj.AuthenticatorTOTPChallengeResponseRequest
}
if obj.AuthenticatorValidationChallengeResponseRequest != nil {
return *obj.AuthenticatorValidationChallengeResponseRequest
}
if obj.AuthenticatorWebAuthnChallengeResponseRequest != nil {
return *obj.AuthenticatorWebAuthnChallengeResponseRequest
}
if obj.AutoSubmitChallengeResponseRequest != nil {
return *obj.AutoSubmitChallengeResponseRequest
}
if obj.CaptchaChallengeResponseRequest != nil {
return *obj.CaptchaChallengeResponseRequest
}
if obj.ConsentChallengeResponseRequest != nil {
return *obj.ConsentChallengeResponseRequest
}
if obj.DummyChallengeResponseRequest != nil {
return *obj.DummyChallengeResponseRequest
}
if obj.EmailChallengeResponseRequest != nil {
return *obj.EmailChallengeResponseRequest
}
if obj.EndpointAgentChallengeResponseRequest != nil {
return *obj.EndpointAgentChallengeResponseRequest
}
if obj.FrameChallengeResponseRequest != nil {
return *obj.FrameChallengeResponseRequest
}
if obj.IdentificationChallengeResponseRequest != nil {
return *obj.IdentificationChallengeResponseRequest
}
if obj.IframeLogoutChallengeResponseRequest != nil {
return *obj.IframeLogoutChallengeResponseRequest
}
if obj.NativeLogoutChallengeResponseRequest != nil {
return *obj.NativeLogoutChallengeResponseRequest
}
if obj.OAuthDeviceCodeChallengeResponseRequest != nil {
return *obj.OAuthDeviceCodeChallengeResponseRequest
}
if obj.OAuthDeviceCodeFinishChallengeResponseRequest != nil {
return *obj.OAuthDeviceCodeFinishChallengeResponseRequest
}
if obj.PasswordChallengeResponseRequest != nil {
return *obj.PasswordChallengeResponseRequest
}
if obj.PlexAuthenticationChallengeResponseRequest != nil {
return *obj.PlexAuthenticationChallengeResponseRequest
}
if obj.PromptChallengeResponseRequest != nil {
return *obj.PromptChallengeResponseRequest
}
if obj.RedirectChallengeResponseRequest != nil {
return *obj.RedirectChallengeResponseRequest
}
if obj.TelegramChallengeResponseRequest != nil {
return *obj.TelegramChallengeResponseRequest
}
if obj.UserLoginChallengeResponseRequest != nil {
return *obj.UserLoginChallengeResponseRequest
}
// all schemas are nil
return nil
}
type NullableFlowChallengeResponseRequest struct {
value *FlowChallengeResponseRequest
isSet bool
}
func (v NullableFlowChallengeResponseRequest) Get() *FlowChallengeResponseRequest {
return v.value
}
func (v *NullableFlowChallengeResponseRequest) Set(val *FlowChallengeResponseRequest) {
v.value = val
v.isSet = true
}
func (v NullableFlowChallengeResponseRequest) IsSet() bool {
return v.isSet
}
func (v *NullableFlowChallengeResponseRequest) Unset() {
v.value = nil
v.isSet = false
}
func NewNullableFlowChallengeResponseRequest(val *FlowChallengeResponseRequest) *NullableFlowChallengeResponseRequest {
return &NullableFlowChallengeResponseRequest{value: val, isSet: true}
}
func (v NullableFlowChallengeResponseRequest) MarshalJSON() ([]byte, error) {
return json.Marshal(v.value)
}
func (v *NullableFlowChallengeResponseRequest) UnmarshalJSON(src []byte) error {
v.isSet = true
return json.Unmarshal(src, &v.value)
}