Git.Top Changes API
The Changes API from Git.Top — 1 operation(s) for changes.
The Changes API from Git.Top — 1 operation(s) for changes.
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-changes-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 Changes 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: Changes
paths:
/api/changes:
get:
summary: Read D1 project changes with cursor pagination and deletion tombstones
parameters:
- name: cursor
in: query
required: false
description: Opaque next_cursor from a previous response
schema:
type: string
- name: since
in: query
required: false
description: Optional ISO-8601 lower bound
schema:
type: string
- name: limit
in: query
required: false
description: Page size from 1 to 100
schema:
type: string
responses:
'200':
description: Project change feed
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectChangesResponse'
'400':
description: Invalid cursor, timestamp, or limit
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
tags:
- Changes
operationId: getApiChanges
x-operation-id-source: derived
components:
schemas:
ProjectChangesResponse:
type: object
required:
- changes
- page
- retention
- metadata
properties:
changes:
type: array
items:
type: object
required:
- cursor
- project_id
- change_type
- changed_fields
- occurred_at
- tombstone
properties:
cursor:
type: string
description: Opaque cursor for this event.
project_id:
type: string
change_type:
type: string
enum:
- added
- updated
- classification_changed
- score_changed
- deleted
changed_fields:
type: array
items:
type: string
before:
type:
- object
- 'null'
additionalProperties: true
after:
type:
- object
- 'null'
additionalProperties: true
occurred_at:
type: string
format: date-time
tombstone:
type: boolean
page:
type: object
properties:
limit:
type: integer
has_more:
type: boolean
next_cursor:
type: string
description: Opaque polling cursor returned even when has_more is false.
retention:
type: object
properties:
days:
type: integer
enum:
- 30
earliest_guaranteed_at:
type: string
format: date-time
metadata:
$ref: '#/components/schemas/Metadata'
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.
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'
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.