How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

CoreStory projects API

The projects API from CoreStory — 40 operation(s) for projects.

CoreStory projects API is one of 47 APIs that CoreStory publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Project. The published artifact set on APIs.io includes an OpenAPI specification and an API reference.

This API exposes 46 operations across 40 paths, and defines 89 schemas. It is described by OpenAPI 3.2.0, at version 1.26.2.

Requests are made against a single base URL, /.

46 operations 40 paths 89 schemas 2 DELETE25 GET5 PATCH14 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.26.2
Base URL
https://c2s.corestory.ai
Authentication
HTTP Bearer
Resource Areas
1

Authentication & Security 1

CoreStory projects API declares 1 security scheme for authenticating requests. It accepts HTTP bearer tokens (JWT) (BearerAuth). By default, every request must be authenticated.

  • BearerAuth — Enter the Bearer token from Clerk authentication

Paths & Operations 46

Across 40 paths, the API surfaces 46 operations — 2 DELETE, 25 GET, 5 PATCH, 14 POST. Each is listed below with its method, path, parameters, and response codes.

projects 46
POST
/api/projects
Create a new project with auto-generated PRD
create_project body → 201default
GET
/api/projects
Get organization projects with pagination
list_projects 6 params → 200default
POST
/api/projects/create-and-generate
Create a new project with auto-generated PRD and ingestion
create_project_and_generate body → 201default
PATCH
/api/projects/{project_id}
Update project
update_project 1 param body → 200default
GET
/api/projects/{project_id}
Get project details
get_project 1 param → 200default
POST
/api/projects/{project_id}/transfer
Transfer project to another organization
transfer_project 1 param body → 200default
GET
/api/projects/{project_id}/status
Lightweight polling status for ingestion and generation jobs.
get_project_status 1 param → 200default
GET
/api/projects/{project_id}/pending-commits
Get pending commits for a project
get_pending_commits 3 params → 200default
GET
/api/projects/{project_id}/health
Get project health signals, code quality, and security findings
get_project_health 1 param → 200default
GET
/api/projects/{project_id}/tech-specdeprecated
Get the project's Tech Spec (not base PRD) sections data.
get_tech_spec 2 params → 200default
GET
/api/projects/{project_id}/prd/statusdeprecated
Get the project's PRD generation status.
get_prd_status 1 param → 200default
GET
/api/projects/{project_id}/tech-spec/statusdeprecated
Get the project's tech-spec generation status.
get_tech_spec_status 1 param → 200default
GET
/api/projects/{project_id}/prddeprecated
Get the project's PRD (not tech spec) sections data.
get_prd 2 params → 200default
DELETE
/api/projects/{project_id}/delete
Delete a project
delete_project 1 param → 204default
GET
/api/projects/{project_id}/metrics/processing/summary
Get latest ingestion/generation metrics for a project
get_project_metrics_summary 1 param → 200default
POST
/api/projects/upload-repository
Upload repository files and create project
upload_repository body → 201default
POST
/api/projects/upload-repository-from-pre-ingestion
Create project from an existing pre-ingestion upload
upload_repository_from_pre_ingestion body → 201default
POST
/api/projects/{project_id}/prd/generatedeprecated
Generate the PRD sections (no Tech Spec sections) for the project.
generate_prd 4 params body → 200default
POST
/api/projects/{project_id}/tech-spec/generatedeprecated
Generate the Tech Spec sections (no base PRD sections) for the project.
generate_tech_spec 4 params body → 200default
POST
/api/projects/{project_id}/prd/generate-alldeprecated
Generate all PRD and tech spec sections for the project.
generate_all_prd_sections 1 param body → 200default
GET
/api/projects/{project_id}/prd/context
Get the context for the project's latest PRD.
get_prd_context 1 param → 200default
POST
/api/projects/{project_id}/prd/context
Set or update the context for the project's latest PRD.
set_prd_context 1 param body → 200default
GET
/api/projects/{project_id}/prd/user-stories/catalogdeprecated
Get a catalog of user stories items for UI faceted browsing.
get_user_stories_catalog 1 param → 200default
GET
/api/projects/{project_id}/tech-spec/tech-user-stories/catalogdeprecated
Get a catalog of user stories items for UI faceted browsing.
get_tech_user_stories_catalog 1 param → 200default
POST
/api/projects/{project_id}/reingestion/analyze
Start pre-reingestion analysis for an existing project
start_reingestion_analysis 1 param → 200default
GET
/api/projects/{project_id}/reingestion/analyze/{job_id}/status
Get reingestion analysis job status
get_reingestion_status 2 params → 200default
GET
/api/projects/{project_id}/reingestion/analyze/{job_id}/coverage
Get coverage results from reingestion analysis
get_reingestion_coverage 2 params → 200default
GET
/api/projects/{project_id}/reingestion/analyze/{job_id}/excluded-files
Get excluded file paths from reingestion analysis
get_reingestion_excluded_files 5 params → 200default
GET
/api/projects/{project_id}/reingestion/analyze/{job_id}/included-files
Get included file paths from reingestion analysis
get_reingestion_included_files 5 params → 200default
DELETE
/api/projects/{project_id}/reingestion/analyze/{job_id}
Delete a reingestion analysis job
delete_reingestion_job 2 params → 204default
POST
/api/projects/{project_id}/reingestion/trigger
Trigger full reingestion for an existing project
trigger_reingestion 1 param body → 200default
GET
/api/projects/{project_id}/ingestion-events
List ingestion events for a project
list_ingestion_events 3 params → 200default
GET
/api/projects/{project_id}/ingestion-events/{event_id}/doc-impact
Doc-section impact (added/modified/removed) for an ingestion event
get_ingestion_event_doc_impact 2 params → 200default
POST
/api/projects/{project_id}/clone
Clone Project
clone_project 1 param → 200default
POST
/api/projects/{project_id}/prd/{section_name}/generatedeprecated
Generate a specific PRD section
generate_prd_section 2 params body → 200default
POST
/api/projects/{project_id}/tech-spec/{section_name}/generatedeprecated
Generate a specific Tech Spec section
generate_tech_spec_section 2 params body → 200default
PATCH
/api/projects/{project_id}/prd/{section_name}deprecated
Update the specified PRD section.
update_prd_section 3 params body → 200default
GET
/api/projects/{project_id}/prd/{section_name}deprecated
Get the specified PRD section.
get_prd_section 10 params → 200default
PATCH
/api/projects/{project_id}/tech-spec/{section_name}deprecated
Update the specified Tech Spec section.
update_tech_spec_section 3 params body → 200default
GET
/api/projects/{project_id}/tech-spec/{section_name}deprecated
Get the specified Tech Spec section.
get_tech_spec_section 10 params → 200default
GET
/api/projects/{project_id}/file-manifest
Get the complete file manifest for a project
get_project_file_manifest 3 params → 200default
GET
/api/projects/{project_id}/file-content
Stream file content from vector store by file path
get_file_content 4 params → 200default404
GET
/api/projects/{project_id}/file-content/metadata
Get file metadata from vector store
get_file_content_metadata 4 params → 200default404
GET
/api/projects/{project_id}/config
Get project operator config (stored overrides + effective values)
get_project_config 1 param → 200default
PATCH
/api/projects/{project_id}/config
Update project operator config (partial merge)
update_project_config 1 param body → 200default
PATCH
/api/projects/{project_id}/sync-mode
Set project sync mode (manual or auto)
update_project_sync_mode 1 param body → 200default

