GitHub repository
The Public APIs project is open source and hosted on GitHub. We welcome contributions from the community to help maintain and grow this valuable resource.
Repository: https://github.com/public-apis/public-apis
How to contribute
We appreciate community contributions! Here’s how you can get involved:
Getting started
- Fork the repository - Create your own copy of the project
- Clone it locally - Download your fork to your computer
- Create a branch - Make a new branch for your changes
- Make your changes - Add or update API entries
- Commit your work - Use descriptive commit messages
- Push to your fork - Upload your changes
- Open a Pull Request - Submit your changes for review
Contribution guidelines
Before submitting a Pull Request:
- One API per PR - Submit one link per Pull Request
- Follow the format - Use the correct table structure with all required columns
- Alphabetical order - Maintain alphabetical ordering within each category
- PR title format - Use the format:
Add API-name API (e.g., Add Blockchain API)
- Descriptive commits - ❌
Update Readme.md ✔ Add Blockchain API to Cryptocurrency
- Squash commits - Combine all commits into one before submitting
- No TLD in name - ❌
Gmail.com ✔ Gmail
- No “API” suffix - ❌
Gmail API ✔ Gmail
- Proper documentation - Ensure the API has official documentation
API requirements
The Public APIs list is not a marketing tool. PRs identified as marketing attempts will not be accepted.
APIs must meet these criteria:
- Free access - Full free access or at least a free tier available
- No purchase required - Should not depend on purchasing a device or service
- Public documentation - Must have proper, accessible documentation
- Not deprecated - Never submit an updated version of an already listed API
Entry format
Each API entry should follow this format:
| API | Description | Auth | HTTPS | CORS |
| --- | --- | --- | --- | --- |
| [API Title](link-to-docs) | Description of API | `apiKey` | Yes | Yes |
Column requirements:
- API: Title with link to documentation (no “API” suffix, no TLD)
- Description: Start with capital letter, max 100 characters, no ending punctuation
- Auth:
OAuth, apiKey, X-Mashape-Key, User-Agent, or No
- HTTPS:
Yes or No
- CORS:
Yes, No, or Unknown
Issue reporting
Found a broken link or incorrect information?
Report an issue
- Visit the Issues page
- Check if the issue already exists
- If not, create a new issue with:
- Clear title describing the problem
- Details about the API affected
- Steps to reproduce (if applicable)
- Any error messages or screenshots
Search before posting
Before creating a new issue or PR:
- Search existing Pull Requests
- Search existing Issues
- Your issue may already be addressed
Pull Request review process
After submitting a PR:
- Automated checks - Build will verify all links and formatting
- Ensure build passes - Check the build logs and fix any errors
- Community review - Other contributors and users may comment
- Maintainer decision - Final decision made by project collaborators
- Make requested changes - Add commits if changes are needed (don’t forget to squash)
Stay involved
Ways to stay engaged with the project:
- ⭐ Star the repository - Show your support
- 👀 Watch for updates - Get notified of new discussions
- 🐛 Report bugs - Help us maintain quality
- ✨ Suggest improvements - Share your ideas
- 📖 Improve documentation - Help make the project more accessible
Thank you for being part of the Public APIs community!