Git.Top Atlas API
The Atlas API from Git.Top — 2 operation(s) for atlas.
Operations 2
GET
/api/atlas/{ecosystem}
Fetch one Atlas ecosystem map with stats, exploration paths, comparison paths…
#
The Atlas API from Git.Top — 2 operation(s) for atlas.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/git-top:git-top-atlas-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Git.Top Agent Atlas API
version: 0.1.0
description: Agent-native GitHub project knowledge API for search, project lookup, alternatives, comparison, graph reasoning, quality, and schema discovery. High-confidence clients should inspect metadata.source, metadata.reason, trust fields, classification evidence, quality_signal_confidence, verification signals, and migration validation steps, and use require_d1=true when seed fallback should fail closed.
servers:
- url: https://git.top
description: Production
- url: http://localhost:8787
description: Local Worker
tags:
- name: Atlas
paths:
/api/atlas:
get:
summary: List Atlas ecosystem maps with stats, exploration paths, comparison paths…
parameters:
- name: limit
in: query
required: false
description: Maximum projects per ecosystem
schema:
type: string
- name: require_d1
in: query
required: false
description: Fail closed unless D1-backed data is available
schema:
type: string
responses:
'200':
description: Atlas ecosystem list with stats, exploration_paths, recommendation links, map.nodes, and map.edges
content:
application/json:
schema:
$ref: '#/components/schemas/AtlasResponse'
tags:
- Atlas
operationId: getApiAtlas
x-operation-id-source: derived
/api/atlas/{ecosystem}:
get:
summary: Fetch one Atlas ecosystem map with stats, exploration paths, comparison paths…
parameters:
- name: ecosystem
in: path
required: true
description: Atlas ecosystem id
schema:
type: string
- name: limit
in: query
required: false
description: Maximum project count
schema:
type: string
- name: require_d1
in: query
required: false
description: Fail closed unless D1-backed data is available
schema:
type: string
responses:
'200':
description: Atlas ecosystem with stats, exploration_paths, recommendation links, map.nodes, and map.edges
content:
application/json:
schema:
$ref: '#/components/schemas/AtlasResponse'
'404':
description: Atlas ecosystem not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
tags:
- Atlas
operationId: getApiAtlasByEcosystem
x-operation-id-source: derived
components:
schemas:
NormalizedEvidence:
type: object
description: Normalized evidence package for agent citation and caveat handling.
properties:
classification:
type: object
additionalProperties: true
quality_signal_confidence:
$ref: '#/components/schemas/QualitySignalConfidence'
verification:
oneOf:
- $ref: '#/components/schemas/VerificationPackage'
- type: 'null'
source_fields:
type: array
items:
type: string
caveats:
type: array
items:
type: string
confidence_reason:
type: string
last_verified_at:
type:
- string
- 'null'
format: date-time
additionalProperties: true
NextAction:
type: object
properties:
label:
type: string
href:
type: string
kind:
type: string
additionalProperties: true
GraphResponse:
type: object
required:
- nodes
- edges
- graph_stats
- metadata
properties:
focus:
type: string
resolved_from:
type: object
additionalProperties: true
project:
$ref: '#/components/schemas/GraphProjectContext'
summary:
type: string
graph_stats:
type: object
additionalProperties: true
next_actions:
type: array
items:
$ref: '#/components/schemas/NextAction'
relationship_groups:
type: object
additionalProperties: true
migration_paths:
type: array
items:
$ref: '#/components/schemas/MigrationPath'
nodes:
type: array
items:
$ref: '#/components/schemas/GraphNode'
edges:
type: array
items:
$ref: '#/components/schemas/GraphEdge'
evidence:
$ref: '#/components/schemas/NormalizedEvidence'
caveats:
type: array
items:
type: string
confidence_reason:
type: string
source_fields:
type: array
items:
type: string
last_verified_at:
type:
- string
- 'null'
format: date-time
metadata:
$ref: '#/components/schemas/Metadata'
additionalProperties: true
VerificationSignal:
type: object
description: One project verification signal. observed and inferred are indexed evidence; not_run means the independent probe has not been executed.
required:
- status
- source
- evidence
properties:
status:
type: string
enum:
- verified
- observed
- inferred
- not_run
- not_applicable
- unknown
source:
type: string
enum:
- github_metadata
- git_top_heuristic
- git_top_runtime
evidence:
type: array
items:
type: string
additionalProperties: false
ProjectSummary:
type: object
required:
- tl_dr
- purpose
- inputs
- outputs
- good_for
- not_good_for
- deployment
- alternatives
properties:
tl_dr:
type: string
description: One-sentence project overview for agents.
purpose:
type: string
description: Longer agent-facing project purpose.
install:
type:
- string
- 'null'
description: Conservative install or setup hint when Git.Top can infer one.
inputs:
type: array
items:
type: string
outputs:
type: array
items:
type: string
good_for:
type: array
items:
type: string
not_good_for:
type: array
items:
type: string
deployment:
type: array
items:
type: string
alternatives:
type: array
items:
type: object
required:
- repo
- reason
properties:
repo:
type: string
reason:
type: string
GraphEdge:
type: object
required:
- source
- target
- kind
- weight
properties:
source:
type: string
target:
type: string
kind:
type: string
enum:
- alternative
- related
- category
- deployment
- use_case
- dependency
reason:
type: string
weight:
type: number
additionalProperties: true
AtlasEcosystem:
type: object
required:
- id
- name
- projects
- stats
- map
- links
properties:
id:
type: string
name:
type: string
description:
type: string
projects:
type: array
items:
$ref: '#/components/schemas/ProjectCard'
stats:
type: object
additionalProperties: true
exploration_paths:
type: array
items:
$ref: '#/components/schemas/NextAction'
exploration_journeys:
type: array
items:
type: object
additionalProperties: true
comparison_paths:
type: array
items:
type: object
additionalProperties: true
map:
$ref: '#/components/schemas/GraphResponse'
links:
type: object
additionalProperties:
type: string
additionalProperties: true
VerificationPackage:
type: object
description: Structured verification coverage for project selection. It does not claim install, security, runtime, or MCP execution unless a signal is verified.
required:
- schema_version
- overall_status
- observed_at
- signals
- coverage
- next_steps
properties:
schema_version:
type: string
const: git-top.verification.v1
overall_status:
type: string
enum:
- complete
- partial
- unverified
observed_at:
type:
- string
- 'null'
format: date-time
signals:
type: object
required:
- activity
- license
- documentation
- runtime
- install
- security
- mcp
properties:
activity:
$ref: '#/components/schemas/VerificationSignal'
license:
$ref: '#/components/schemas/VerificationSignal'
documentation:
$ref: '#/components/schemas/VerificationSignal'
runtime:
$ref: '#/components/schemas/VerificationSignal'
install:
$ref: '#/components/schemas/VerificationSignal'
security:
$ref: '#/components/schemas/VerificationSignal'
mcp:
$ref: '#/components/schemas/VerificationSignal'
additionalProperties: false
coverage:
type: object
required:
- observed
- inferred
- not_run
- unknown
properties:
observed:
type: integer
minimum: 0
inferred:
type: integer
minimum: 0
not_run:
type: integer
minimum: 0
unknown:
type: integer
minimum: 0
additionalProperties: false
next_steps:
type: array
items:
type: string
additionalProperties: false
ProjectCard:
type: object
description: Compact project card used in search, recommendations, comparison, alternatives, and related project lists.
required:
- project_id
- repo
- name
properties:
project_id:
type: string
repo:
type: string
name:
type: string
github_url:
type: string
homepage_url:
type:
- string
- 'null'
language:
type:
- string
- 'null'
license:
type:
- string
- 'null'
project_kind:
type: string
enum:
- project
- collection
collection_metadata:
type: object
additionalProperties: true
category:
type: array
items:
type: string
tags:
type: array
items:
type: string
description:
type: string
overview:
type: string
deployments:
type: array
items:
type: string
difficulty:
type: string
cloudflare_ready:
type: boolean
git_top_score:
type: number
quality_score:
type: number
agent_score:
type: number
score:
type: number
classification:
type: object
additionalProperties: true
quality_signal_confidence:
$ref: '#/components/schemas/QualitySignalConfidence'
verification:
$ref: '#/components/schemas/VerificationPackage'
summary:
$ref: '#/components/schemas/ProjectSummary'
evidence:
$ref: '#/components/schemas/NormalizedEvidence'
caveats:
type: array
items:
type: string
confidence_reason:
type: string
source_fields:
type: array
items:
type: string
last_verified_at:
type:
- string
- 'null'
format: date-time
additionalProperties: true
ErrorResponse:
type: object
description: Common API error envelope.
properties:
error:
type: string
code:
type: string
description: Stable machine-readable error code when available, such as d1_required.
message:
type: string
metadata:
$ref: '#/components/schemas/Metadata'
GraphProjectContext:
type: object
properties:
repo:
type: string
name:
type: string
description:
type: string
maintainer:
type: string
license:
type:
- string
- 'null'
language:
type:
- string
- 'null'
recent_activity:
type: string
additionalProperties: true
QualitySignalConfidence:
type: object
description: Completeness hints for GitHub-derived score inputs. Agents should avoid overclaiming partial or unknown signals.
properties:
stars_30d_delta:
type: string
enum:
- snapshot
- estimated
stars_30d_window_days:
type: integer
commits_30d:
type: string
enum:
- complete
- partial
- unknown
releases_180d:
type: string
enum:
- complete
- partial
- unknown
contributors_90d:
type: string
enum:
- complete
- partial
- unknown
additionalProperties: true
AtlasResponse:
type: object
properties:
ecosystems:
type: array
items:
$ref: '#/components/schemas/AtlasEcosystem'
ecosystem:
$ref: '#/components/schemas/AtlasEcosystem'
metadata:
$ref: '#/components/schemas/Metadata'
additionalProperties: true
GraphNode:
type: object
required:
- id
- label
- kind
properties:
id:
type: string
label:
type: string
kind:
type: string
enum:
- project
- category
- deployment
- use_case
- dependency
score:
type: number
repo:
type: string
additionalProperties: true
Metadata:
type: object
description: Common provenance envelope for agent-facing responses. Agents should require source=d1 for high-confidence production claims and disclose seed fallback.
properties:
source:
type: string
enum:
- d1
- seed
reason:
type: string
project_count:
type: integer
generated_at:
type: string
format: date-time
snapshot_id:
type: string
description: Stable identity for the corpus snapshot used by this response.
latest_synced_at:
type:
- string
- 'null'
format: date-time
schema_version:
type: string
enum:
- git-top.knowledge.v1
loaded_project_limit:
type: integer
description: Maximum D1 knowledge or search-candidate rows loaded into the bounded ranking set when present.
truncated:
type: boolean
description: Whether the D1-backed ranking or candidate set reached its limit and may omit additional matching rows.
candidate_retrieval:
type: string
enum:
- d1_first
description: Search-only marker indicating that deterministic filters and broad query matching ran in D1 before TypeScript ranking.
candidate_count:
type: integer
description: Number of D1 search candidates passed to the authoritative TypeScript filter and ranking stage.
candidate_limit:
type: integer
description: Maximum number of D1 search candidates passed to the ranking stage.
warnings:
type: array
items:
type: string
description: Fallback, count, freshness, or trust caveats that agents should account for before citing results.
MigrationPath:
type: object
description: Heuristic migration decision aid. It is not a drop-in compatibility or production readiness guarantee.
required:
- from
- to
- compatibility
- estimated_cost
- shared_signals
- gaps
- validation_steps
- evidence
properties:
from:
type: string
to:
type: string
compatibility:
type: string
enum:
- high
- medium
- low
- unknown
estimated_cost:
type: string
enum:
- low
- medium
- high
- unknown
shared_signals:
type: array
items:
type: string
gaps:
type: array
items:
type: string
validation_steps:
type: array
items:
type: string
evidence:
type: array
items:
type: string
additionalProperties: false
securitySchemes:
syncSecret:
type: http
scheme: bearer
description: Admin endpoints require the SYNC_SECRET bearer token.
feedbackSecret:
type: http
scheme: bearer
description: Optional FEEDBACK_SECRET. Without it, proposals are validated and fingerprinted but not persisted.