CoreStory Discovery API
The discovery API from CoreStory — 3 operation(s) for discovery.
The discovery API from CoreStory — 3 operation(s) for discovery.
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-discovery-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: Crowdbotics API Documentation Discovery 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: Discovery
paths:
/api/discovery/{prd_id}/identify-core-features:
get:
tags:
- Discovery
summary: Get core application features
description: 'Analyzes the codebase to identify the core features and functionalities of the application.
This endpoint provides a focused view of the main features without generating other document sections.
The response includes:
- Feature name
- Feature description
- Feature category'
operationId: get_core_features
parameters:
- name: prd_id
in: path
required: true
schema:
type: integer
title: Prd Id
responses:
'200':
description: List of core application features
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Feature-Output'
title: Response Get Core Features
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorSchema'
'500':
description: Internal server error
/api/discovery/{prd_id}/questions:
get:
tags:
- Discovery
summary: Get suggested questions about the codebase
description: 'Analyzes the codebase to generate relevant questions that users can ask about the system.
These questions are designed to help users explore and understand the codebase through the graph visualization.
The response includes:
- Question text
- Question category
- Question complexity level
- Total number of questions
- Requested limit
Parameters:
- limit: Maximum number of questions to return (default: 10)
- include_prd_context: Whether to use PRD context in generating questions (default: false)'
operationId: get_discovery_questions
parameters:
- name: prd_id
in: path
required: true
schema:
type: integer
title: Prd Id
- name: limit
in: query
required: false
schema:
type: integer
maximum: 50
minimum: 1
description: Maximum number of questions to return
default: 10
title: Limit
description: Maximum number of questions to return
- name: include_prd_context
in: query
required: false
schema:
type: boolean
description: Whether to use PRD context in generating questions
default: false
title: Include Prd Context
description: Whether to use PRD context in generating questions
responses:
'200':
description: List of suggested questions about the codebase
content:
application/json:
schema:
$ref: '#/components/schemas/QuestionsResponse'
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorSchema'
'500':
description: Internal server error
/api/discovery/{project_id}/suggested-questions:
get:
tags:
- Discovery
summary: Get Suggested Questions for discovery
description: 'Retrieve suggested questions for a specific project, optionally filtered by persona and section.
Args:
project_id (int): The ID of the project.
persona (str, optional): Filter questions by persona.
section (str, optional): Filter questions by section.
Returns:
SuggestedQuestionListResponse: A list of questions matching the criteria.'
operationId: get_suggested_questions
parameters:
- name: project_id
in: path
required: true
schema:
type: integer
title: Project Id
- name: persona
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Filter by persona
title: Persona
description: Filter by persona
- name: section
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Filter by section
title: Section
description: Filter by section
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/SuggestedQuestionListResponse'
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
Feature-Output:
properties:
name:
type: string
title: Name
description: Concise feature name in plain text, no markdown.
description:
type: string
title: Description
description: Plain text description of the feature. No markdown formatting.
category:
type: string
title: Category
description: Category or Epic of the identified feature.
type: object
required:
- name
- description
- category
title: Feature
SuggestedQuestionResponse:
properties:
id:
type: integer
title: Id
text:
type: string
title: Text
persona:
anyOf:
- type: string
- type: 'null'
title: Persona
section:
anyOf:
- type: string
- type: 'null'
title: Section
created_at:
type: string
format: date-time
title: Created At
updated_at:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Updated At
type: object
required:
- id
- text
- persona
- section
- created_at
- updated_at
title: SuggestedQuestionResponse
Question:
properties:
text:
type: string
title: Text
description: The question text
category:
type: string
title: Category
description: Category of the question (e.g., 'relationships', 'architecture', 'features')
complexity:
type: string
title: Complexity
description: Complexity level of the question (e.g., 'beginner', 'intermediate', 'advanced')
type: object
required:
- text
- category
- complexity
title: Question
description: Model for a suggested question
QuestionsResponse:
properties:
questions:
items:
$ref: '#/components/schemas/Question'
type: array
title: Questions
description: List of suggested questions
total:
type: integer
title: Total
description: Total number of questions
limit:
type: integer
title: Limit
description: Maximum number of questions requested
type: object
required:
- questions
- total
- limit
title: QuestionsResponse
description: Response model for the questions endpoint
SuggestedQuestionListResponse:
properties:
suggested_questions:
items:
$ref: '#/components/schemas/SuggestedQuestionResponse'
type: array
title: Suggested Questions
total:
type: integer
title: Total
type: object
required:
- suggested_questions
- total
title: SuggestedQuestionListResponse
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.
ErrorSchema:
properties:
error:
$ref: '#/components/schemas/ErrorBody'
type: object
required:
- error
title: ErrorSchema
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)