TypeAuthenticationType`json:"type"`// Required. The login type being used. One of: ["m.login.password", "m.login.token"]
IdentifierUserIdentifier`json:"identifier"`// Identification information for the user.
Passwordstring`json:"password,omitempty"`// Required when type is m.login.password. The user's password.
Tokenstring`json:"token,omitempty"`// Required when type is m.login.token. Part of Token-based login.
DeviceIDstring`json:"device_id,omitempty"`// ID of the client device. If this does not correspond to a known client device, a new device will be created. The server will auto-generate a device_id if this is not specified.
InitialDeviceDisplayNamestring`json:"initial_device_display_name,omitempty"`// A display name to assign to the newly-created device. Ignored if device_id corresponds to a known device.
}
// UserIdentifier represents user identifier object
TypeIdentifierType`json:"type"`// Required. The type of identification. See Identifier types for supported values and additional property descriptions.
Userstring`json:"user,omitempty"`// The fully qualified user ID or just local part of the user ID, to log in.
Mediumstring`json:"medium,omitempty"`// When logging in using a third party identifier, the medium of the identifier. Must be 'email'.
Addressstring`json:"address,omitempty"`// Third party identifier for the user.
AuthAuthenticationData`json:"auth"`// Additional authentication information for the user-interactive authentication API. Note that this information is not used to define how the registered user should be authenticated, but is instead used to authenticate the register call itself.
BindEmailbool`json:"bind_email"`// If true, the server binds the email used for authentication to the Matrix ID with the identity server.
BindMsisdnbool`json:"bind_msisdn"`// If true, the server binds the phone number used for authentication to the Matrix ID with the identity server.
Usernamestring`json:"username"`// The basis for the localpart of the desired Matrix ID. If omitted, the homeserver MUST generate a Matrix ID local part.
Passwordstring`json:"password"`// The desired password for the account.
DeviceIDstring`json:"device_id"`// ID of the client device. If this does not correspond to a known client device, a new device will be created. The server will auto-generate a device_id if this is not specified.
InitialDeviceDisplayNamestring`json:"initial_device_display_name"`// A display name to assign to the newly-created device. Ignored if device_id corresponds to a known device.
InhibitLoginbool`json:"inhibit_login"`// If true, an access_token and device_id should not be returned from this call, therefore preventing an automatic login. Defaults to false.