Clockify Backup Template

Automated workflow for Clockify that schedules and backs up detailed monthly reports to GitHub, ensuring no data is lost. It extracts time entries, compares datasets, and updates or creates files in GitHub, streamlining data management and enhancing report accessibility.

7/8/2025
21 nodes
Complex
rkga6i6nvini12bxschedulecomplexextractfromfilecomparedatasetsstopanderrorsplitoutfilterclockifygithubschedule triggersticky noteautomationadvancedfilesstoragelogicconditionalapiintegrationcron
Categories:
Schedule TriggeredComplex WorkflowTechnical Infrastructure & DevOpsBusiness Process Automation
Integrations:
ExtractFromFileCompareDatasetsStopAndErrorSplitOutFilterClockifyGitHubSchedule TriggerSticky Note

Target Audience

  • Project Managers: To automate the backup of time tracking data from Clockify.
    - Developers: To integrate Clockify data with GitHub for version control.
    - Data Analysts: To analyze time entry data over specific months.
    - Small Business Owners: To keep track of time spent on projects and ensure accurate billing.
    - Automation Enthusiasts: To streamline workflows and reduce manual data handling.
  • Problem Solved

    This workflow automates the process of backing up detailed monthly reports from Clockify to GitHub. It addresses the challenge of manually tracking and storing time entries, ensuring that data is consistently updated and available for analysis or reference. By automating these tasks, users save time and reduce the risk of errors associated with manual processes.

    Workflow Steps

  • Schedule Trigger: Initiates the workflow daily at 5 AM.
    - Get First Workspace: Fetches the first available Clockify workspace ID to use in subsequent API calls.
    - Set Month Indexes: Defines the last 3 months for which reports will be generated.
    - Split Out Indexes: Breaks down the month indexes into separate entries for processing.
    - Set Intervals: Calculates the start and end dates for each month based on the current date, formatting them for API requests.
    - Get Detailed Monthly Report: Sends a request to Clockify's API to retrieve time entries for each specified month.
    - Check if File Exists in GitHub: Verifies if a report file for the month already exists in the specified GitHub repository.
    - Point to New Data: Prepares the retrieved time entries for further processing.
    - Skip Empty Reports: Filters out any months that do not have time entries, preventing unnecessary file creation.
    - Update/Create File in GitHub: Depending on whether the file exists, it either updates the existing report or creates a new one, ensuring that all relevant data is stored in GitHub.
  • Customization Guide

  • Adjust Schedule: Modify the schedule trigger to change how often the workflow runs (e.g., weekly instead of daily).
    - Change Workspace: Update the Get First Workspace node to target a different Clockify workspace if needed.
    - Modify Month Range: Alter the Set Month Indexes to change the number of months being processed (e.g., last 6 months instead of 3).
    - Customize GitHub Repository: Update the Globals node to reflect the correct GitHub repository owner and name where reports should be stored.
    - Error Handling: Enhance the Stop and Error node to customize error messages or add additional error handling logic.