Installation
Signing in
Prepare your account for signing in to Swift Mail
Setup your account to enable access by a third-party mail client (i.e., a non-Fastmail client) and understand how your credentials are handled securely by Swift Mail.
Generate an API token
An API token
can be generated by visiting your Fastmail account on the web and navigating to Settings > Privacy & Security > Integrations
and selecting New API token
under the API tokens
section.
Provide a name for your new API token and enable the Email
and Email submission
checkboxes. Read-only access
and Masked Email
capabilities are not currently supported.
Note: App passwords
are no longer supported. OAuth support will be added in a future update.
Understand how account credentials are stored
Swift Mail implements Apple’s networking & authentication APIs when connecting to remote mail servers to retrieve account data on behalf of the user.
Upon installing and successfully signing into Swift Mail for the first time, account credentials are automatically encrypted and stored in the keychain. When subsequent calls to the server are made, authentication is managed by the system without the need for Swift Mail to intervene.
This allows Swift Mail to operate without knowledge of a user's account credentials.
Keychain access & app updates
Occasionally, you may be prompted to allow keychain access after updates.
Please select always allow
when prompted.
Allowing keychain access after an update simply validates Swift Mail’s access to the keychain entries created on first successful sign in to Swift Mail.
Inspecting keychain permissions
Searching the keychain app for Fastmail
, for example, should return two entries used by Swift Mail: one starting with jmap.fastmail.com
and another starting with www.fastmailusercontent.com
.
You can view access permissions by double clicking an entry in the list and selecting the Access Control
tab.
What if I don't use the keychain?
The keychain is used by macOS system-wide as a secure database for a variety of data including wifi passwords, security certificates, and web logins to name a few.
As such, it is recommended that app developers use the keychain for managing sensitive app information as well. See Apple's Keychain Services documentation for additional details.
Searching macOS’s Keychain Access.app should return several examples of the various use-cases mentioned above. The full path to the keychain app is /Applications/Utilities/Keychain Access.app
.