Schemas 89

The contract defines 89 schemas that model the data the API accepts and returns. The most detailed are TechSpecSectionsResponse (19 properties), TechSpecSingleSectionResponse (19 properties), FileContentMetadata (15 properties), PRDSectionsResponse (15 properties). Each schema is shown below with its type and property counts.

IngestionEventResponse
object
15 properties 5 required
GeneratePRDSectionRequest
object
2 properties
DocImpactGroup
object
Section-level changes for a single document (PRD or Tech Spec).
3 properties
GenerateTechSpecRequest
object
3 properties
Reference
object
4 properties 1 required
ProjectListResponse
object
Response model for paginated project list
2 properties 2 required
FileManifestResponse
object
Complete file manifest for a project.
6 properties 5 required
PaginatedFilePathResponse
object
2 properties 2 required
GenerateTechSpecCustomPromptItem
object
3 properties 2 required
PRDResponse
object
Response model for PRD data
6 properties 6 required
ReingestionAnalysisResponse
object
Response for pre-reingestion analysis
5 properties 2 required
CIUEstimate
object
Estimated CIU cost for reingestion.
2 properties 2 required
CodeQualityAssessmentResponse
object
2 properties
PRDCustomPromptRequest
object
2 properties 2 required
IngestionMetricsCountsResponse
object
11 properties
SyncModeResponse
object
Response after changing a project's sync mode.
4 properties 2 required
ProjectListItem
object
Response model for a single project in list view
9 properties 6 required
FileContentMetadata
object
Metadata response for file content retrieval.
15 properties 2 required
GeneratePRDRequest
object
2 properties
TechnicalRequirements
object
4 properties 2 required
ReingestionTriggerResponse
object
Response when reingestion is triggered
7 properties 2 required
TechSpecSingleSectionResponse
object
Used for endpoint to get a single section of a tech spec. Only 1 section is ever output, endpoint sets "don't output None". AKA: Only output the property if it…
19 properties 2 required
PRDContextResponse
object
Response model for PRD context.
2 properties 2 required
Feature-Input
object
Model for a feature in the technical specification.
3 properties 2 required
InterfaceInfo
object
Interface name and summary.
2 properties 1 required
CodeQualityConcern
object
3 properties 3 required
SourceType
string
Enum-like class for source types.
SecurityFindingsResponse
object
2 properties 1 required
ProjectCreateAndGenerateResponse
object
Response model for project data with ingestion status
8 properties 3 required
IngestionMetricsModelsResponse
object
LLM models and config used for each pipeline step.
12 properties
ProjectConfig
object
Per-project overrides of env-default behavior. All keys optional.
1 property
LanguageInfo
object
Language information with code and native display name.
2 properties 2 required
NewReference
object
3 properties 1 required
FunctionInfo
object
Function name and summary.
2 properties 1 required
DocImpactResponse
object
1 property
ProjectCreateResponse
object
Response model for project creation with auto-generated PRD
1 property 1 required
PaginatedResponse_IngestionEventResponse_
object
2 properties 2 required
SyncMode
string
Whether a project syncs manually or automatically with its repo.
CreateFromPreIngestionRequest
object
5 properties 1 required
ProjectTransferResponse
object
Response model for project transfer
4 properties 4 required
GenerationStatusResponse
object
PRD + tech-spec generation status.
4 properties 2 required
PRDContextRequest
object
Request model for setting PRD context.
1 property 1 required
HealthSignalsResponse
object
3 properties 3 required
PreIngestionStatus
string
PreIngestion status enumeration
TechnicalSpecContext
object
Context model for technical specification generation.
2 properties
ProjectDetailResponse
object
Extended response for project detail endpoint with document timestamps
13 properties 7 required
PRDSectionsResponse
object
15 properties 2 required
PaginationMeta
object
4 properties 4 required
BasicSuccessResponse
object
Use this for returns for deletes and patches. UI ALWAYS needs some payload return. This just standarizes it.
1 property
FileChanges
object
Categorized file paths changed between last ingestion and latest commit.
3 properties
PRDStepsDashedEnum
string
All PRD steps with dashed values.
ProjectTransferRequest
object
Request model for transferring a project to a different organization (admin only)
1 property 1 required
PRDSingleSectionResponse
object
Used for endpoint to get a single section of a PRD. Only 1 section is ever output, endpoint sets "don't output None". AKA: Only output the property if it exist…
15 properties 2 required
JobStatusSummary
object
Lightweight status + progress for a single job type (ingestion, PRD generation, etc.).
5 properties 1 required
GenerateAllRequest
object
1 property
ProjectStatusResponse
object
Lightweight polling response with status + progress for all job types.
2 properties 2 required
PendingCommitsResponse
object
Response for the pending commits endpoint.
3 properties 3 required
IngestionMetricsTimingsResponse
object
5 properties
IngestionMetricsSummaryResponse
object
12 properties 1 required
ProjectHealthResponse
object
Combined response for the GET /projects/{projectid}/health endpoint.
3 properties
FileChangeSummary
object
Summary counts of file changes between last ingestion and latest commit.
3 properties
ProjectCreateRequest
object
Request model for creating a new project
1 property 1 required
ProjectUpdateResponse
object
Response model for project update
3 properties 3 required
Body_upload_repository
object
3 properties 2 required
JobStatus
string
Job status enumeration
ProjectIngestionInfo
object
Grouped ingestion state for a project.
8 properties
ErrorBody
object
3 properties 2 required
ReingestionTriggerRequest
object
Request to trigger reingestion
4 properties
GeneratePRDCustomPromptItem
object
3 properties 2 required
FileManifestItem
object
A single file entry in the project file manifest.
9 properties 4 required
ProjectUpdateRequest
object
Request model for updating a project
3 properties
HealthIndicator
object
5 properties 4 required
ProjectCreateAndGenerateRequest
object
Request model for creating a new project
7 properties 1 required
ProjectConfigResponse
object
Config endpoint payload: stored overrides plus resolved effective values.
3 properties 3 required
SecurityFinding
object
4 properties 3 required
ReingestionAnalysisCoverageResponse
object
Coverage results from analysis, including file change summary and CIU estimate.
11 properties 6 required
TechSpecStepsDashedEnum
string
All tech spec steps with dashed values.
TechSpecSectionsResponse
object
19 properties 2 required
DocImpact
object
Doc-section changes an ingestion event produced, grouped by document.
2 properties
PRDReferenceContext
object
A PRD section that references this file.
4 properties 1 required
ProjectResponse
object
Response model for project data with nested PRD
5 properties 5 required
TriggerType
string
How an ingestion event was triggered.
ErrorSchema
object
1 property 1 required
PRDGenerateResponse
object
Response model for PRD generation
3 properties 3 required
CodeQualityStrength
object
2 properties 2 required
SyncModeUpdate
object
Request to change a project's sync mode.
1 property 1 required
UserStory
object
8 properties 7 required
ClassInfo
object
Class name and summary.
2 properties 1 required
PendingCommitItem
object
A single pending commit that arrived via webhook since the last ingestion.
7 properties 1 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

corestory-projects-api-openapi.yml Raw ↑

Other APIs CoreStory publishes across the network.

CoreStory admin API
CoreStory api_debugging API
CoreStory api_key_management API
CoreStory artifacts API
CoreStory billing API
CoreStory cache API
CoreStory ciu API
CoreStory clerk_authentication API
CoreStory context API
CoreStory conversations API
CoreStory discovery API
CoreStory document_formatters API
Where this information came from

This is an independent, third-party profile of CoreStory projects API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.