CoreStory Cache API
The cache API from CoreStory — 6 operation(s) for cache.
The cache API from CoreStory — 6 operation(s) for cache.
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/corestory:corestory-cache-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: Crowdbotics API Documentation Cache API
description: '# CoreStory API Overview
The CoreStory API provides programmatic access to structured insights derived from software source code. It is designed for engineering, architecture, and product teams who need to extract business logic, technical specifications, architectural relationships, and system-level context from complex or legacy codebases. By interfacing directly with CoreStory API, users can:
- Generate full Product Requirements Documents (PRDs) from a codebase
- Extract detailed Technical Specifications for modernization or migration
- Query a codebase using natural language to surface implementation details, logic paths, dependencies, and architectural insights
- Construct and visualize knowledge graphs of systems, components, and relationships
- Ingest, store, and retrieve content from a vector store for AI-powered retrieval-augmented generation (RAG) workflows
CoreStory is especially valuable in contexts where:
- Codebases are large, unstructured, or under-documented
- Product and engineering teams are onboarding to unfamiliar systems
- Technical stakeholders require visibility into system design or feature coverage
- Modernization, replatforming, or M&A due diligence is underway
The API can be integrated into existing CI/CD pipelines, internal developer portals, architecture review boards, product planning processes, or documentation automation workflows. All endpoints support secure authentication and are designed for high-availability, asynchronous workloads. Output formats include JSON, Markdown, and PDF, with flexible formatting options for downstream consumption. For step-by-step usage instructions and workflows, refer to the CoreStory API Quick Start Guide. ## Features
* **Document Generation**
* Generate complete Product Requirements Documents (PRD)
* Generate Technical Specifications
* Generate individual document sections (executive overview, user personas, etc.)
* Format documents in JSON or Markdown
* **Vector Store Management**
* Ingest and manage documents in vector store
* Query and retrieve document content
* Manage document embeddings
* **Context Management**
* Manage context for different document types
* Set and retrieve PRD context
* Support for future context types (technical specs, user stories, etc.)
* **Knowledge Graph**
* Generate knowledge graphs from codebase queries
* Visualize relationships between code entities
* Analyze code structure and dependencies
* **API Endpoints**
* `/api/documents/*` - Document generation and formatting
* `/api/generate/*` - Document formatting utilities
* `/api/vector-store/*` - Vector store management
* `/api/agents/*` - AI agent operations
* `/api/context/*` - Context management for documents
* `/api/graph/*` - Knowledge graph generation and analysis
Note: JWT authentication support coming soon. All endpoints currently provide detailed OpenAPI documentation. * **Observability**
* OpenTelemetry instrumentation for distributed tracing
* Prometheus metrics endpoint at `/metrics`
* Comprehensive request/response tracking
* Custom business metrics
# CoreStory System Architecture
This document provides a high-level overview of how the CoreStory platform ingests, analyzes, and serves structured software intelligence through its API. The system is designed to process codebases and related technical artifacts in order to generate product specifications, technical documents, and knowledge graph representations. ---
## Core Components
### 1. **Ingestion Layer**
- Accepts Git URLs, file uploads, or local archives
- Extracts source files, documentation, and metadata
- Initiates chunking and embedding via the vector store pipeline
### 2. **Vector Store and Context Engine**
- Stores chunked and embedded documents
- Supports semantic search and document retrieval
- Feeds LLMs with scoped context for generation and reasoning
### 3.'
version: 1.33.0
servers:
- url: /
description: Current server
security:
- BearerAuth: []
tags:
- name: Cache
paths:
/api/graph/cache/stats:
get:
tags:
- Cache
summary: Get cache statistics
description: Get statistics about the graph query cache including hit/miss rates and entry counts.
operationId: get_cache_stats
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorSchema'
/api/graph/cache:
delete:
tags:
- Cache
summary: Clear cache
description: Clear the entire graph query cache, or remove a specific cache entry by key.
operationId: clear_cache
parameters:
- name: key
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Specific cache key to remove
title: Key
description: Specific cache key to remove
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorSchema'
/api/graph/cache/ttl:
put:
tags:
- Cache
summary: Update cache TTL
description: Update the cache Time To Live value. The new TTL applies to all future cache entries.
operationId: update_cache_ttl
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CacheTTLUpdate'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorSchema'
/api/graph/cache/entry/{cache_key}:
get:
tags:
- Cache
summary: Get detailed information about a specific cache entry
description: 'Retrieve detailed information about a specific cache entry using its cache key.
This includes the original request, cached response, and metadata about the cache entry.
The response includes:
* Original request parameters
* Cached response data
* Cache metadata (creation time, TTL, expiration status)
Example response:
```json
{
"cache_key": "abc123...",
"request": {
"query": "Show me the relationships between payment and vendor",
"max_nodes": 20,
"min_similarity": 0.3
},
"response": {
"nodes": [...],
"edges": [...],
"metadata": {...},
"summary": {...}
},
"metadata": {
"created_at": 1234567890.123,
"ttl_seconds": 3600,
"ttl_remaining": 1800.5,
"is_expired": false
}
}
```'
operationId: get_cache_entry
parameters:
- name: cache_key
in: path
required: true
schema:
type: string
description: The cache key to look up
title: Cache Key
description: The cache key to look up
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: object
additionalProperties: true
title: Response Get Cache Entry
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorSchema'
/api/graph/cache/dump:
get:
tags:
- Cache
summary: Dump the entire cache contents
description: 'Retrieve the complete contents of the cache, including all keys and values.
This endpoint returns detailed information about every cache entry, including:
* Cache keys
* Original requests
* Cached responses
* Metadata for each entry
This is useful for:
* Debugging cache issues
* Analyzing cache contents
* Backing up cache data
* Migrating cache data between instances'
operationId: dump_cache
responses:
'200':
description: Successful Response
content:
application/json:
schema:
additionalProperties: true
type: object
title: Response Dump Cache
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorSchema'
/api/graph/cache/set:
post:
tags:
- Cache
summary: Set cache entries
description: 'Set one or more cache entries using the same format as the dump endpoint.
This allows you to easily copy-paste the output from /api/graph/cache/dump
to restore or update cache entries.
The request should match the format of the dump endpoint:
```json
{
"entries": [
{
"cache_key": "abc123...",
"request": {
"query": "Show me the relationships between payment and vendor",
"max_nodes": 20,
"min_similarity": 0.3
},
"response": {
"nodes": [...],
"edges": [...],
"metadata": {...},
"summary": {...}
},
"metadata": {
"created_at": 1234567890.123,
"ttl_seconds": 3600,
"ttl_remaining": 1800.5,
"is_expired": false
}
}
]
}
```'
operationId: set_cache_entries
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CacheSetRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
additionalProperties: true
type: object
title: Response Set Cache Entries
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorSchema'
components:
schemas:
ErrorBody:
properties:
message:
type: string
title: Message
type:
type: string
title: Type
details:
additionalProperties: true
type: object
title: Details
description: Optional extra context for the error.
code:
anyOf:
- type: string
- type: 'null'
title: Code
description: Stable machine-readable code for clients that branch on the specific failure.
required_organization:
anyOf:
- $ref: '#/components/schemas/RequiredOrganization'
- type: 'null'
description: Set when the caller can retry after switching organization context.
type: object
required:
- message
- type
title: ErrorBody
CacheTTLUpdate:
properties:
ttl_seconds:
type: integer
exclusiveMinimum: 0.0
title: Ttl Seconds
description: New TTL value in seconds (must be positive)
example: 7200
type: object
required:
- ttl_seconds
title: CacheTTLUpdate
description: Request model for updating cache TTL
RequiredOrganization:
properties:
id:
type: string
title: Id
description: Clerk organization id the client should switch to.
name:
type: string
title: Name
description: Display name of that organization.
type: object
required:
- id
- name
title: RequiredOrganization
description: The organization a caller must be acting under before a denied request can succeed.
CacheSetRequest:
properties:
entries:
items:
$ref: '#/components/schemas/CacheEntry'
type: array
title: Entries
description: List of cache entries to set
type: object
required:
- entries
title: CacheSetRequest
description: Request model for setting cache entries
ErrorSchema:
properties:
error:
$ref: '#/components/schemas/ErrorBody'
type: object
required:
- error
title: ErrorSchema
CacheEntry:
properties:
cache_key:
type: string
title: Cache Key
description: The cache key
request:
additionalProperties: true
type: object
title: Request
description: The original request data
response:
additionalProperties: true
type: object
title: Response
description: The cached response data
metadata:
$ref: '#/components/schemas/CacheEntryMetadata'
description: Cache entry metadata
type: object
required:
- cache_key
- request
- response
- metadata
title: CacheEntry
description: Model for a single cache entry
CacheEntryMetadata:
properties:
created_at:
type: number
title: Created At
description: Timestamp when the entry was created
ttl_seconds:
type: integer
title: Ttl Seconds
description: TTL in seconds
ttl_remaining:
type: number
title: Ttl Remaining
description: Remaining TTL in seconds
is_expired:
type: boolean
title: Is Expired
description: Whether the entry has expired
type: object
required:
- created_at
- ttl_seconds
- ttl_remaining
- is_expired
title: CacheEntryMetadata
description: Metadata for a cache entry
securitySchemes:
BearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: Enter the Bearer token from Clerk authentication
x-tagGroups:
- name: Ingest Your Codebase
tags:
- vector_store
- projects
- pre_ingestion
- reingestion
- name: Generate Code Intelligence
tags:
- documents
- document_generation
- document_formatters
- prd
- prd_version
- tech_spec
- quality_metrics
- sample_projects
- name: Query Your Codebase
tags:
- conversations
- workflows
- discovery
- context
- artifacts
- name: Manage and Inspect Intelligence
tags:
- api_debugging
- events
- version
- files
- cache
- token_tracking
- name: Authenticate and Manage Access
tags:
- clerk_authentication
- git_webhooks
- github_integration
- organizations
- api_key_management
- mcp_token_management
- user
- name: (Advanced) Prompt Tuning
tags:
- prompts
- name: MCP Protocol
tags:
- mcp_protocol
- name: Administration
tags:
- admin
x-provenance:
method: harvested
publisher: CoreStory
source: https://c2s.corestory.ai/openapi.json
note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
stamped by stamp-openapi-provenance.py (roadmap#793)