GitHub Read File
Read the raw contents of a file from a GitHub repository using the GitHub Contents API
Node Type
Action
Category
GitHub
Icon
GitHub
Overview
The GitHub Read File node is an action node that fetches the raw contents of a file from a GitHub repository using the GitHub Contents API. This powerful integration enables you to programmatically read files from GitHub repositories, perfect for documentation processing, configuration file analysis, and automated code review workflows.
Key Features
- • Repository Access: Read files from any accessible GitHub repository
- • Flexible References: Support for branches, tags, and commit SHAs
- • Dynamic Repository Selection: Automatically populate available repositories
- • File Content Processing: Automatically decode base64 encoded content
- • Error Handling: Comprehensive error handling for API failures and authentication issues
- • Metadata Tracking: Track repository, file path, and reference information
Prerequisites
GitHub Authentication
Must have a connected GitHub account with appropriate permissions
Repository Access
Understanding of repository structure and file access requirements
Technical Requirements
Technical setup and configuration requirements
Node Configuration
Required Fields
Repository
Repository URL or owner/repo format (e.g., https://github.com/acme/tools or acme/tools). The node will automatically populate available repositories from your GitHub account.
File path
Path to the file within the repository (e.g., path/to/file.txt). Use forward slashes for path separators.
Optional Fields
Ref (branch, tag, or commit SHA)
Optional branch, tag, or commit SHA. If not specified, defaults to the default branch of the repository.
Examples & Use Cases
Read Configuration Files
Read configuration files from GitHub repositories
{
"repository": "myorg/config-repo",
"filePath": "config/app.json",
"ref": "main"
}This will read the app.json configuration file from the main branch of the config-repo repository.
Documentation Processing Workflow
Process documentation files with AI analysis
Workflow Structure
Read documentation files from GitHub, analyze content with AI for insights, generate summary, and email results to stakeholders.
Code Review Automation
Automatically review code changes and generate reports
Workflow Structure
Read source code files from GitHub, analyze code quality and patterns, generate automated code review, and notify team via Slack.
Version-Specific File Reading
Read files from specific versions or commits
{
"repository": "facebook/react",
"filePath": "README.md",
"ref": "v18.2.0"
}This will read the README.md file from the v18.2.0 tag of the React repository, useful for reading documentation from specific versions.
Best Practices
Do's
- • Use the dynamic repository selector to choose from available repositories
- • Specify the correct file path with forward slashes as separators
- • Use specific refs (branches, tags, commits) for reproducible workflows
- • Handle file content appropriately based on file type (text vs binary)
- • Use the success output to verify file reading operations
- • Store repository and file path information for reference in subsequent nodes
Don'ts
- • Don't try to read files from private repositories without proper access
- • Avoid using incorrect file paths that don't exist in the repository
- • Don't forget to handle authentication errors gracefully
- • Avoid reading very large files that might cause memory issues
- • Don't assume file content is always text - handle binary files appropriately
- • Avoid hardcoding repository names - use the dynamic selector when possible
Troubleshooting
Common Issues
Authentication Errors
Symptoms: Node fails with GitHub access token not found error
Solution: Ensure your GitHub account is properly connected via OAuth and that you have valid access tokens. Check your GitHub integration settings.
Repository Not Found
Symptoms: Node fails with repository not found error
Solution: Verify the repository name is correct and that you have access to the repository. Use the dynamic repository selector to choose from available repositories.
File Not Found
Symptoms: Node fails with file not found error
Solution: Check that the file path is correct and exists in the specified repository and ref. Use forward slashes for path separators and verify the file exists at the specified location.
Invalid Ref
Symptoms: Node fails with invalid ref error
Solution: Ensure the branch, tag, or commit SHA exists in the repository. Check that the ref name is spelled correctly and that it exists in the repository history.
API Rate Limiting
Symptoms: Node fails with rate limit exceeded error
Solution: GitHub API has rate limits. If you're making many requests, consider adding delays between requests or using GitHub's GraphQL API for more efficient queries.
Large File Processing
Symptoms: Node times out or fails with large files
Solution: GitHub has limits on file sizes for the Contents API. For very large files, consider using the Git Data API or implementing chunked processing for large files.