// Code generated by go-swagger; DO NOT EDIT.

// (c) 2012-2023 by Vernon Keenan
// All rights reserved worldwide.
// Proprietary product; unlicensed use is not allowed

package members_models

// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command

import (
	"context"

	"github.com/go-openapi/strfmt"
	"github.com/go-openapi/swag"
)

// UserAuth user auth
//
// swagger:model UserAuth
type UserAuth struct {

	// Access Token
	AccessToken *string `json:"accessToken,omitempty"`

	// Account ID
	AccountID *string `json:"accountId,omitempty"`

	// API Key
	APIKey *string `json:"apiKey,omitempty"`

	// Company Name
	CompanyName *string `json:"companyName,omitempty"`

	// Contact
	ContactID *string `json:"contactId,omitempty"`

	// Email address
	Email string `json:"email,omitempty"`

	// Environment
	Environment *string `json:"environment,omitempty"`

	// The first name
	FirstName *string `json:"firstName,omitempty"`

	// GitHub
	GitHub *string `json:"gitHub,omitempty"`

	// Record ID
	ID string `json:"id,omitempty"`

	// Photo URL
	Image *string `json:"image,omitempty"`

	// Active
	IsActive *bool `json:"isActive,omitempty"`

	// IP address of last login
	LastIP *string `json:"lastIp,omitempty"`

	// Last login time
	LastLogin *string `json:"lastLogin,omitempty"`

	// The Last Name
	LastName *string `json:"lastName,omitempty"`

	// LinkedIn
	LinkedIn *string `json:"linkedIn,omitempty"`

	// Number of times user has logged in
	LoginCount *int64 `json:"loginCount,omitempty"`

	// Mobile
	MobilePhone *string `json:"mobilePhone,omitempty"`

	// Name
	Name *string `json:"name,omitempty"`

	// Password
	Password *string `json:"password,omitempty"`

	// Phone
	Phone *string `json:"phone,omitempty"`

	// Portal Role Level
	PortalRole *string `json:"portalRole,omitempty"`

	// Provider
	Provider *string `json:"provider,omitempty"`

	// Onboarding Status
	Status *string `json:"status,omitempty"`

	// Tenant ID associated with this user
	TenantID *string `json:"tenantId,omitempty"`

	// Title
	Title *string `json:"title,omitempty"`

	// Twitter
	Twitter *string `json:"twitter,omitempty"`
}

// Validate validates this user auth
func (m *UserAuth) Validate(formats strfmt.Registry) error {
	return nil
}

// ContextValidate validates this user auth based on context it is used
func (m *UserAuth) ContextValidate(ctx context.Context, formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *UserAuth) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *UserAuth) UnmarshalBinary(b []byte) error {
	var res UserAuth
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}
