Google Mail requires OAUTH2 for authentication (for more information : [https://developers.google.com/gmail/imap/imap-smtp]).\\
\\
It requires several steps to configure.\\
You will start at Google API's and Service:\\
[https://console.developers.google.com/projectselector/apis/credentials]\\
\\
Setup Oauth Consent: \\
\\
[attachments|create_consent.png]\\
\\
Next select create credentials, and choose the Web Application type.\\
\\
[attachments|create_credentials.png]\\
\\
It will warn you if you don't have an "OAuth Consent" screen configured, so go there and configure that screen too.\\
\\
[attachments|oauth_consent.png]\\
\\
When configuring the credential, you have to tell Google the domain you will be originating from when creating the auth token, so this is the URL you use for server administration.  Just the protocol://dns_or_ip:port   Don't have a trailing slash or it will complain.\\
You also need to put in the redirect URL of where google is going to send you back to after approval.  This needs to follow the syntax in the example.  Specifically your domain needs to end with:\\
{{{
?command=register_google_mail_api
}}}\\
\\
[attachments|credential_config.png]\\
\\
Now if your credentials are setup, and your redirect domains are configured, you can use the credentials in CrushFTP to get your google auth token and get access.\\
In the Preferences -> General Settings -> SMTP Settings, at "SMTP Server Username :" input field put the client_id and secret separated with tilda.
Take your google client_id and secret and combine them together with a tilda as separator:\\
{{{
client_id: 725111111110-7kaimtXXXXXXXXXXXXXXXXXXXXX64m4k.apps.googleusercontent.com
secret: fEsXXXXXXXXXXXXXXXXPggg7
}}}
results in:
{{{
725111111110-7kaimtXXXXXXXXXXXXXXXXXXXXX64m4k.apps.googleusercontent.com~fEsXXXXXXXXXXXXXXXXPggg7
}}}\\
\\
That whole long string becomes your smtp user name. Copy and paste it into the "SMTP Server Username :" input field. Then click "Get mail refresh token" to get the "SMTP Server Password". Once it is finished the "SMTP Server Password" input field will be filled with the refresh token.\\
\\
"From email address :" is also required. Put your google email address there. It will be used as smtp username for the authentication process.\\
\\
[attachments|smtp_config.png]\\
\\