github.com/Files-com/files-sdk-go/v2@v2.1.2/site.go (about) 1 package files_sdk 2 3 import ( 4 "encoding/json" 5 "io" 6 "time" 7 8 lib "github.com/Files-com/files-sdk-go/v2/lib" 9 ) 10 11 type Site struct { 12 Name string `json:"name,omitempty" path:"name,omitempty" url:"name,omitempty"` 13 Allowed2faMethodSms *bool `json:"allowed_2fa_method_sms,omitempty" path:"allowed_2fa_method_sms,omitempty" url:"allowed_2fa_method_sms,omitempty"` 14 Allowed2faMethodTotp *bool `json:"allowed_2fa_method_totp,omitempty" path:"allowed_2fa_method_totp,omitempty" url:"allowed_2fa_method_totp,omitempty"` 15 Allowed2faMethodU2f *bool `json:"allowed_2fa_method_u2f,omitempty" path:"allowed_2fa_method_u2f,omitempty" url:"allowed_2fa_method_u2f,omitempty"` 16 Allowed2faMethodWebauthn *bool `json:"allowed_2fa_method_webauthn,omitempty" path:"allowed_2fa_method_webauthn,omitempty" url:"allowed_2fa_method_webauthn,omitempty"` 17 Allowed2faMethodYubi *bool `json:"allowed_2fa_method_yubi,omitempty" path:"allowed_2fa_method_yubi,omitempty" url:"allowed_2fa_method_yubi,omitempty"` 18 Allowed2faMethodBypassForFtpSftpDav *bool `json:"allowed_2fa_method_bypass_for_ftp_sftp_dav,omitempty" path:"allowed_2fa_method_bypass_for_ftp_sftp_dav,omitempty" url:"allowed_2fa_method_bypass_for_ftp_sftp_dav,omitempty"` 19 AdminUserId int64 `json:"admin_user_id,omitempty" path:"admin_user_id,omitempty" url:"admin_user_id,omitempty"` 20 AllowBundleNames *bool `json:"allow_bundle_names,omitempty" path:"allow_bundle_names,omitempty" url:"allow_bundle_names,omitempty"` 21 AllowedCountries string `json:"allowed_countries,omitempty" path:"allowed_countries,omitempty" url:"allowed_countries,omitempty"` 22 AllowedIps string `json:"allowed_ips,omitempty" path:"allowed_ips,omitempty" url:"allowed_ips,omitempty"` 23 AskAboutOverwrites *bool `json:"ask_about_overwrites,omitempty" path:"ask_about_overwrites,omitempty" url:"ask_about_overwrites,omitempty"` 24 BundleActivityNotifications string `json:"bundle_activity_notifications,omitempty" path:"bundle_activity_notifications,omitempty" url:"bundle_activity_notifications,omitempty"` 25 BundleExpiration int64 `json:"bundle_expiration,omitempty" path:"bundle_expiration,omitempty" url:"bundle_expiration,omitempty"` 26 BundlePasswordRequired *bool `json:"bundle_password_required,omitempty" path:"bundle_password_required,omitempty" url:"bundle_password_required,omitempty"` 27 BundleRegistrationNotifications string `json:"bundle_registration_notifications,omitempty" path:"bundle_registration_notifications,omitempty" url:"bundle_registration_notifications,omitempty"` 28 BundleRequireRegistration *bool `json:"bundle_require_registration,omitempty" path:"bundle_require_registration,omitempty" url:"bundle_require_registration,omitempty"` 29 BundleRequireShareRecipient *bool `json:"bundle_require_share_recipient,omitempty" path:"bundle_require_share_recipient,omitempty" url:"bundle_require_share_recipient,omitempty"` 30 BundleUploadReceiptNotifications string `json:"bundle_upload_receipt_notifications,omitempty" path:"bundle_upload_receipt_notifications,omitempty" url:"bundle_upload_receipt_notifications,omitempty"` 31 BundleWatermarkAttachment Image `json:"bundle_watermark_attachment,omitempty" path:"bundle_watermark_attachment,omitempty" url:"bundle_watermark_attachment,omitempty"` 32 BundleWatermarkValue map[string]interface{} `json:"bundle_watermark_value,omitempty" path:"bundle_watermark_value,omitempty" url:"bundle_watermark_value,omitempty"` 33 UploadsViaEmailAuthentication *bool `json:"uploads_via_email_authentication,omitempty" path:"uploads_via_email_authentication,omitempty" url:"uploads_via_email_authentication,omitempty"` 34 Color2Left string `json:"color2_left,omitempty" path:"color2_left,omitempty" url:"color2_left,omitempty"` 35 Color2Link string `json:"color2_link,omitempty" path:"color2_link,omitempty" url:"color2_link,omitempty"` 36 Color2Text string `json:"color2_text,omitempty" path:"color2_text,omitempty" url:"color2_text,omitempty"` 37 Color2Top string `json:"color2_top,omitempty" path:"color2_top,omitempty" url:"color2_top,omitempty"` 38 Color2TopText string `json:"color2_top_text,omitempty" path:"color2_top_text,omitempty" url:"color2_top_text,omitempty"` 39 ContactName string `json:"contact_name,omitempty" path:"contact_name,omitempty" url:"contact_name,omitempty"` 40 CreatedAt *time.Time `json:"created_at,omitempty" path:"created_at,omitempty" url:"created_at,omitempty"` 41 Currency string `json:"currency,omitempty" path:"currency,omitempty" url:"currency,omitempty"` 42 CustomNamespace *bool `json:"custom_namespace,omitempty" path:"custom_namespace,omitempty" url:"custom_namespace,omitempty"` 43 DaysToRetainBackups int64 `json:"days_to_retain_backups,omitempty" path:"days_to_retain_backups,omitempty" url:"days_to_retain_backups,omitempty"` 44 DefaultTimeZone string `json:"default_time_zone,omitempty" path:"default_time_zone,omitempty" url:"default_time_zone,omitempty"` 45 DesktopApp *bool `json:"desktop_app,omitempty" path:"desktop_app,omitempty" url:"desktop_app,omitempty"` 46 DesktopAppSessionIpPinning *bool `json:"desktop_app_session_ip_pinning,omitempty" path:"desktop_app_session_ip_pinning,omitempty" url:"desktop_app_session_ip_pinning,omitempty"` 47 DesktopAppSessionLifetime int64 `json:"desktop_app_session_lifetime,omitempty" path:"desktop_app_session_lifetime,omitempty" url:"desktop_app_session_lifetime,omitempty"` 48 MobileApp *bool `json:"mobile_app,omitempty" path:"mobile_app,omitempty" url:"mobile_app,omitempty"` 49 MobileAppSessionIpPinning *bool `json:"mobile_app_session_ip_pinning,omitempty" path:"mobile_app_session_ip_pinning,omitempty" url:"mobile_app_session_ip_pinning,omitempty"` 50 MobileAppSessionLifetime int64 `json:"mobile_app_session_lifetime,omitempty" path:"mobile_app_session_lifetime,omitempty" url:"mobile_app_session_lifetime,omitempty"` 51 DisallowedCountries string `json:"disallowed_countries,omitempty" path:"disallowed_countries,omitempty" url:"disallowed_countries,omitempty"` 52 DisableFilesCertificateGeneration *bool `json:"disable_files_certificate_generation,omitempty" path:"disable_files_certificate_generation,omitempty" url:"disable_files_certificate_generation,omitempty"` 53 DisableNotifications *bool `json:"disable_notifications,omitempty" path:"disable_notifications,omitempty" url:"disable_notifications,omitempty"` 54 DisablePasswordReset *bool `json:"disable_password_reset,omitempty" path:"disable_password_reset,omitempty" url:"disable_password_reset,omitempty"` 55 Domain string `json:"domain,omitempty" path:"domain,omitempty" url:"domain,omitempty"` 56 DomainHstsHeader *bool `json:"domain_hsts_header,omitempty" path:"domain_hsts_header,omitempty" url:"domain_hsts_header,omitempty"` 57 DomainLetsencryptChain string `json:"domain_letsencrypt_chain,omitempty" path:"domain_letsencrypt_chain,omitempty" url:"domain_letsencrypt_chain,omitempty"` 58 Email string `json:"email,omitempty" path:"email,omitempty" url:"email,omitempty"` 59 FtpEnabled *bool `json:"ftp_enabled,omitempty" path:"ftp_enabled,omitempty" url:"ftp_enabled,omitempty"` 60 ReplyToEmail string `json:"reply_to_email,omitempty" path:"reply_to_email,omitempty" url:"reply_to_email,omitempty"` 61 NonSsoGroupsAllowed *bool `json:"non_sso_groups_allowed,omitempty" path:"non_sso_groups_allowed,omitempty" url:"non_sso_groups_allowed,omitempty"` 62 NonSsoUsersAllowed *bool `json:"non_sso_users_allowed,omitempty" path:"non_sso_users_allowed,omitempty" url:"non_sso_users_allowed,omitempty"` 63 FolderPermissionsGroupsOnly *bool `json:"folder_permissions_groups_only,omitempty" path:"folder_permissions_groups_only,omitempty" url:"folder_permissions_groups_only,omitempty"` 64 Hipaa *bool `json:"hipaa,omitempty" path:"hipaa,omitempty" url:"hipaa,omitempty"` 65 Icon128 Image `json:"icon128,omitempty" path:"icon128,omitempty" url:"icon128,omitempty"` 66 Icon16 Image `json:"icon16,omitempty" path:"icon16,omitempty" url:"icon16,omitempty"` 67 Icon32 Image `json:"icon32,omitempty" path:"icon32,omitempty" url:"icon32,omitempty"` 68 Icon48 Image `json:"icon48,omitempty" path:"icon48,omitempty" url:"icon48,omitempty"` 69 ImmutableFilesSetAt *time.Time `json:"immutable_files_set_at,omitempty" path:"immutable_files_set_at,omitempty" url:"immutable_files_set_at,omitempty"` 70 IncludePasswordInWelcomeEmail *bool `json:"include_password_in_welcome_email,omitempty" path:"include_password_in_welcome_email,omitempty" url:"include_password_in_welcome_email,omitempty"` 71 Language string `json:"language,omitempty" path:"language,omitempty" url:"language,omitempty"` 72 LdapBaseDn string `json:"ldap_base_dn,omitempty" path:"ldap_base_dn,omitempty" url:"ldap_base_dn,omitempty"` 73 LdapDomain string `json:"ldap_domain,omitempty" path:"ldap_domain,omitempty" url:"ldap_domain,omitempty"` 74 LdapEnabled *bool `json:"ldap_enabled,omitempty" path:"ldap_enabled,omitempty" url:"ldap_enabled,omitempty"` 75 LdapGroupAction string `json:"ldap_group_action,omitempty" path:"ldap_group_action,omitempty" url:"ldap_group_action,omitempty"` 76 LdapGroupExclusion string `json:"ldap_group_exclusion,omitempty" path:"ldap_group_exclusion,omitempty" url:"ldap_group_exclusion,omitempty"` 77 LdapGroupInclusion string `json:"ldap_group_inclusion,omitempty" path:"ldap_group_inclusion,omitempty" url:"ldap_group_inclusion,omitempty"` 78 LdapHost string `json:"ldap_host,omitempty" path:"ldap_host,omitempty" url:"ldap_host,omitempty"` 79 LdapHost2 string `json:"ldap_host_2,omitempty" path:"ldap_host_2,omitempty" url:"ldap_host_2,omitempty"` 80 LdapHost3 string `json:"ldap_host_3,omitempty" path:"ldap_host_3,omitempty" url:"ldap_host_3,omitempty"` 81 LdapPort int64 `json:"ldap_port,omitempty" path:"ldap_port,omitempty" url:"ldap_port,omitempty"` 82 LdapSecure *bool `json:"ldap_secure,omitempty" path:"ldap_secure,omitempty" url:"ldap_secure,omitempty"` 83 LdapType string `json:"ldap_type,omitempty" path:"ldap_type,omitempty" url:"ldap_type,omitempty"` 84 LdapUserAction string `json:"ldap_user_action,omitempty" path:"ldap_user_action,omitempty" url:"ldap_user_action,omitempty"` 85 LdapUserIncludeGroups string `json:"ldap_user_include_groups,omitempty" path:"ldap_user_include_groups,omitempty" url:"ldap_user_include_groups,omitempty"` 86 LdapUsername string `json:"ldap_username,omitempty" path:"ldap_username,omitempty" url:"ldap_username,omitempty"` 87 LdapUsernameField string `json:"ldap_username_field,omitempty" path:"ldap_username_field,omitempty" url:"ldap_username_field,omitempty"` 88 LoginHelpText string `json:"login_help_text,omitempty" path:"login_help_text,omitempty" url:"login_help_text,omitempty"` 89 Logo Image `json:"logo,omitempty" path:"logo,omitempty" url:"logo,omitempty"` 90 MaxPriorPasswords int64 `json:"max_prior_passwords,omitempty" path:"max_prior_passwords,omitempty" url:"max_prior_passwords,omitempty"` 91 MotdText string `json:"motd_text,omitempty" path:"motd_text,omitempty" url:"motd_text,omitempty"` 92 MotdUseForFtp *bool `json:"motd_use_for_ftp,omitempty" path:"motd_use_for_ftp,omitempty" url:"motd_use_for_ftp,omitempty"` 93 MotdUseForSftp *bool `json:"motd_use_for_sftp,omitempty" path:"motd_use_for_sftp,omitempty" url:"motd_use_for_sftp,omitempty"` 94 NextBillingAmount string `json:"next_billing_amount,omitempty" path:"next_billing_amount,omitempty" url:"next_billing_amount,omitempty"` 95 NextBillingDate string `json:"next_billing_date,omitempty" path:"next_billing_date,omitempty" url:"next_billing_date,omitempty"` 96 OfficeIntegrationAvailable *bool `json:"office_integration_available,omitempty" path:"office_integration_available,omitempty" url:"office_integration_available,omitempty"` 97 OfficeIntegrationType string `json:"office_integration_type,omitempty" path:"office_integration_type,omitempty" url:"office_integration_type,omitempty"` 98 OncehubLink string `json:"oncehub_link,omitempty" path:"oncehub_link,omitempty" url:"oncehub_link,omitempty"` 99 OptOutGlobal *bool `json:"opt_out_global,omitempty" path:"opt_out_global,omitempty" url:"opt_out_global,omitempty"` 100 Overdue *bool `json:"overdue,omitempty" path:"overdue,omitempty" url:"overdue,omitempty"` 101 PasswordMinLength int64 `json:"password_min_length,omitempty" path:"password_min_length,omitempty" url:"password_min_length,omitempty"` 102 PasswordRequireLetter *bool `json:"password_require_letter,omitempty" path:"password_require_letter,omitempty" url:"password_require_letter,omitempty"` 103 PasswordRequireMixed *bool `json:"password_require_mixed,omitempty" path:"password_require_mixed,omitempty" url:"password_require_mixed,omitempty"` 104 PasswordRequireNumber *bool `json:"password_require_number,omitempty" path:"password_require_number,omitempty" url:"password_require_number,omitempty"` 105 PasswordRequireSpecial *bool `json:"password_require_special,omitempty" path:"password_require_special,omitempty" url:"password_require_special,omitempty"` 106 PasswordRequireUnbreached *bool `json:"password_require_unbreached,omitempty" path:"password_require_unbreached,omitempty" url:"password_require_unbreached,omitempty"` 107 PasswordRequirementsApplyToBundles *bool `json:"password_requirements_apply_to_bundles,omitempty" path:"password_requirements_apply_to_bundles,omitempty" url:"password_requirements_apply_to_bundles,omitempty"` 108 PasswordValidityDays int64 `json:"password_validity_days,omitempty" path:"password_validity_days,omitempty" url:"password_validity_days,omitempty"` 109 Phone string `json:"phone,omitempty" path:"phone,omitempty" url:"phone,omitempty"` 110 PinAllRemoteServersToSiteRegion *bool `json:"pin_all_remote_servers_to_site_region,omitempty" path:"pin_all_remote_servers_to_site_region,omitempty" url:"pin_all_remote_servers_to_site_region,omitempty"` 111 PreventRootPermissionsForNonSiteAdmins *bool `json:"prevent_root_permissions_for_non_site_admins,omitempty" path:"prevent_root_permissions_for_non_site_admins,omitempty" url:"prevent_root_permissions_for_non_site_admins,omitempty"` 112 Require2fa *bool `json:"require_2fa,omitempty" path:"require_2fa,omitempty" url:"require_2fa,omitempty"` 113 Require2faStopTime *time.Time `json:"require_2fa_stop_time,omitempty" path:"require_2fa_stop_time,omitempty" url:"require_2fa_stop_time,omitempty"` 114 Require2faUserType string `json:"require_2fa_user_type,omitempty" path:"require_2fa_user_type,omitempty" url:"require_2fa_user_type,omitempty"` 115 RequireLogoutFromBundlesAndInboxes *bool `json:"require_logout_from_bundles_and_inboxes,omitempty" path:"require_logout_from_bundles_and_inboxes,omitempty" url:"require_logout_from_bundles_and_inboxes,omitempty"` 116 Session Session `json:"session,omitempty" path:"session,omitempty" url:"session,omitempty"` 117 SessionPinnedByIp *bool `json:"session_pinned_by_ip,omitempty" path:"session_pinned_by_ip,omitempty" url:"session_pinned_by_ip,omitempty"` 118 SftpEnabled *bool `json:"sftp_enabled,omitempty" path:"sftp_enabled,omitempty" url:"sftp_enabled,omitempty"` 119 SftpHostKeyType string `json:"sftp_host_key_type,omitempty" path:"sftp_host_key_type,omitempty" url:"sftp_host_key_type,omitempty"` 120 ActiveSftpHostKeyId int64 `json:"active_sftp_host_key_id,omitempty" path:"active_sftp_host_key_id,omitempty" url:"active_sftp_host_key_id,omitempty"` 121 SftpInsecureCiphers *bool `json:"sftp_insecure_ciphers,omitempty" path:"sftp_insecure_ciphers,omitempty" url:"sftp_insecure_ciphers,omitempty"` 122 SftpUserRootEnabled *bool `json:"sftp_user_root_enabled,omitempty" path:"sftp_user_root_enabled,omitempty" url:"sftp_user_root_enabled,omitempty"` 123 SharingEnabled *bool `json:"sharing_enabled,omitempty" path:"sharing_enabled,omitempty" url:"sharing_enabled,omitempty"` 124 ShowRequestAccessLink *bool `json:"show_request_access_link,omitempty" path:"show_request_access_link,omitempty" url:"show_request_access_link,omitempty"` 125 SiteFooter string `json:"site_footer,omitempty" path:"site_footer,omitempty" url:"site_footer,omitempty"` 126 SiteHeader string `json:"site_header,omitempty" path:"site_header,omitempty" url:"site_header,omitempty"` 127 SmtpAddress string `json:"smtp_address,omitempty" path:"smtp_address,omitempty" url:"smtp_address,omitempty"` 128 SmtpAuthentication string `json:"smtp_authentication,omitempty" path:"smtp_authentication,omitempty" url:"smtp_authentication,omitempty"` 129 SmtpFrom string `json:"smtp_from,omitempty" path:"smtp_from,omitempty" url:"smtp_from,omitempty"` 130 SmtpPort int64 `json:"smtp_port,omitempty" path:"smtp_port,omitempty" url:"smtp_port,omitempty"` 131 SmtpUsername string `json:"smtp_username,omitempty" path:"smtp_username,omitempty" url:"smtp_username,omitempty"` 132 SessionExpiry string `json:"session_expiry,omitempty" path:"session_expiry,omitempty" url:"session_expiry,omitempty"` 133 SessionExpiryMinutes int64 `json:"session_expiry_minutes,omitempty" path:"session_expiry_minutes,omitempty" url:"session_expiry_minutes,omitempty"` 134 SslRequired *bool `json:"ssl_required,omitempty" path:"ssl_required,omitempty" url:"ssl_required,omitempty"` 135 Subdomain string `json:"subdomain,omitempty" path:"subdomain,omitempty" url:"subdomain,omitempty"` 136 SwitchToPlanDate *time.Time `json:"switch_to_plan_date,omitempty" path:"switch_to_plan_date,omitempty" url:"switch_to_plan_date,omitempty"` 137 TlsDisabled *bool `json:"tls_disabled,omitempty" path:"tls_disabled,omitempty" url:"tls_disabled,omitempty"` 138 TrialDaysLeft int64 `json:"trial_days_left,omitempty" path:"trial_days_left,omitempty" url:"trial_days_left,omitempty"` 139 TrialUntil *time.Time `json:"trial_until,omitempty" path:"trial_until,omitempty" url:"trial_until,omitempty"` 140 UpdatedAt *time.Time `json:"updated_at,omitempty" path:"updated_at,omitempty" url:"updated_at,omitempty"` 141 UseProvidedModifiedAt *bool `json:"use_provided_modified_at,omitempty" path:"use_provided_modified_at,omitempty" url:"use_provided_modified_at,omitempty"` 142 User User `json:"user,omitempty" path:"user,omitempty" url:"user,omitempty"` 143 UserLockout *bool `json:"user_lockout,omitempty" path:"user_lockout,omitempty" url:"user_lockout,omitempty"` 144 UserLockoutLockPeriod int64 `json:"user_lockout_lock_period,omitempty" path:"user_lockout_lock_period,omitempty" url:"user_lockout_lock_period,omitempty"` 145 UserLockoutTries int64 `json:"user_lockout_tries,omitempty" path:"user_lockout_tries,omitempty" url:"user_lockout_tries,omitempty"` 146 UserLockoutWithin int64 `json:"user_lockout_within,omitempty" path:"user_lockout_within,omitempty" url:"user_lockout_within,omitempty"` 147 UserRequestsEnabled *bool `json:"user_requests_enabled,omitempty" path:"user_requests_enabled,omitempty" url:"user_requests_enabled,omitempty"` 148 UserRequestsNotifyAdmins *bool `json:"user_requests_notify_admins,omitempty" path:"user_requests_notify_admins,omitempty" url:"user_requests_notify_admins,omitempty"` 149 WelcomeCustomText string `json:"welcome_custom_text,omitempty" path:"welcome_custom_text,omitempty" url:"welcome_custom_text,omitempty"` 150 WelcomeEmailCc string `json:"welcome_email_cc,omitempty" path:"welcome_email_cc,omitempty" url:"welcome_email_cc,omitempty"` 151 WelcomeEmailSubject string `json:"welcome_email_subject,omitempty" path:"welcome_email_subject,omitempty" url:"welcome_email_subject,omitempty"` 152 WelcomeEmailEnabled *bool `json:"welcome_email_enabled,omitempty" path:"welcome_email_enabled,omitempty" url:"welcome_email_enabled,omitempty"` 153 WelcomeScreen string `json:"welcome_screen,omitempty" path:"welcome_screen,omitempty" url:"welcome_screen,omitempty"` 154 WindowsModeFtp *bool `json:"windows_mode_ftp,omitempty" path:"windows_mode_ftp,omitempty" url:"windows_mode_ftp,omitempty"` 155 DisableUsersFromInactivityPeriodDays int64 `json:"disable_users_from_inactivity_period_days,omitempty" path:"disable_users_from_inactivity_period_days,omitempty" url:"disable_users_from_inactivity_period_days,omitempty"` 156 GroupAdminsCanSetUserPassword *bool `json:"group_admins_can_set_user_password,omitempty" path:"group_admins_can_set_user_password,omitempty" url:"group_admins_can_set_user_password,omitempty"` 157 } 158 159 // Identifier no path or id 160 161 type SiteCollection []Site 162 163 type SiteUpdateParams struct { 164 Name string `url:"name,omitempty" required:"false" json:"name,omitempty" path:"name"` 165 Subdomain string `url:"subdomain,omitempty" required:"false" json:"subdomain,omitempty" path:"subdomain"` 166 Domain string `url:"domain,omitempty" required:"false" json:"domain,omitempty" path:"domain"` 167 DomainHstsHeader *bool `url:"domain_hsts_header,omitempty" required:"false" json:"domain_hsts_header,omitempty" path:"domain_hsts_header"` 168 DomainLetsencryptChain string `url:"domain_letsencrypt_chain,omitempty" required:"false" json:"domain_letsencrypt_chain,omitempty" path:"domain_letsencrypt_chain"` 169 Email string `url:"email,omitempty" required:"false" json:"email,omitempty" path:"email"` 170 ReplyToEmail string `url:"reply_to_email,omitempty" required:"false" json:"reply_to_email,omitempty" path:"reply_to_email"` 171 AllowBundleNames *bool `url:"allow_bundle_names,omitempty" required:"false" json:"allow_bundle_names,omitempty" path:"allow_bundle_names"` 172 BundleExpiration int64 `url:"bundle_expiration,omitempty" required:"false" json:"bundle_expiration,omitempty" path:"bundle_expiration"` 173 WelcomeEmailEnabled *bool `url:"welcome_email_enabled,omitempty" required:"false" json:"welcome_email_enabled,omitempty" path:"welcome_email_enabled"` 174 AskAboutOverwrites *bool `url:"ask_about_overwrites,omitempty" required:"false" json:"ask_about_overwrites,omitempty" path:"ask_about_overwrites"` 175 ShowRequestAccessLink *bool `url:"show_request_access_link,omitempty" required:"false" json:"show_request_access_link,omitempty" path:"show_request_access_link"` 176 WelcomeEmailCc string `url:"welcome_email_cc,omitempty" required:"false" json:"welcome_email_cc,omitempty" path:"welcome_email_cc"` 177 WelcomeEmailSubject string `url:"welcome_email_subject,omitempty" required:"false" json:"welcome_email_subject,omitempty" path:"welcome_email_subject"` 178 WelcomeCustomText string `url:"welcome_custom_text,omitempty" required:"false" json:"welcome_custom_text,omitempty" path:"welcome_custom_text"` 179 Language string `url:"language,omitempty" required:"false" json:"language,omitempty" path:"language"` 180 WindowsModeFtp *bool `url:"windows_mode_ftp,omitempty" required:"false" json:"windows_mode_ftp,omitempty" path:"windows_mode_ftp"` 181 DefaultTimeZone string `url:"default_time_zone,omitempty" required:"false" json:"default_time_zone,omitempty" path:"default_time_zone"` 182 DesktopApp *bool `url:"desktop_app,omitempty" required:"false" json:"desktop_app,omitempty" path:"desktop_app"` 183 DesktopAppSessionIpPinning *bool `url:"desktop_app_session_ip_pinning,omitempty" required:"false" json:"desktop_app_session_ip_pinning,omitempty" path:"desktop_app_session_ip_pinning"` 184 DesktopAppSessionLifetime int64 `url:"desktop_app_session_lifetime,omitempty" required:"false" json:"desktop_app_session_lifetime,omitempty" path:"desktop_app_session_lifetime"` 185 MobileApp *bool `url:"mobile_app,omitempty" required:"false" json:"mobile_app,omitempty" path:"mobile_app"` 186 MobileAppSessionIpPinning *bool `url:"mobile_app_session_ip_pinning,omitempty" required:"false" json:"mobile_app_session_ip_pinning,omitempty" path:"mobile_app_session_ip_pinning"` 187 MobileAppSessionLifetime int64 `url:"mobile_app_session_lifetime,omitempty" required:"false" json:"mobile_app_session_lifetime,omitempty" path:"mobile_app_session_lifetime"` 188 FolderPermissionsGroupsOnly *bool `url:"folder_permissions_groups_only,omitempty" required:"false" json:"folder_permissions_groups_only,omitempty" path:"folder_permissions_groups_only"` 189 WelcomeScreen string `url:"welcome_screen,omitempty" required:"false" json:"welcome_screen,omitempty" path:"welcome_screen"` 190 OfficeIntegrationAvailable *bool `url:"office_integration_available,omitempty" required:"false" json:"office_integration_available,omitempty" path:"office_integration_available"` 191 OfficeIntegrationType string `url:"office_integration_type,omitempty" required:"false" json:"office_integration_type,omitempty" path:"office_integration_type"` 192 PinAllRemoteServersToSiteRegion *bool `url:"pin_all_remote_servers_to_site_region,omitempty" required:"false" json:"pin_all_remote_servers_to_site_region,omitempty" path:"pin_all_remote_servers_to_site_region"` 193 MotdText string `url:"motd_text,omitempty" required:"false" json:"motd_text,omitempty" path:"motd_text"` 194 MotdUseForFtp *bool `url:"motd_use_for_ftp,omitempty" required:"false" json:"motd_use_for_ftp,omitempty" path:"motd_use_for_ftp"` 195 MotdUseForSftp *bool `url:"motd_use_for_sftp,omitempty" required:"false" json:"motd_use_for_sftp,omitempty" path:"motd_use_for_sftp"` 196 SessionExpiry string `url:"session_expiry,omitempty" required:"false" json:"session_expiry,omitempty" path:"session_expiry"` 197 SslRequired *bool `url:"ssl_required,omitempty" required:"false" json:"ssl_required,omitempty" path:"ssl_required"` 198 TlsDisabled *bool `url:"tls_disabled,omitempty" required:"false" json:"tls_disabled,omitempty" path:"tls_disabled"` 199 SftpInsecureCiphers *bool `url:"sftp_insecure_ciphers,omitempty" required:"false" json:"sftp_insecure_ciphers,omitempty" path:"sftp_insecure_ciphers"` 200 DisableFilesCertificateGeneration *bool `url:"disable_files_certificate_generation,omitempty" required:"false" json:"disable_files_certificate_generation,omitempty" path:"disable_files_certificate_generation"` 201 UserLockout *bool `url:"user_lockout,omitempty" required:"false" json:"user_lockout,omitempty" path:"user_lockout"` 202 UserLockoutTries int64 `url:"user_lockout_tries,omitempty" required:"false" json:"user_lockout_tries,omitempty" path:"user_lockout_tries"` 203 UserLockoutWithin int64 `url:"user_lockout_within,omitempty" required:"false" json:"user_lockout_within,omitempty" path:"user_lockout_within"` 204 UserLockoutLockPeriod int64 `url:"user_lockout_lock_period,omitempty" required:"false" json:"user_lockout_lock_period,omitempty" path:"user_lockout_lock_period"` 205 IncludePasswordInWelcomeEmail *bool `url:"include_password_in_welcome_email,omitempty" required:"false" json:"include_password_in_welcome_email,omitempty" path:"include_password_in_welcome_email"` 206 AllowedCountries string `url:"allowed_countries,omitempty" required:"false" json:"allowed_countries,omitempty" path:"allowed_countries"` 207 AllowedIps string `url:"allowed_ips,omitempty" required:"false" json:"allowed_ips,omitempty" path:"allowed_ips"` 208 DisallowedCountries string `url:"disallowed_countries,omitempty" required:"false" json:"disallowed_countries,omitempty" path:"disallowed_countries"` 209 DaysToRetainBackups int64 `url:"days_to_retain_backups,omitempty" required:"false" json:"days_to_retain_backups,omitempty" path:"days_to_retain_backups"` 210 MaxPriorPasswords int64 `url:"max_prior_passwords,omitempty" required:"false" json:"max_prior_passwords,omitempty" path:"max_prior_passwords"` 211 PasswordValidityDays int64 `url:"password_validity_days,omitempty" required:"false" json:"password_validity_days,omitempty" path:"password_validity_days"` 212 PasswordMinLength int64 `url:"password_min_length,omitempty" required:"false" json:"password_min_length,omitempty" path:"password_min_length"` 213 PasswordRequireLetter *bool `url:"password_require_letter,omitempty" required:"false" json:"password_require_letter,omitempty" path:"password_require_letter"` 214 PasswordRequireMixed *bool `url:"password_require_mixed,omitempty" required:"false" json:"password_require_mixed,omitempty" path:"password_require_mixed"` 215 PasswordRequireSpecial *bool `url:"password_require_special,omitempty" required:"false" json:"password_require_special,omitempty" path:"password_require_special"` 216 PasswordRequireNumber *bool `url:"password_require_number,omitempty" required:"false" json:"password_require_number,omitempty" path:"password_require_number"` 217 PasswordRequireUnbreached *bool `url:"password_require_unbreached,omitempty" required:"false" json:"password_require_unbreached,omitempty" path:"password_require_unbreached"` 218 RequireLogoutFromBundlesAndInboxes *bool `url:"require_logout_from_bundles_and_inboxes,omitempty" required:"false" json:"require_logout_from_bundles_and_inboxes,omitempty" path:"require_logout_from_bundles_and_inboxes"` 219 SftpUserRootEnabled *bool `url:"sftp_user_root_enabled,omitempty" required:"false" json:"sftp_user_root_enabled,omitempty" path:"sftp_user_root_enabled"` 220 DisablePasswordReset *bool `url:"disable_password_reset,omitempty" required:"false" json:"disable_password_reset,omitempty" path:"disable_password_reset"` 221 ImmutableFiles *bool `url:"immutable_files,omitempty" required:"false" json:"immutable_files,omitempty" path:"immutable_files"` 222 SessionPinnedByIp *bool `url:"session_pinned_by_ip,omitempty" required:"false" json:"session_pinned_by_ip,omitempty" path:"session_pinned_by_ip"` 223 BundlePasswordRequired *bool `url:"bundle_password_required,omitempty" required:"false" json:"bundle_password_required,omitempty" path:"bundle_password_required"` 224 BundleRequireRegistration *bool `url:"bundle_require_registration,omitempty" required:"false" json:"bundle_require_registration,omitempty" path:"bundle_require_registration"` 225 BundleRequireShareRecipient *bool `url:"bundle_require_share_recipient,omitempty" required:"false" json:"bundle_require_share_recipient,omitempty" path:"bundle_require_share_recipient"` 226 BundleRegistrationNotifications string `url:"bundle_registration_notifications,omitempty" required:"false" json:"bundle_registration_notifications,omitempty" path:"bundle_registration_notifications"` 227 BundleActivityNotifications string `url:"bundle_activity_notifications,omitempty" required:"false" json:"bundle_activity_notifications,omitempty" path:"bundle_activity_notifications"` 228 BundleUploadReceiptNotifications string `url:"bundle_upload_receipt_notifications,omitempty" required:"false" json:"bundle_upload_receipt_notifications,omitempty" path:"bundle_upload_receipt_notifications"` 229 PasswordRequirementsApplyToBundles *bool `url:"password_requirements_apply_to_bundles,omitempty" required:"false" json:"password_requirements_apply_to_bundles,omitempty" path:"password_requirements_apply_to_bundles"` 230 PreventRootPermissionsForNonSiteAdmins *bool `url:"prevent_root_permissions_for_non_site_admins,omitempty" required:"false" json:"prevent_root_permissions_for_non_site_admins,omitempty" path:"prevent_root_permissions_for_non_site_admins"` 231 OptOutGlobal *bool `url:"opt_out_global,omitempty" required:"false" json:"opt_out_global,omitempty" path:"opt_out_global"` 232 UseProvidedModifiedAt *bool `url:"use_provided_modified_at,omitempty" required:"false" json:"use_provided_modified_at,omitempty" path:"use_provided_modified_at"` 233 CustomNamespace *bool `url:"custom_namespace,omitempty" required:"false" json:"custom_namespace,omitempty" path:"custom_namespace"` 234 DisableUsersFromInactivityPeriodDays int64 `url:"disable_users_from_inactivity_period_days,omitempty" required:"false" json:"disable_users_from_inactivity_period_days,omitempty" path:"disable_users_from_inactivity_period_days"` 235 NonSsoGroupsAllowed *bool `url:"non_sso_groups_allowed,omitempty" required:"false" json:"non_sso_groups_allowed,omitempty" path:"non_sso_groups_allowed"` 236 NonSsoUsersAllowed *bool `url:"non_sso_users_allowed,omitempty" required:"false" json:"non_sso_users_allowed,omitempty" path:"non_sso_users_allowed"` 237 SharingEnabled *bool `url:"sharing_enabled,omitempty" required:"false" json:"sharing_enabled,omitempty" path:"sharing_enabled"` 238 UserRequestsEnabled *bool `url:"user_requests_enabled,omitempty" required:"false" json:"user_requests_enabled,omitempty" path:"user_requests_enabled"` 239 UserRequestsNotifyAdmins *bool `url:"user_requests_notify_admins,omitempty" required:"false" json:"user_requests_notify_admins,omitempty" path:"user_requests_notify_admins"` 240 FtpEnabled *bool `url:"ftp_enabled,omitempty" required:"false" json:"ftp_enabled,omitempty" path:"ftp_enabled"` 241 SftpEnabled *bool `url:"sftp_enabled,omitempty" required:"false" json:"sftp_enabled,omitempty" path:"sftp_enabled"` 242 SftpHostKeyType string `url:"sftp_host_key_type,omitempty" required:"false" json:"sftp_host_key_type,omitempty" path:"sftp_host_key_type"` 243 ActiveSftpHostKeyId int64 `url:"active_sftp_host_key_id,omitempty" required:"false" json:"active_sftp_host_key_id,omitempty" path:"active_sftp_host_key_id"` 244 BundleWatermarkValue map[string]interface{} `url:"bundle_watermark_value,omitempty" required:"false" json:"bundle_watermark_value,omitempty" path:"bundle_watermark_value"` 245 GroupAdminsCanSetUserPassword *bool `url:"group_admins_can_set_user_password,omitempty" required:"false" json:"group_admins_can_set_user_password,omitempty" path:"group_admins_can_set_user_password"` 246 Allowed2faMethodSms *bool `url:"allowed_2fa_method_sms,omitempty" required:"false" json:"allowed_2fa_method_sms,omitempty" path:"allowed_2fa_method_sms"` 247 Allowed2faMethodU2f *bool `url:"allowed_2fa_method_u2f,omitempty" required:"false" json:"allowed_2fa_method_u2f,omitempty" path:"allowed_2fa_method_u2f"` 248 Allowed2faMethodTotp *bool `url:"allowed_2fa_method_totp,omitempty" required:"false" json:"allowed_2fa_method_totp,omitempty" path:"allowed_2fa_method_totp"` 249 Allowed2faMethodWebauthn *bool `url:"allowed_2fa_method_webauthn,omitempty" required:"false" json:"allowed_2fa_method_webauthn,omitempty" path:"allowed_2fa_method_webauthn"` 250 Allowed2faMethodYubi *bool `url:"allowed_2fa_method_yubi,omitempty" required:"false" json:"allowed_2fa_method_yubi,omitempty" path:"allowed_2fa_method_yubi"` 251 Allowed2faMethodBypassForFtpSftpDav *bool `url:"allowed_2fa_method_bypass_for_ftp_sftp_dav,omitempty" required:"false" json:"allowed_2fa_method_bypass_for_ftp_sftp_dav,omitempty" path:"allowed_2fa_method_bypass_for_ftp_sftp_dav"` 252 Require2fa *bool `url:"require_2fa,omitempty" required:"false" json:"require_2fa,omitempty" path:"require_2fa"` 253 Require2faUserType string `url:"require_2fa_user_type,omitempty" required:"false" json:"require_2fa_user_type,omitempty" path:"require_2fa_user_type"` 254 Color2Top string `url:"color2_top,omitempty" required:"false" json:"color2_top,omitempty" path:"color2_top"` 255 Color2Left string `url:"color2_left,omitempty" required:"false" json:"color2_left,omitempty" path:"color2_left"` 256 Color2Link string `url:"color2_link,omitempty" required:"false" json:"color2_link,omitempty" path:"color2_link"` 257 Color2Text string `url:"color2_text,omitempty" required:"false" json:"color2_text,omitempty" path:"color2_text"` 258 Color2TopText string `url:"color2_top_text,omitempty" required:"false" json:"color2_top_text,omitempty" path:"color2_top_text"` 259 SiteHeader string `url:"site_header,omitempty" required:"false" json:"site_header,omitempty" path:"site_header"` 260 SiteFooter string `url:"site_footer,omitempty" required:"false" json:"site_footer,omitempty" path:"site_footer"` 261 LoginHelpText string `url:"login_help_text,omitempty" required:"false" json:"login_help_text,omitempty" path:"login_help_text"` 262 SmtpAddress string `url:"smtp_address,omitempty" required:"false" json:"smtp_address,omitempty" path:"smtp_address"` 263 SmtpAuthentication string `url:"smtp_authentication,omitempty" required:"false" json:"smtp_authentication,omitempty" path:"smtp_authentication"` 264 SmtpFrom string `url:"smtp_from,omitempty" required:"false" json:"smtp_from,omitempty" path:"smtp_from"` 265 SmtpUsername string `url:"smtp_username,omitempty" required:"false" json:"smtp_username,omitempty" path:"smtp_username"` 266 SmtpPort int64 `url:"smtp_port,omitempty" required:"false" json:"smtp_port,omitempty" path:"smtp_port"` 267 LdapEnabled *bool `url:"ldap_enabled,omitempty" required:"false" json:"ldap_enabled,omitempty" path:"ldap_enabled"` 268 LdapType string `url:"ldap_type,omitempty" required:"false" json:"ldap_type,omitempty" path:"ldap_type"` 269 LdapHost string `url:"ldap_host,omitempty" required:"false" json:"ldap_host,omitempty" path:"ldap_host"` 270 LdapHost2 string `url:"ldap_host_2,omitempty" required:"false" json:"ldap_host_2,omitempty" path:"ldap_host_2"` 271 LdapHost3 string `url:"ldap_host_3,omitempty" required:"false" json:"ldap_host_3,omitempty" path:"ldap_host_3"` 272 LdapPort int64 `url:"ldap_port,omitempty" required:"false" json:"ldap_port,omitempty" path:"ldap_port"` 273 LdapSecure *bool `url:"ldap_secure,omitempty" required:"false" json:"ldap_secure,omitempty" path:"ldap_secure"` 274 LdapUsername string `url:"ldap_username,omitempty" required:"false" json:"ldap_username,omitempty" path:"ldap_username"` 275 LdapUsernameField string `url:"ldap_username_field,omitempty" required:"false" json:"ldap_username_field,omitempty" path:"ldap_username_field"` 276 LdapDomain string `url:"ldap_domain,omitempty" required:"false" json:"ldap_domain,omitempty" path:"ldap_domain"` 277 LdapUserAction string `url:"ldap_user_action,omitempty" required:"false" json:"ldap_user_action,omitempty" path:"ldap_user_action"` 278 LdapGroupAction string `url:"ldap_group_action,omitempty" required:"false" json:"ldap_group_action,omitempty" path:"ldap_group_action"` 279 LdapUserIncludeGroups string `url:"ldap_user_include_groups,omitempty" required:"false" json:"ldap_user_include_groups,omitempty" path:"ldap_user_include_groups"` 280 LdapGroupExclusion string `url:"ldap_group_exclusion,omitempty" required:"false" json:"ldap_group_exclusion,omitempty" path:"ldap_group_exclusion"` 281 LdapGroupInclusion string `url:"ldap_group_inclusion,omitempty" required:"false" json:"ldap_group_inclusion,omitempty" path:"ldap_group_inclusion"` 282 LdapBaseDn string `url:"ldap_base_dn,omitempty" required:"false" json:"ldap_base_dn,omitempty" path:"ldap_base_dn"` 283 UploadsViaEmailAuthentication *bool `url:"uploads_via_email_authentication,omitempty" required:"false" json:"uploads_via_email_authentication,omitempty" path:"uploads_via_email_authentication"` 284 Icon16File io.Writer `url:"icon16_file,omitempty" required:"false" json:"icon16_file,omitempty" path:"icon16_file"` 285 Icon16Delete *bool `url:"icon16_delete,omitempty" required:"false" json:"icon16_delete,omitempty" path:"icon16_delete"` 286 Icon32File io.Writer `url:"icon32_file,omitempty" required:"false" json:"icon32_file,omitempty" path:"icon32_file"` 287 Icon32Delete *bool `url:"icon32_delete,omitempty" required:"false" json:"icon32_delete,omitempty" path:"icon32_delete"` 288 Icon48File io.Writer `url:"icon48_file,omitempty" required:"false" json:"icon48_file,omitempty" path:"icon48_file"` 289 Icon48Delete *bool `url:"icon48_delete,omitempty" required:"false" json:"icon48_delete,omitempty" path:"icon48_delete"` 290 Icon128File io.Writer `url:"icon128_file,omitempty" required:"false" json:"icon128_file,omitempty" path:"icon128_file"` 291 Icon128Delete *bool `url:"icon128_delete,omitempty" required:"false" json:"icon128_delete,omitempty" path:"icon128_delete"` 292 LogoFile io.Writer `url:"logo_file,omitempty" required:"false" json:"logo_file,omitempty" path:"logo_file"` 293 LogoDelete *bool `url:"logo_delete,omitempty" required:"false" json:"logo_delete,omitempty" path:"logo_delete"` 294 BundleWatermarkAttachmentFile io.Writer `url:"bundle_watermark_attachment_file,omitempty" required:"false" json:"bundle_watermark_attachment_file,omitempty" path:"bundle_watermark_attachment_file"` 295 BundleWatermarkAttachmentDelete *bool `url:"bundle_watermark_attachment_delete,omitempty" required:"false" json:"bundle_watermark_attachment_delete,omitempty" path:"bundle_watermark_attachment_delete"` 296 Disable2faWithDelay *bool `url:"disable_2fa_with_delay,omitempty" required:"false" json:"disable_2fa_with_delay,omitempty" path:"disable_2fa_with_delay"` 297 LdapPasswordChange string `url:"ldap_password_change,omitempty" required:"false" json:"ldap_password_change,omitempty" path:"ldap_password_change"` 298 LdapPasswordChangeConfirmation string `url:"ldap_password_change_confirmation,omitempty" required:"false" json:"ldap_password_change_confirmation,omitempty" path:"ldap_password_change_confirmation"` 299 SmtpPassword string `url:"smtp_password,omitempty" required:"false" json:"smtp_password,omitempty" path:"smtp_password"` 300 SessionExpiryMinutes int64 `url:"session_expiry_minutes,omitempty" required:"false" json:"session_expiry_minutes,omitempty" path:"session_expiry_minutes"` 301 } 302 303 func (s *Site) UnmarshalJSON(data []byte) error { 304 type site Site 305 var v site 306 if err := json.Unmarshal(data, &v); err != nil { 307 return lib.ErrorWithOriginalResponse{}.ProcessError(data, err, map[string]interface{}{}) 308 } 309 310 *s = Site(v) 311 return nil 312 } 313 314 func (s *SiteCollection) UnmarshalJSON(data []byte) error { 315 type sites SiteCollection 316 var v sites 317 if err := json.Unmarshal(data, &v); err != nil { 318 return lib.ErrorWithOriginalResponse{}.ProcessError(data, err, []map[string]interface{}{}) 319 } 320 321 *s = SiteCollection(v) 322 return nil 323 } 324 325 func (s *SiteCollection) ToSlice() *[]interface{} { 326 ret := make([]interface{}, len(*s)) 327 for i, v := range *s { 328 ret[i] = v 329 } 330 331 return &ret 332 }