Files
zeekay 1df3ddf6bd Regenerate against the document the deployment answers for
The projection these were generated from predated the compute migration, so
they described /v1/visor — which the API serves at zero paths now.

No /v1/visor path survives here.
2026-09-05 18:55:38 -07:00

277 lines
14 KiB
Swift

//
// IamOrganization.swift
//
// Generated by openapi-generator
// https://openapi-generator.tech
//
import Foundation
public struct IamOrganization: Sendable, Codable, ParameterConvertible, Hashable {
public var accountItems: [IamAccountItem]?
public var accountMenu: String?
/** How the organization appears across Hanzo — the square mark beside its name — as an image or as one emoji, never both. It is the pair a person carries (User.Avatar) under the same names, resolved the same way, so a screen draws a subject without asking which kind of subject it has. Both halves live on the row: a mark that appears everywhere cannot be kept on one device. Written through schema.MarkOf; Logo and LogoDark above are a different thing, the wordmark a login screen draws. */
public var avatar: String?
public var balanceCredit: Double?
public var balanceCurrency: String?
public var countryCodes: [String]?
public var createdAt: Date?
public var createdTime: String?
public var dcrPolicy: String?
public var defaultApplication: String?
public var defaultAvatar: String?
public var defaultPassword: String?
public var deleted: Bool?
public var disableSignin: Bool?
public var displayName: String?
public var emoji: String?
public var enableSoftDeletion: Bool?
public var enableTour: Bool?
public var failedSigninFrozenTime: Int64?
/** Per-organization signin throttle. Zero means \"inherit the application default\"; a non-zero value overrides it. Safe bounds are clamped by the resource service before persistence. */
public var failedSigninLimit: Int64?
public var favicon: String?
/** Founder is the stable storage id of the identity that provisioned this org (self-service onboarding). It is the resume token that makes provisioning converge on a backend where each write autocommits independently (no transaction rollback): after a partial failure that created the org but did not move the founder in, a retry recognises the org as the founder's own and completes it, instead of refusing it as \"already taken\". It also fences the org to ONE tenant — a different identity can never complete or join it. */
public var founder: String?
public var hasPrivilegeConsent: Bool?
public var id: String?
public var initScore: Int64?
public var ipRestriction: String?
public var ipWhitelist: String?
public var isPersonal: Bool?
public var isProfilePublic: Bool?
public var kerberosKdcHost: String?
public var kerberosKeytab: String?
public var kerberosRealm: String?
public var kerberosServiceName: String?
public var languages: [String]?
public var ldapAttributes: [String]?
public var logo: String?
public var logoDark: String?
public var masterPassword: String?
public var masterVerificationCode: String?
public var mfaItems: [IamMfaItem]?
public var mfaRememberInHours: Int64?
public var name: String?
public var navItems: [String]?
/** Balance fields are read-only mirrors; authoritative balances live in Commerce (billing.hanzo.ai). Carried for field-complete v1 parity. */
public var orgBalance: Double?
public var owner: String?
public var passwordExpireDays: Int64?
public var passwordObfuscatorKey: String?
public var passwordObfuscatorType: String?
public var passwordOptions: [String]?
public var passwordSalt: String?
public var passwordType: String?
public var tags: [String]?
public var themeData: IamThemeData?
public var updatedAt: Date?
public var useEmailAsUsername: Bool?
public var usePermanentAvatar: Bool?
public var userBalance: Double?
public var userNavItems: [String]?
public var userTypes: [String]?
public var websiteUrl: String?
public var widgetItems: [String]?
public init(accountItems: [IamAccountItem]? = nil, accountMenu: String? = nil, avatar: String? = nil, balanceCredit: Double? = nil, balanceCurrency: String? = nil, countryCodes: [String]? = nil, createdAt: Date? = nil, createdTime: String? = nil, dcrPolicy: String? = nil, defaultApplication: String? = nil, defaultAvatar: String? = nil, defaultPassword: String? = nil, deleted: Bool? = nil, disableSignin: Bool? = nil, displayName: String? = nil, emoji: String? = nil, enableSoftDeletion: Bool? = nil, enableTour: Bool? = nil, failedSigninFrozenTime: Int64? = nil, failedSigninLimit: Int64? = nil, favicon: String? = nil, founder: String? = nil, hasPrivilegeConsent: Bool? = nil, id: String? = nil, initScore: Int64? = nil, ipRestriction: String? = nil, ipWhitelist: String? = nil, isPersonal: Bool? = nil, isProfilePublic: Bool? = nil, kerberosKdcHost: String? = nil, kerberosKeytab: String? = nil, kerberosRealm: String? = nil, kerberosServiceName: String? = nil, languages: [String]? = nil, ldapAttributes: [String]? = nil, logo: String? = nil, logoDark: String? = nil, masterPassword: String? = nil, masterVerificationCode: String? = nil, mfaItems: [IamMfaItem]? = nil, mfaRememberInHours: Int64? = nil, name: String? = nil, navItems: [String]? = nil, orgBalance: Double? = nil, owner: String? = nil, passwordExpireDays: Int64? = nil, passwordObfuscatorKey: String? = nil, passwordObfuscatorType: String? = nil, passwordOptions: [String]? = nil, passwordSalt: String? = nil, passwordType: String? = nil, tags: [String]? = nil, themeData: IamThemeData? = nil, updatedAt: Date? = nil, useEmailAsUsername: Bool? = nil, usePermanentAvatar: Bool? = nil, userBalance: Double? = nil, userNavItems: [String]? = nil, userTypes: [String]? = nil, websiteUrl: String? = nil, widgetItems: [String]? = nil) {
self.accountItems = accountItems
self.accountMenu = accountMenu
self.avatar = avatar
self.balanceCredit = balanceCredit
self.balanceCurrency = balanceCurrency
self.countryCodes = countryCodes
self.createdAt = createdAt
self.createdTime = createdTime
self.dcrPolicy = dcrPolicy
self.defaultApplication = defaultApplication
self.defaultAvatar = defaultAvatar
self.defaultPassword = defaultPassword
self.deleted = deleted
self.disableSignin = disableSignin
self.displayName = displayName
self.emoji = emoji
self.enableSoftDeletion = enableSoftDeletion
self.enableTour = enableTour
self.failedSigninFrozenTime = failedSigninFrozenTime
self.failedSigninLimit = failedSigninLimit
self.favicon = favicon
self.founder = founder
self.hasPrivilegeConsent = hasPrivilegeConsent
self.id = id
self.initScore = initScore
self.ipRestriction = ipRestriction
self.ipWhitelist = ipWhitelist
self.isPersonal = isPersonal
self.isProfilePublic = isProfilePublic
self.kerberosKdcHost = kerberosKdcHost
self.kerberosKeytab = kerberosKeytab
self.kerberosRealm = kerberosRealm
self.kerberosServiceName = kerberosServiceName
self.languages = languages
self.ldapAttributes = ldapAttributes
self.logo = logo
self.logoDark = logoDark
self.masterPassword = masterPassword
self.masterVerificationCode = masterVerificationCode
self.mfaItems = mfaItems
self.mfaRememberInHours = mfaRememberInHours
self.name = name
self.navItems = navItems
self.orgBalance = orgBalance
self.owner = owner
self.passwordExpireDays = passwordExpireDays
self.passwordObfuscatorKey = passwordObfuscatorKey
self.passwordObfuscatorType = passwordObfuscatorType
self.passwordOptions = passwordOptions
self.passwordSalt = passwordSalt
self.passwordType = passwordType
self.tags = tags
self.themeData = themeData
self.updatedAt = updatedAt
self.useEmailAsUsername = useEmailAsUsername
self.usePermanentAvatar = usePermanentAvatar
self.userBalance = userBalance
self.userNavItems = userNavItems
self.userTypes = userTypes
self.websiteUrl = websiteUrl
self.widgetItems = widgetItems
}
public enum CodingKeys: String, CodingKey, CaseIterable {
case accountItems
case accountMenu
case avatar
case balanceCredit
case balanceCurrency
case countryCodes
case createdAt
case createdTime
case dcrPolicy
case defaultApplication
case defaultAvatar
case defaultPassword
case deleted
case disableSignin
case displayName
case emoji
case enableSoftDeletion
case enableTour
case failedSigninFrozenTime
case failedSigninLimit
case favicon
case founder
case hasPrivilegeConsent
case id
case initScore
case ipRestriction
case ipWhitelist
case isPersonal
case isProfilePublic
case kerberosKdcHost
case kerberosKeytab
case kerberosRealm
case kerberosServiceName
case languages
case ldapAttributes
case logo
case logoDark
case masterPassword
case masterVerificationCode
case mfaItems
case mfaRememberInHours
case name
case navItems
case orgBalance
case owner
case passwordExpireDays
case passwordObfuscatorKey
case passwordObfuscatorType
case passwordOptions
case passwordSalt
case passwordType
case tags
case themeData
case updatedAt
case useEmailAsUsername
case usePermanentAvatar
case userBalance
case userNavItems
case userTypes
case websiteUrl
case widgetItems
}
// Encodable protocol methods
public func encode(to encoder: Encoder) throws {
var container = encoder.container(keyedBy: CodingKeys.self)
try container.encodeIfPresent(accountItems, forKey: .accountItems)
try container.encodeIfPresent(accountMenu, forKey: .accountMenu)
try container.encodeIfPresent(avatar, forKey: .avatar)
try container.encodeIfPresent(balanceCredit, forKey: .balanceCredit)
try container.encodeIfPresent(balanceCurrency, forKey: .balanceCurrency)
try container.encodeIfPresent(countryCodes, forKey: .countryCodes)
try container.encodeIfPresent(createdAt, forKey: .createdAt)
try container.encodeIfPresent(createdTime, forKey: .createdTime)
try container.encodeIfPresent(dcrPolicy, forKey: .dcrPolicy)
try container.encodeIfPresent(defaultApplication, forKey: .defaultApplication)
try container.encodeIfPresent(defaultAvatar, forKey: .defaultAvatar)
try container.encodeIfPresent(defaultPassword, forKey: .defaultPassword)
try container.encodeIfPresent(deleted, forKey: .deleted)
try container.encodeIfPresent(disableSignin, forKey: .disableSignin)
try container.encodeIfPresent(displayName, forKey: .displayName)
try container.encodeIfPresent(emoji, forKey: .emoji)
try container.encodeIfPresent(enableSoftDeletion, forKey: .enableSoftDeletion)
try container.encodeIfPresent(enableTour, forKey: .enableTour)
try container.encodeIfPresent(failedSigninFrozenTime, forKey: .failedSigninFrozenTime)
try container.encodeIfPresent(failedSigninLimit, forKey: .failedSigninLimit)
try container.encodeIfPresent(favicon, forKey: .favicon)
try container.encodeIfPresent(founder, forKey: .founder)
try container.encodeIfPresent(hasPrivilegeConsent, forKey: .hasPrivilegeConsent)
try container.encodeIfPresent(id, forKey: .id)
try container.encodeIfPresent(initScore, forKey: .initScore)
try container.encodeIfPresent(ipRestriction, forKey: .ipRestriction)
try container.encodeIfPresent(ipWhitelist, forKey: .ipWhitelist)
try container.encodeIfPresent(isPersonal, forKey: .isPersonal)
try container.encodeIfPresent(isProfilePublic, forKey: .isProfilePublic)
try container.encodeIfPresent(kerberosKdcHost, forKey: .kerberosKdcHost)
try container.encodeIfPresent(kerberosKeytab, forKey: .kerberosKeytab)
try container.encodeIfPresent(kerberosRealm, forKey: .kerberosRealm)
try container.encodeIfPresent(kerberosServiceName, forKey: .kerberosServiceName)
try container.encodeIfPresent(languages, forKey: .languages)
try container.encodeIfPresent(ldapAttributes, forKey: .ldapAttributes)
try container.encodeIfPresent(logo, forKey: .logo)
try container.encodeIfPresent(logoDark, forKey: .logoDark)
try container.encodeIfPresent(masterPassword, forKey: .masterPassword)
try container.encodeIfPresent(masterVerificationCode, forKey: .masterVerificationCode)
try container.encodeIfPresent(mfaItems, forKey: .mfaItems)
try container.encodeIfPresent(mfaRememberInHours, forKey: .mfaRememberInHours)
try container.encodeIfPresent(name, forKey: .name)
try container.encodeIfPresent(navItems, forKey: .navItems)
try container.encodeIfPresent(orgBalance, forKey: .orgBalance)
try container.encodeIfPresent(owner, forKey: .owner)
try container.encodeIfPresent(passwordExpireDays, forKey: .passwordExpireDays)
try container.encodeIfPresent(passwordObfuscatorKey, forKey: .passwordObfuscatorKey)
try container.encodeIfPresent(passwordObfuscatorType, forKey: .passwordObfuscatorType)
try container.encodeIfPresent(passwordOptions, forKey: .passwordOptions)
try container.encodeIfPresent(passwordSalt, forKey: .passwordSalt)
try container.encodeIfPresent(passwordType, forKey: .passwordType)
try container.encodeIfPresent(tags, forKey: .tags)
try container.encodeIfPresent(themeData, forKey: .themeData)
try container.encodeIfPresent(updatedAt, forKey: .updatedAt)
try container.encodeIfPresent(useEmailAsUsername, forKey: .useEmailAsUsername)
try container.encodeIfPresent(usePermanentAvatar, forKey: .usePermanentAvatar)
try container.encodeIfPresent(userBalance, forKey: .userBalance)
try container.encodeIfPresent(userNavItems, forKey: .userNavItems)
try container.encodeIfPresent(userTypes, forKey: .userTypes)
try container.encodeIfPresent(websiteUrl, forKey: .websiteUrl)
try container.encodeIfPresent(widgetItems, forKey: .widgetItems)
}
}
@available(iOS 13, tvOS 13, watchOS 6, macOS 10.15, *)
extension IamOrganization: Identifiable {}