/* 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" ) // checks if the DeviceUserBindingRequest type satisfies the MappedNullable interface at compile time var _ MappedNullable = &DeviceUserBindingRequest{} // DeviceUserBindingRequest PolicyBinding Serializer type DeviceUserBindingRequest struct { Policy NullableString `json:"policy,omitempty"` Group NullableString `json:"group,omitempty"` User NullableInt32 `json:"user,omitempty"` Target string `json:"target"` // Negates the outcome of the policy. Messages are unaffected. Negate *bool `json:"negate,omitempty"` Enabled *bool `json:"enabled,omitempty"` Order int32 `json:"order"` // Timeout after which Policy execution is terminated. Timeout *int32 `json:"timeout,omitempty"` // Result if the Policy execution fails. FailureResult *bool `json:"failure_result,omitempty"` IsPrimary *bool `json:"is_primary,omitempty"` AdditionalProperties map[string]interface{} } type _DeviceUserBindingRequest DeviceUserBindingRequest // NewDeviceUserBindingRequest instantiates a new DeviceUserBindingRequest object // This constructor will assign default values to properties that have it defined, // and makes sure properties required by API are set, but the set of arguments // will change when the set of required properties is changed func NewDeviceUserBindingRequest(target string, order int32) *DeviceUserBindingRequest { this := DeviceUserBindingRequest{} this.Target = target this.Order = order return &this } // NewDeviceUserBindingRequestWithDefaults instantiates a new DeviceUserBindingRequest object // This constructor will only assign default values to properties that have it defined, // but it doesn't guarantee that properties required by API are set func NewDeviceUserBindingRequestWithDefaults() *DeviceUserBindingRequest { this := DeviceUserBindingRequest{} return &this } // GetPolicy returns the Policy field value if set, zero value otherwise (both if not set or set to explicit null). func (o *DeviceUserBindingRequest) GetPolicy() string { if o == nil || IsNil(o.Policy.Get()) { var ret string return ret } return *o.Policy.Get() } // GetPolicyOk returns a tuple with the Policy field value if set, nil otherwise // and a boolean to check if the value has been set. // NOTE: If the value is an explicit nil, `nil, true` will be returned func (o *DeviceUserBindingRequest) GetPolicyOk() (*string, bool) { if o == nil { return nil, false } return o.Policy.Get(), o.Policy.IsSet() } // HasPolicy returns a boolean if a field has been set. func (o *DeviceUserBindingRequest) HasPolicy() bool { if o != nil && o.Policy.IsSet() { return true } return false } // SetPolicy gets a reference to the given NullableString and assigns it to the Policy field. func (o *DeviceUserBindingRequest) SetPolicy(v string) { o.Policy.Set(&v) } // SetPolicyNil sets the value for Policy to be an explicit nil func (o *DeviceUserBindingRequest) SetPolicyNil() { o.Policy.Set(nil) } // UnsetPolicy ensures that no value is present for Policy, not even an explicit nil func (o *DeviceUserBindingRequest) UnsetPolicy() { o.Policy.Unset() } // GetGroup returns the Group field value if set, zero value otherwise (both if not set or set to explicit null). func (o *DeviceUserBindingRequest) GetGroup() string { if o == nil || IsNil(o.Group.Get()) { var ret string return ret } return *o.Group.Get() } // GetGroupOk returns a tuple with the Group field value if set, nil otherwise // and a boolean to check if the value has been set. // NOTE: If the value is an explicit nil, `nil, true` will be returned func (o *DeviceUserBindingRequest) GetGroupOk() (*string, bool) { if o == nil { return nil, false } return o.Group.Get(), o.Group.IsSet() } // HasGroup returns a boolean if a field has been set. func (o *DeviceUserBindingRequest) HasGroup() bool { if o != nil && o.Group.IsSet() { return true } return false } // SetGroup gets a reference to the given NullableString and assigns it to the Group field. func (o *DeviceUserBindingRequest) SetGroup(v string) { o.Group.Set(&v) } // SetGroupNil sets the value for Group to be an explicit nil func (o *DeviceUserBindingRequest) SetGroupNil() { o.Group.Set(nil) } // UnsetGroup ensures that no value is present for Group, not even an explicit nil func (o *DeviceUserBindingRequest) UnsetGroup() { o.Group.Unset() } // GetUser returns the User field value if set, zero value otherwise (both if not set or set to explicit null). func (o *DeviceUserBindingRequest) GetUser() int32 { if o == nil || IsNil(o.User.Get()) { var ret int32 return ret } return *o.User.Get() } // GetUserOk returns a tuple with the User field value if set, nil otherwise // and a boolean to check if the value has been set. // NOTE: If the value is an explicit nil, `nil, true` will be returned func (o *DeviceUserBindingRequest) GetUserOk() (*int32, bool) { if o == nil { return nil, false } return o.User.Get(), o.User.IsSet() } // HasUser returns a boolean if a field has been set. func (o *DeviceUserBindingRequest) HasUser() bool { if o != nil && o.User.IsSet() { return true } return false } // SetUser gets a reference to the given NullableInt32 and assigns it to the User field. func (o *DeviceUserBindingRequest) SetUser(v int32) { o.User.Set(&v) } // SetUserNil sets the value for User to be an explicit nil func (o *DeviceUserBindingRequest) SetUserNil() { o.User.Set(nil) } // UnsetUser ensures that no value is present for User, not even an explicit nil func (o *DeviceUserBindingRequest) UnsetUser() { o.User.Unset() } // GetTarget returns the Target field value func (o *DeviceUserBindingRequest) GetTarget() string { if o == nil { var ret string return ret } return o.Target } // GetTargetOk returns a tuple with the Target field value // and a boolean to check if the value has been set. func (o *DeviceUserBindingRequest) GetTargetOk() (*string, bool) { if o == nil { return nil, false } return &o.Target, true } // SetTarget sets field value func (o *DeviceUserBindingRequest) SetTarget(v string) { o.Target = v } // GetNegate returns the Negate field value if set, zero value otherwise. func (o *DeviceUserBindingRequest) GetNegate() bool { if o == nil || IsNil(o.Negate) { var ret bool return ret } return *o.Negate } // GetNegateOk returns a tuple with the Negate field value if set, nil otherwise // and a boolean to check if the value has been set. func (o *DeviceUserBindingRequest) GetNegateOk() (*bool, bool) { if o == nil || IsNil(o.Negate) { return nil, false } return o.Negate, true } // HasNegate returns a boolean if a field has been set. func (o *DeviceUserBindingRequest) HasNegate() bool { if o != nil && !IsNil(o.Negate) { return true } return false } // SetNegate gets a reference to the given bool and assigns it to the Negate field. func (o *DeviceUserBindingRequest) SetNegate(v bool) { o.Negate = &v } // GetEnabled returns the Enabled field value if set, zero value otherwise. func (o *DeviceUserBindingRequest) GetEnabled() bool { if o == nil || IsNil(o.Enabled) { var ret bool return ret } return *o.Enabled } // GetEnabledOk returns a tuple with the Enabled field value if set, nil otherwise // and a boolean to check if the value has been set. func (o *DeviceUserBindingRequest) GetEnabledOk() (*bool, bool) { if o == nil || IsNil(o.Enabled) { return nil, false } return o.Enabled, true } // HasEnabled returns a boolean if a field has been set. func (o *DeviceUserBindingRequest) HasEnabled() bool { if o != nil && !IsNil(o.Enabled) { return true } return false } // SetEnabled gets a reference to the given bool and assigns it to the Enabled field. func (o *DeviceUserBindingRequest) SetEnabled(v bool) { o.Enabled = &v } // GetOrder returns the Order field value func (o *DeviceUserBindingRequest) GetOrder() int32 { if o == nil { var ret int32 return ret } return o.Order } // GetOrderOk returns a tuple with the Order field value // and a boolean to check if the value has been set. func (o *DeviceUserBindingRequest) GetOrderOk() (*int32, bool) { if o == nil { return nil, false } return &o.Order, true } // SetOrder sets field value func (o *DeviceUserBindingRequest) SetOrder(v int32) { o.Order = v } // GetTimeout returns the Timeout field value if set, zero value otherwise. func (o *DeviceUserBindingRequest) GetTimeout() int32 { if o == nil || IsNil(o.Timeout) { var ret int32 return ret } return *o.Timeout } // GetTimeoutOk returns a tuple with the Timeout field value if set, nil otherwise // and a boolean to check if the value has been set. func (o *DeviceUserBindingRequest) GetTimeoutOk() (*int32, bool) { if o == nil || IsNil(o.Timeout) { return nil, false } return o.Timeout, true } // HasTimeout returns a boolean if a field has been set. func (o *DeviceUserBindingRequest) HasTimeout() bool { if o != nil && !IsNil(o.Timeout) { return true } return false } // SetTimeout gets a reference to the given int32 and assigns it to the Timeout field. func (o *DeviceUserBindingRequest) SetTimeout(v int32) { o.Timeout = &v } // GetFailureResult returns the FailureResult field value if set, zero value otherwise. func (o *DeviceUserBindingRequest) GetFailureResult() bool { if o == nil || IsNil(o.FailureResult) { var ret bool return ret } return *o.FailureResult } // GetFailureResultOk returns a tuple with the FailureResult field value if set, nil otherwise // and a boolean to check if the value has been set. func (o *DeviceUserBindingRequest) GetFailureResultOk() (*bool, bool) { if o == nil || IsNil(o.FailureResult) { return nil, false } return o.FailureResult, true } // HasFailureResult returns a boolean if a field has been set. func (o *DeviceUserBindingRequest) HasFailureResult() bool { if o != nil && !IsNil(o.FailureResult) { return true } return false } // SetFailureResult gets a reference to the given bool and assigns it to the FailureResult field. func (o *DeviceUserBindingRequest) SetFailureResult(v bool) { o.FailureResult = &v } // GetIsPrimary returns the IsPrimary field value if set, zero value otherwise. func (o *DeviceUserBindingRequest) GetIsPrimary() bool { if o == nil || IsNil(o.IsPrimary) { var ret bool return ret } return *o.IsPrimary } // GetIsPrimaryOk returns a tuple with the IsPrimary field value if set, nil otherwise // and a boolean to check if the value has been set. func (o *DeviceUserBindingRequest) GetIsPrimaryOk() (*bool, bool) { if o == nil || IsNil(o.IsPrimary) { return nil, false } return o.IsPrimary, true } // HasIsPrimary returns a boolean if a field has been set. func (o *DeviceUserBindingRequest) HasIsPrimary() bool { if o != nil && !IsNil(o.IsPrimary) { return true } return false } // SetIsPrimary gets a reference to the given bool and assigns it to the IsPrimary field. func (o *DeviceUserBindingRequest) SetIsPrimary(v bool) { o.IsPrimary = &v } func (o DeviceUserBindingRequest) MarshalJSON() ([]byte, error) { toSerialize, err := o.ToMap() if err != nil { return []byte{}, err } return json.Marshal(toSerialize) } func (o DeviceUserBindingRequest) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} if o.Policy.IsSet() { toSerialize["policy"] = o.Policy.Get() } if o.Group.IsSet() { toSerialize["group"] = o.Group.Get() } if o.User.IsSet() { toSerialize["user"] = o.User.Get() } toSerialize["target"] = o.Target if !IsNil(o.Negate) { toSerialize["negate"] = o.Negate } if !IsNil(o.Enabled) { toSerialize["enabled"] = o.Enabled } toSerialize["order"] = o.Order if !IsNil(o.Timeout) { toSerialize["timeout"] = o.Timeout } if !IsNil(o.FailureResult) { toSerialize["failure_result"] = o.FailureResult } if !IsNil(o.IsPrimary) { toSerialize["is_primary"] = o.IsPrimary } for key, value := range o.AdditionalProperties { toSerialize[key] = value } return toSerialize, nil } func (o *DeviceUserBindingRequest) UnmarshalJSON(data []byte) (err error) { // This validates that all required properties are included in the JSON object // by unmarshalling the object into a generic map with string keys and checking // that every required field exists as a key in the generic map. requiredProperties := []string{ "target", "order", } allProperties := make(map[string]interface{}) err = json.Unmarshal(data, &allProperties) if err != nil { return err } for _, requiredProperty := range requiredProperties { if _, exists := allProperties[requiredProperty]; !exists { return fmt.Errorf("no value given for required property %v", requiredProperty) } } varDeviceUserBindingRequest := _DeviceUserBindingRequest{} err = json.Unmarshal(data, &varDeviceUserBindingRequest) if err != nil { return err } *o = DeviceUserBindingRequest(varDeviceUserBindingRequest) additionalProperties := make(map[string]interface{}) if err = json.Unmarshal(data, &additionalProperties); err == nil { delete(additionalProperties, "policy") delete(additionalProperties, "group") delete(additionalProperties, "user") delete(additionalProperties, "target") delete(additionalProperties, "negate") delete(additionalProperties, "enabled") delete(additionalProperties, "order") delete(additionalProperties, "timeout") delete(additionalProperties, "failure_result") delete(additionalProperties, "is_primary") o.AdditionalProperties = additionalProperties } return err } type NullableDeviceUserBindingRequest struct { value *DeviceUserBindingRequest isSet bool } func (v NullableDeviceUserBindingRequest) Get() *DeviceUserBindingRequest { return v.value } func (v *NullableDeviceUserBindingRequest) Set(val *DeviceUserBindingRequest) { v.value = val v.isSet = true } func (v NullableDeviceUserBindingRequest) IsSet() bool { return v.isSet } func (v *NullableDeviceUserBindingRequest) Unset() { v.value = nil v.isSet = false } func NewNullableDeviceUserBindingRequest(val *DeviceUserBindingRequest) *NullableDeviceUserBindingRequest { return &NullableDeviceUserBindingRequest{value: val, isSet: true} } func (v NullableDeviceUserBindingRequest) MarshalJSON() ([]byte, error) { return json.Marshal(v.value) } func (v *NullableDeviceUserBindingRequest) UnmarshalJSON(src []byte) error { v.isSet = true return json.Unmarshal(src, &v.value) }