---
title: "Instant repo overview — languages, complexity, file count, tech stack, code quality findings, and credential scanning. Use as your first call to understand any remote public codebase. Supports language filtering and path scoping (for large monorepos, analyze a subdirectory instead of the full repo). When analysing multiple repositories, call in parallel rather than sequentially. Dependency/build directories excluded by default."
method: POST
path: "/api/v1/code_analyze"
---

# Instant repo overview — languages, complexity, file count, tech stack, code quality findings, and credential scanning. Use as your first call to understand any remote public codebase. Supports language filtering and path scoping (for large monorepos, analyze a subdirectory instead of the full repo). When analysing multiple repositories, call in parallel rather than sequentially. Dependency/build directories excluded by default.

`POST /api/v1/code_analyze`

## Query parameters

- `client` string, required

## Request body

- object
  - `detail_level` 'summary' | 'full' — Controls response verbosity. summary returns top 20 across all languages; full returns top 20 per language. Use summary for portfolio reviews, hiring assessments, and high-level overviews. Use full for deep per-language audits or when you need granular per-file breakdowns within a specific language.
  - `include_all_dirs` boolean — Include dependency/build/cache directories that are excluded by default (vendor, node_modules, third_party, target, build, dist, Pods, generated, etc.). Set to true if you need to analyze generated/vendored code.
  - `language` string — Filter results to a specific language (e.g. "Java", "Go", "Python").
  - `path` string — Subdirectory to scope analysis to (e.g. 'src', 'clang/lib'). Only files under this path are walked and analyzed — use this for large monorepos where full analysis is too slow or when the user's question is about a specific component. Omit to analyze the entire repository.
  - `repository` string, required — Git URL of a public remote repository
  - `scan_test_files` boolean — Include test files in code quality and credential scan results. Test files are excluded by default to reduce false positives (e.g. test credit card numbers, mock credentials). Set to true if you need to audit test code.

## Response `200`

Successful response

- object

## Other responses

- `400` — Bad request (invalid params or missing client)
- `404` — Repository or file not found
- `429` — Rate limited
- `500` — Internal server error
- `502` — Bad gateway (upstream clone failure)
- `503` — Service unavailable (clone queue full)

---

[API](https://skmtc.dev/searchcode/apis/searchcode-rest-api.md) · [All operations](https://skmtc.dev/searchcode/apis/searchcode-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/searchcode/searchcode-rest-api/revisions/24a0730a30a6/schema)
