CoreStory Discovery API

The discovery API from CoreStory — 3 operation(s) for discovery.

Operations 3

GET /api/discovery/{prd_id}/identify-core-features Get core application features #
GET /api/discovery/{prd_id}/questions Get suggested questions about the codebase #
GET /api/discovery/{project_id}/suggested-questions Get Suggested Questions for discovery #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/corestory-discovery-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API 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 Specification

corestory-discovery-api-openapi.yml Raw ↑
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.'
  version: 1.26.2
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:
    ErrorSchema:
      properties:
        error:
          $ref: '#/components/schemas/ErrorBody'
      type: object
      required:
      - error
      title: ErrorSchema
    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
    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
    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.
      type: object
      required:
      - message
      - type
      title: ErrorBody
    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
  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
  - github_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