{"id":362588,"date":"2026-09-10T10:37:48","date_gmt":"2026-09-10T10:37:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/susan-port-support\/"},"modified":"2026-09-10T10:37:21","modified_gmt":"2026-09-10T10:37:21","slug":"susan-port-support","status":"publish","type":"plugin","link":"https:\/\/dzo.wordpress.org\/plugins\/susan-port-support\/","author":16637688,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.1.3","stable_tag":"0.1.3","tested":"7.1","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Susan Port (Support)","header_author":"Adam O'Connor","header_description":"Inbox Zero automation for Gmail: triage, Asana tasks, and auto-replies with templates.","assets_banners_color":"","last_updated":"2026-09-10 10:37:21","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/1j2.com\/donate\/","header_plugin_uri":"https:\/\/1j2.com","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":26,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.1.3":{"tag":"0.1.3","author":"adamoc","date":"2026-09-10 10:37:21","revision":3689749}},"upgrade_notice":{"0.1.3":"<p>Settings and rule-action validation improvements.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3689783,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3689783,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.1.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3689783,"resolution":"1","location":"assets","locale":"","width":1120,"height":868},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3689783,"resolution":"2","location":"assets","locale":"","width":1120,"height":868},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3689783,"resolution":"3","location":"assets","locale":"","width":1120,"height":868},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3689783,"resolution":"4","location":"assets","locale":"","width":1120,"height":868},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3689783,"resolution":"5","location":"assets","locale":"","width":1120,"height":868},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3689783,"resolution":"6","location":"assets","locale":"","width":1120,"height":868},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3689783,"resolution":"7","location":"assets","locale":"","width":1120,"height":868},"screenshot-8.png":{"filename":"screenshot-8.png","revision":3689783,"resolution":"8","location":"assets","locale":"","width":1120,"height":868}},"screenshots":{"1":"Gmail Labels setup screen showing Action and Actioned label configuration.","2":"Gmail OAuth connection tab where users enter their Client ID and Client Secret and authorize Gmail.","3":"Testing tools used to validate Gmail read, modify, and send permissions.","4":"Add ons tab displaying installed extensions and a link to browse optional add ons.","5":"External cron setup showing the endpoint and secret key used for background processing.","6":"Built in documentation with step by step instructions for configuring Google OAuth.","7":"Auto reply templates editor with reusable template variables.","8":"Rules editor for automating actions based on sender, subject, domain, or message content."}},"plugin_section":[],"plugin_tags":[267,897,20095,1104,4516],"plugin_category":[41,43],"plugin_contributors":[280076],"plugin_business_model":[],"class_list":["post-362588","plugin","type-plugin","status-publish","hentry","plugin_tags-email","plugin_tags-gmail","plugin_tags-rules","plugin_tags-support","plugin_tags-templates","plugin_category-communication","plugin_category-customization","plugin_contributors-adamoc","plugin_committers-adamoc"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/susan-port-support\/assets\/icon-128x128.png?rev=3689783","icon_2x":"https:\/\/ps.w.org\/susan-port-support\/assets\/icon-256x256.png?rev=3689783","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/susan-port-support\/assets\/screenshot-1.png?rev=3689783","caption":"Gmail Labels setup screen showing Action and Actioned label configuration."},{"src":"https:\/\/ps.w.org\/susan-port-support\/assets\/screenshot-2.png?rev=3689783","caption":"Gmail OAuth connection tab where users enter their Client ID and Client Secret and authorize Gmail."},{"src":"https:\/\/ps.w.org\/susan-port-support\/assets\/screenshot-3.png?rev=3689783","caption":"Testing tools used to validate Gmail read, modify, and send permissions."},{"src":"https:\/\/ps.w.org\/susan-port-support\/assets\/screenshot-4.png?rev=3689783","caption":"Add ons tab displaying installed extensions and a link to browse optional add ons."},{"src":"https:\/\/ps.w.org\/susan-port-support\/assets\/screenshot-5.png?rev=3689783","caption":"External cron setup showing the endpoint and secret key used for background processing."},{"src":"https:\/\/ps.w.org\/susan-port-support\/assets\/screenshot-6.png?rev=3689783","caption":"Built in documentation with step by step instructions for configuring Google OAuth."},{"src":"https:\/\/ps.w.org\/susan-port-support\/assets\/screenshot-7.png?rev=3689783","caption":"Auto reply templates editor with reusable template variables."},{"src":"https:\/\/ps.w.org\/susan-port-support\/assets\/screenshot-8.png?rev=3689783","caption":"Rules editor for automating actions based on sender, subject, domain, or message content."}],"raw_content":"<!--section=description-->\n<p>Susan Port is an inbox management and support automation system that connects your WordPress site directly to your own Gmail account using Google OAuth 2.0.<\/p>\n\n<p>This plugin helps you:<\/p>\n\n<ul>\n<li>Triage incoming Gmail messages using your own rules<\/li>\n<li>Move messages into Action or Actioned Gmail labels<\/li>\n<li>Send template powered replies with variables such as sender name, subject, snippet, and site name<\/li>\n<li>Use throttling to reduce repeat automatic replies<\/li>\n<li>Test Gmail read, modify, and send permissions from WordPress<\/li>\n<li>Extend workflows using separately installed optional add ons<\/li>\n<\/ul>\n\n<p>Susan Port does not operate a central email processing service. Gmail data is exchanged directly between your WordPress site and Google after you configure your own Google OAuth credentials and authorize the connection.<\/p>\n\n<h3>Features<\/h3>\n\n<ul>\n<li>Gmail OAuth connection using credentials created by the site administrator<\/li>\n<li>Gmail label configuration for Action and Actioned workflows<\/li>\n<li>Custom rules with conditions on sender, domain, subject, or message text<\/li>\n<li>Templates with tokens including {{sender_name}}, {{subject}}, {{snippet}}, and {{site_name}}<\/li>\n<li>Throttled automatic replies<\/li>\n<li>Inbox counters and Gmail testing tools<\/li>\n<li>External cron endpoint for reliable background processing<\/li>\n<li>Support for separately installed optional add ons<\/li>\n<\/ul>\n\n<h3>Privacy<\/h3>\n\n<p>Susan Port stores its configuration, OAuth credentials, access tokens, refresh tokens, rules, templates, and processing logs in the WordPress database on your site. Sensitive Google credentials and refresh tokens are stored in encrypted form by the plugin.<\/p>\n\n<p>To provide Gmail functionality, the plugin communicates with Google services after the site administrator explicitly configures OAuth credentials and connects a Google account. Details of the information sent to Google are provided in the External services section below.<\/p>\n\n<p>Susan Port does not transmit Gmail message content or OAuth tokens to the developer of this plugin.<\/p>\n\n<p>Separately installed add ons may communicate with additional external services. Those add ons are responsible for documenting their own external-service usage and data handling.<\/p>\n\n<h3>External services<\/h3>\n\n<h4>Google OAuth 2.0, OpenID Connect, and Gmail API<\/h4>\n\n<p>Susan Port requires Google services in order to connect to and work with a Gmail account. This functionality is not available until the site administrator enters their own Google OAuth Client ID and Client Secret and explicitly connects a Google account.<\/p>\n\n<p>Depending on the action being performed, the plugin communicates with Google's OAuth, OpenID Connect, and Gmail API endpoints.<\/p>\n\n<p>Data sent to Google may include:<\/p>\n\n<ul>\n<li>The OAuth Client ID, Client Secret, authorization code, redirect URI, and refresh token when authorizing or refreshing access<\/li>\n<li>OAuth access tokens in authenticated API request headers<\/li>\n<li>Gmail message and thread identifiers when reading or modifying messages<\/li>\n<li>Gmail search queries when locating messages<\/li>\n<li>Gmail label names and identifiers when listing, creating, adding, removing, or moving labels<\/li>\n<li>Message content required by Gmail when Susan Port sends an automatic reply or a test email<\/li>\n<li>The connected account identity when retrieving the account email address or Gmail profile<\/li>\n<\/ul>\n\n<p>These requests occur only when the administrator connects Gmail, uses a Gmail testing tool, manually performs a Gmail-related action, or when a configured Susan Port background job processes Gmail.<\/p>\n\n<p>Google provides these services. Please review Google's terms and privacy information:<\/p>\n\n<ul>\n<li>Google APIs Terms of Service: https:\/\/developers.google.com\/terms<\/li>\n<li>Google Terms of Service: https:\/\/policies.google.com\/terms<\/li>\n<li>Google Privacy Policy: https:\/\/policies.google.com\/privacy<\/li>\n<\/ul>\n\n<h4>cron-job.org (optional)<\/h4>\n\n<p>The built-in documentation recommends cron-job.org as one optional way to call Susan Port's external cron endpoint on a schedule. Susan Port does not create a cron-job.org account, send data to cron-job.org itself, or require that particular provider. You may use your hosting provider's cron service or another scheduler instead.<\/p>\n\n<p>If you choose cron-job.org, you manually provide it with the unique Susan Port cron endpoint URL. That URL contains the site's cron secret. cron-job.org then sends scheduled HTTP POST requests to your WordPress site and may store the requested URL and response information according to its own policies.<\/p>\n\n<ul>\n<li>cron-job.org Terms of Service: https:\/\/cron-job.org\/en\/tos\/<\/li>\n<li>cron-job.org Privacy Policy: https:\/\/cron-job.org\/en\/privacy\/<\/li>\n<\/ul>\n\n<h3>External Cron Setup<\/h3>\n\n<p>Susan Port provides a secured external cron endpoint for background processing such as reading new Gmail messages, applying rules, sending configured replies, and running registered actions.<\/p>\n\n<p>You will find the unique endpoint under Settings &gt; Susan Port &gt; External Cron. The URL contains a secret key and accepts POST requests.<\/p>\n\n<h4>How to set it up<\/h4>\n\n<ol>\n<li>Open Settings &gt; Susan Port &gt; External Cron.<\/li>\n<li>Copy the endpoint URL.<\/li>\n<li>Create a scheduled HTTP request using your hosting provider, server cron, or another scheduler. cron-job.org is one optional provider.<\/li>\n<li>Set the request method to POST.<\/li>\n<li>Set the schedule to run every 5 minutes.<\/li>\n<li>Save the cron job.<\/li>\n<\/ol>\n\n<h4>Security<\/h4>\n\n<p>The cron endpoint contains a secret key unique to your site. Treat the URL as sensitive. You can rotate the key at any time using the Rotate Secret button. Rotating the key invalidates the previous endpoint URL, so remember to update your scheduler afterwards.<\/p>\n\n<h3>How Gmail Connection Works<\/h3>\n\n<p>Gmail access uses OAuth 2.0. You create and control the Google Cloud project and credentials used by your WordPress site.<\/p>\n\n<p>The setup process is:<\/p>\n\n<ul>\n<li>Create a Google Cloud project<\/li>\n<li>Enable the Gmail API<\/li>\n<li>Configure the OAuth consent screen<\/li>\n<li>Add the exact Redirect URI displayed by Susan Port<\/li>\n<li>Create an OAuth Client ID and Client Secret<\/li>\n<li>Save those credentials in Susan Port<\/li>\n<li>Click Connect and approve the requested Google permissions<\/li>\n<\/ul>\n\n<p>The plugin requests Gmail read, modify, and send permissions together with OpenID and email identity permissions used to identify the connected account.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin zip through Plugins &gt; Add New and activate it.<\/li>\n<li>Go to Settings &gt; Susan Port.<\/li>\n<li>Open the Gmail OAuth tab.<\/li>\n<li>Follow the Documentation tab to create a Google Cloud project and OAuth credentials.<\/li>\n<li>Paste your Client ID and Client Secret into Susan Port and save the settings.<\/li>\n<li>Click Connect to authorize Gmail.<\/li>\n<li>Configure your Action and Actioned labels.<\/li>\n<li>Create rules and templates for your workflow.<\/li>\n<li>Configure the external cron endpoint if you want reliable scheduled processing.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20susan%20port%20send%20my%20emails%20to%20the%20plugin%20developer%3F\"><h3>Does Susan Port send my emails to the plugin developer?<\/h3><\/dt>\n<dd><p>No. Gmail data is exchanged directly between your WordPress site and Google. Susan Port does not send Gmail message content or OAuth tokens to the plugin developer.<\/p><\/dd>\n<dt id=\"does%20susan%20port%20use%20an%20external%20service%3F\"><h3>Does Susan Port use an external service?<\/h3><\/dt>\n<dd><p>Yes. Gmail functionality requires Google's OAuth and Gmail API services. See the External services section for exactly what is sent, when it is sent, and links to Google's terms and privacy policy.<\/p><\/dd>\n<dt id=\"do%20i%20provide%20my%20own%20google%20oauth%20credentials%3F\"><h3>Do I provide my own Google OAuth credentials?<\/h3><\/dt>\n<dd><p>Yes. The site administrator creates a Google Cloud project and supplies the Client ID and Client Secret. Susan Port includes step by step setup documentation inside the plugin.<\/p><\/dd>\n<dt id=\"can%20i%20use%20imap%20instead%20of%20the%20gmail%20api%3F\"><h3>Can I use IMAP instead of the Gmail API?<\/h3><\/dt>\n<dd><p>No. Current versions use the Gmail API through OAuth.<\/p><\/dd>\n<dt id=\"is%20an%20external%20cron%20service%20required%3F\"><h3>Is an external cron service required?<\/h3><\/dt>\n<dd><p>Susan Port provides an HTTP cron endpoint so processing can run reliably on a schedule. You can call it from your own server or hosting provider. A third party service such as cron-job.org is optional.<\/p><\/dd>\n<dt id=\"does%20susan%20port%20support%20add%20ons%3F\"><h3>Does Susan Port support add ons?<\/h3><\/dt>\n<dd><p>Yes. Separately installed add ons can register additional rule actions. Any external services used by an add on should be documented by that add on.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.1.3<\/h4>\n\n<p>Harden settings and rule-action input validation.<\/p>\n\n<h4>0.1.2<\/h4>\n\n<p>Security, compatibility, documentation, and WordPress.org review updates.<\/p>\n\n<h4>0.1.0<\/h4>\n\n<p>Initial release.<\/p>","raw_excerpt":"Gmail support automation for WordPress with rules, templates, inbox triage, and optional add ons.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/dzo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/362588","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dzo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/dzo.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/dzo.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=362588"}],"author":[{"embeddable":true,"href":"https:\/\/dzo.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/adamoc"}],"wp:attachment":[{"href":"https:\/\/dzo.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=362588"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/dzo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=362588"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/dzo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=362588"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/dzo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=362588"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/dzo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=362588"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/dzo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=362588"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}