Introduction

Welcome to the Repo Cat API documentation. This guide will help you quick start with analyzing GitHub repositories.

What is Repo Cat?

Repo Cat is an MCP-ready API for analyzing GitHub repositories, providing metadata, heuristics, and deep insights for developers, recruiters, and engineering teams.

Repo Cat was created by Futoro Ltd to help teams understand codebases faster and more objectively.

Authentication

The Repo Cat API uses API keys to authenticate your requests. This helps track your usage and apply scan limits.

Quick Overview

  • Free tier: Basic (5/day, 30/mo)
  • Plus tier: Basic (50/day) & Standard (100/day) - API key required
  • Premium tier: Unlimited Basic/Standard, Deep (50/day) - API key required

All scans require the API key

How to Get Started

  1. Sign up - Create an account at /signup
  2. Generate an API key - Go to your dashboard settings to create an API key
  3. Make requests - Include your API key in the X-API-Key header

Including Your API Key

cURL

curl -X GET "https://repocat.cloud/api/v1/scan?repo=facebook/react&level=basic" \
  -H "X-API-Key: your-api-key-here"

JavaScript

fetch("https://repocat.cloud/api/v1/scan?repo=facebook/react&level=basic", {
  headers: { "X-API-Key": "your-api-key-here" }
});

Scan Levels

Repo Cat offers three scan levels to meet different needs. Each level provides different depths of analysis.

Basic

Free tier scan that provides basic metadata and heuristics. API key required (5 scans/day, 30/mo).

  • Repository metadata
  • Commit density analysis
  • Package bloat detection
Standard

Enhanced scan with static code quality assessment. No AI required.

  • Everything in Basic
  • Static code analysis
  • Security issue detection
Deep

Comprehensive analysis with AI-powered insights and recommendations.

  • Everything in Standard
  • AI-powered code analysis
  • Detailed recommendations

Scan Limits

Your subscription plan determines your daily and monthly scan limits. These limits control how many scans you can perform at each level.

PlanBasic (Daily)Standard (Daily)Deep (Daily)
free500
plus501000
premiumUnlimitedUnlimited50

Basic scans are available on all plans including Free. All scan levels require an API key and are subject to tier limits.

Rate Limiting

To prevent abuse, the API server implements request-based rate limiting (requests per minute). This limit applies equally to all users regardless of tier and helps ensure service availability. If you exceed this limit, you will receive a 429 (Too Many Requests) response.

Real-Time Updates

Monitor scan progress in real-time using Server-Sent Events (SSE). This is useful for long-running deep scans where you want to track progress as it happens.

Scan Progress via SSE

Connect to the SSE endpoint to receive real-time updates about scan status and progress. The stream sends events for status changes, progress updates, and completion notifications.

GET /api/v1/scans/sse
Scan Progress (SSE) API Reference - Detailed API specification

User Settings

Manage your account preferences including default scan levels, notifications, and webhooks.

Settings API

Retrieve and update your user settings. Settings include default scan level, email notifications, and webhook configurations.

  • • GET /api/v1/settings - Retrieve current settings
  • • PUT /api/v1/settings - Update settings

Email Notifications

Receive email notifications when your scans complete. Configure your notification preferences in your user settings.

Notification Events

Email notifications are sent for the following scan events:

  • • Scan completed successfully
  • • Scan failed with an error
  • • Scan was cancelled

Webhooks

Configure webhooks to receive HTTP POST requests when scan events occur. This enables real-time integration with external systems.

Webhooks Documentation - Full configuration guide

Scan Management

Manage your existing scans - view details, download PDFs, cancel running scans, or delete scans you no longer need.

GET /api/v1/scan/:id- Get scan details
GET /api/v1/scan/:id/pdf- Download PDF
POST /api/v1/scan/:id/cancel- Cancel scan
DELETE /api/v1/scan/:id- Delete scan

Next Steps

Ready to start? Check out our Quick Start guide to make your first API call.