{"product_id":"github-to-aws-s3-backup-n8n-with-email-reports","title":"GitHub to AWS S3 Backup (n8n) with Email Reports","description":"\u003ch3\u003eNightly GitHub backups to AWS S3—with an automatic email report\u003c\/h3\u003e\n\u003cp\u003eThis \u003cstrong\u003en8n workflow\u003c\/strong\u003e automatically backs up your `GitHub` repositories every night by downloading each repo as a tarball and uploading it to \u003cstrong\u003eAmazon S3\u003c\/strong\u003e. It also \u003cstrong\u003edeletes expired backups\u003c\/strong\u003e based on your retention window and sends a \u003cstrong\u003eSMTP email run report\u003c\/strong\u003e with successes, failures, and deletions.\u003c\/p\u003e\n\n\u003ch3\u003eWhat this workflow does\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eRuns nightly at 02:00\u003c\/strong\u003e on a schedule.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eValidates required settings\u003c\/strong\u003e before starting work (S3 bucket, S3 prefix, retention days, and report email).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eUses the GitHub API\u003c\/strong\u003e to determine the authenticated account (or a specified owner) and \u003cstrong\u003elists repositories\u003c\/strong\u003e with pagination.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eDownloads each repository\u003c\/strong\u003e as a GitHub tarball (with retrying on failures) and \u003cstrong\u003euploads it to S3\u003c\/strong\u003e using a \u003cstrong\u003etimestamped filename\u003c\/strong\u003e under your configured prefix.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eApplies retention policy\u003c\/strong\u003e by listing objects in the S3 prefix, selecting backups older than the retention window, and \u003cstrong\u003edeleting expired archives\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eBuilds a detailed summary\u003c\/strong\u003e (successes, skipped empty repositories, failures, and deletions) and \u003cstrong\u003eemails the report via SMTP\u003c\/strong\u003e (with configurable recipient and optional sender).\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eUse cases\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eSaaS operators who need reliable \u003cstrong\u003erepository backup\u003c\/strong\u003e outside GitHub.\u003c\/li\u003e\n  \u003cli\u003eAutomation engineers setting up \u003cstrong\u003escheduled GitHub to S3\u003c\/strong\u003e backups with retention-based cleanup.\u003c\/li\u003e\n  \u003cli\u003eTeams backing up private repositories using GitHub API credentials with appropriate scopes.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eTechnical details\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eIntegrations \/ nodes:\u003c\/strong\u003e GitHub API, \u003cstrong\u003eAWS S3\u003c\/strong\u003e, \u003cstrong\u003eEmail (SMTP) send\u003c\/strong\u003e, and workflow control nodes like \u003cem\u003eif\u003c\/em\u003e, \u003cem\u003eset\u003c\/em\u003e, and \u003cem\u003ecode\u003c\/em\u003e (plus a sticky note).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eCore behavior:\u003c\/strong\u003e nightly tarball download, S3 upload to a configured prefix, retention-based S3 deletion, and SMTP email reporting.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003eBuilt for n8n users who want a practical, automated \u003cstrong\u003eGitHub to AWS S3 backup\u003c\/strong\u003e workflow with visibility via email.\u003c\/p\u003e","brand":"N8N Commerce","offers":[{"title":"Default Title","offer_id":46058931421363,"sku":"N8N-19705","price":8.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/6279\/6723\/files\/kICiA1Dku-OXVyr7UuU1g_FBv08aE9.png?v=1789722140","url":"https:\/\/buyflowscripts.com\/products\/github-to-aws-s3-backup-n8n-with-email-reports","provider":"N8N Commerce","version":"1.0","type":"link"}