def generate_mfa_token(self, user_id, expires_in=<NUM_LIT>, reusable=False):
self.clean_error()<EOL>try:<EOL><INDENT>url = self.get_url(Constants.GENERATE_MFA_TOKEN_URL, user_id)<EOL>data = {<EOL>'<STR_LIT>': expires_in,<EOL>'<STR_LIT>': reusable<EOL>}<EOL>response = self.execute_call('<STR_LIT>', url, json=data)<EOL>if response.status_code == <NUM_LIT>:<EOL><INDENT>json_data = response.json()<EOL>if json_data:<EOL><INDENT>return MFAToken(json_data)<EOL><DEDENT>else:<EOL><INDENT>self.error = self.extract_status_code_from_response(response)<EOL>self.error_description = self.extract_error_message_from_response(response)<EOL><DEDENT><DEDENT><DEDENT>except Exception as e:<EOL><INDENT>self.error = <NUM_LIT><EOL>self.error_description = e.args[<NUM_LIT:0>]<EOL><DEDENT>
Use to generate a temporary MFA token that can be used in place of other MFA tokens for a set time period.
For example, use this token for account recovery.

:param user_id: Id of the user
:type user_id: int

:param expires_in: Set the duration of the token in seconds. 
                  (default: 259200 seconds = 72h) 72 hours is the max value.
:type expires_in: int

:param reusable: Defines if the token reusable. (default: false) If set to true, token can be used for multiple apps, until it expires.
:type reusable: bool

Returns a mfa token
:return: return the object if success
:rtype: MFAToken

See https://developers.onelogin.com/api-docs/1/multi-factor-authentication/generate-mfa-token Generate MFA Token documentation