The analysis endpoints are the core of the AI Startup Analyzer platform. They allow you to submit a startup idea for multi-agent AI processing, track processing progress, retrieve completed reports broken down across 13 strategic dimensions, regenerate any individual section on demand, chat conversationally with AI about your results, and inspect your plan’s usage limits. Every endpoint underDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/Abbaddii-99/AI-Startup-Analyzer/llms.txt
Use this file to discover all available pages before exploring further.
/analysis requires a valid accessToken cookie — see the Authentication guide for how to obtain one. State-changing requests (POST, DELETE) also require an X-XSRF-TOKEN header — see the CSRF section.
GET /analysis/csrf-token
Generates a cryptographically random CSRF token, sets it as a readableXSRF-TOKEN cookie, and returns it in the response body. Call this before any POST or DELETE request to /analysis.
This endpoint does require authentication (the accessToken cookie), but does not require a CSRF header itself.
Response
A 64-character hex string generated from 32 cryptographically random bytes. Use this value as the
X-XSRF-TOKEN header on subsequent state-changing requests.POST /analysis
Submits a startup idea for analysis. The server checks your plan’s monthly limit, creates anAnalysis record with status PENDING, enqueues it for multi-agent processing, and returns the new record immediately. Processing happens asynchronously — use GET /analysis/:id/progress to track completion.
Requires: accessToken cookie + X-XSRF-TOKEN header.
Request Body
The startup idea to analyze. Must be at least 10 characters and no more than 2000 characters. Characters `< > ” ’ “ are stripped, and prompt-injection patterns are removed before the idea is processed.
Response
CUID identifier for the newly created analysis. Use this in all subsequent calls.
The sanitized idea text as stored.
Initial value is always
"PENDING". Transitions to PROCESSING, then COMPLETED or FAILED.The ID of the authenticated user who owns this analysis.
Empty string on creation; populated as agents complete.
ISO 8601 timestamp of when the analysis was created.
ISO 8601 timestamp of the last update.
Errors
| Status | Condition |
|---|---|
400 Bad Request | idea field is missing, not a string, or shorter than 10 characters after trimming |
401 Unauthorized | Missing or invalid accessToken cookie |
403 Forbidden | Missing or invalid X-XSRF-TOKEN header |
409 Conflict | Monthly analysis limit reached for your current plan (FREE: 3, PRO: 50, TEAM: 999) |
GET /analysis/:id/progress
Returns the current processing progress for an analysis. Poll this endpoint repeatedly untilstatus is COMPLETED or FAILED. For completed analyses the server returns progress: 100 without hitting the job queue; for failed analyses it returns progress: 0.
Requires: accessToken cookie. No CSRF token needed (GET request).
Path Parameters
The CUID of the analysis to check.
Response
One of
PENDING, PROCESSING, COMPLETED, or FAILED.An integer from
0 to 100 representing the percentage of agent steps completed. 100 when COMPLETED; 0 when FAILED.GET /analysis
Returns a paginated list of all analyses belonging to the authenticated user, ordered by most recently created first. Only summary fields are returned (not the full agent results). Requires:accessToken cookie.
Query Parameters
Number of records to skip for pagination. Defaults to
0.Number of records to return. Defaults to
20, maximum 50.Response
An array of analysis summary objects:CUID of the analysis.
The startup idea text.
Current status:
PENDING, PROCESSING, COMPLETED, or FAILED.Composite AI-assigned score (0–100).
null until the analysis completes.Market demand sub-score.
null until complete.Profit potential sub-score.
null until complete.ISO 8601 creation timestamp.
GET /analysis/:id
Returns the full analysis record for a single analysis, including all agent result fields. Agent results are stored as JSON strings in the database; they are returned as parsed objects in the response. Requires:accessToken cookie. The analysis must belong to the authenticated user.
Path Parameters
The CUID of the analysis to retrieve.
Response
The fullAnalysis object with all fields populated (those not yet generated remain null):
CUID identifier.
The original startup idea text.
PENDING | PROCESSING | COMPLETED | FAILEDDeep multi-dimension viability assessment including market opportunity, competitive analysis, target audience fit, financial feasibility, and risk assessment scores.
TAM/SAM/SOM sizing, growth trends, and geographic opportunities.
Direct and indirect competitors with strengths, weaknesses, and pricing.
Product name, tagline, core features (prioritized), KPIs, development complexity, and estimated time.
Recommended monetization model and pricing tiers.
Marketing channels, communities, partnerships, and growth hacks.
Risk factors and mitigation strategies.
Development and launch roadmap.
Business model canvas breakdown.
Vision and mission statements.
Brand positioning, voice, and identity recommendations.
Budget estimation across development, marketing, and operations.
Composite score 0–100.
Market demand sub-score.
Competition intensity sub-score.
Execution difficulty sub-score.
Profit potential sub-score.
ISO 8601 creation timestamp.
ISO 8601 last-updated timestamp.
curl
GET /analysis/:id/idea-analysis
Returns only theideaAnalysis section of a completed analysis — a lightweight alternative to fetching the full record when you only need the core idea breakdown.
Requires: accessToken cookie. The analysis must belong to the authenticated user.
Path Parameters
The CUID of the analysis whose idea-analysis section you want to retrieve.
Response
Returns theideaAnalysis object if it has been generated, or null if the analysis is still pending or the section has not yet been produced.
One-paragraph summary of the startup idea.
The core problem the idea is solving.
List of target user personas identified for the idea.
Industry classification for the startup.
Key use cases for the product or service.
DELETE /analysis/:id
Permanently deletes an analysis record and all its agent results. This action is irreversible. Requires:accessToken cookie + X-XSRF-TOKEN header.
Path Parameters
The CUID of the analysis to delete. Must belong to the authenticated user.
Response
true when the record was successfully deleted.POST /analysis/:id/retry
Re-queues a failed analysis for processing. Only analyses withstatus = "FAILED" can be retried. The status is reset to PENDING and a new job is added to the queue with a unique retry job ID to prevent collisions.
Requires: accessToken cookie + X-XSRF-TOKEN header.
Path Parameters
The CUID of the failed analysis to retry.
Response
true when the retry was successfully enqueued.After calling retry, use
GET /analysis/:id/progress to track the new processing run. A retry does not count against your monthly analysis limit.POST /analysis/:id/regenerate/:section
Regenerates a single section of a completed analysis using the corresponding AI agent, and updates the stored value. This is useful for refreshing stale results or getting alternative outputs without re-running the full analysis pipeline. Requires:accessToken cookie + X-XSRF-TOKEN header.
Path Parameters
The CUID of the analysis whose section should be regenerated.
The section slug to regenerate. Must be one of the values listed below.
Section Slugs
| Slug | Description |
|---|---|
idea-analysis | Core problem, target users, industry, and use cases |
comprehensive-idea-analysis | Multi-dimension viability scoring across 6 categories |
market-research | TAM/SAM/SOM, growth trends, geographic opportunities |
competitor-analysis | Direct and indirect competitors with SWOT breakdown |
mvp | Product name, features (MoSCoW priority), KPIs, feasibility |
monetization | Recommended model, pricing tiers, reasoning |
go-to-market | Channels, communities, partnerships, growth hacks |
risk-radar | Risk factors and mitigation strategies |
roadmap | Phased development and launch roadmap |
business-model | Business model canvas |
vision-mission | Vision and mission statement generation |
brand-identity | Brand positioning, voice, and visual identity |
budget | Budget estimation across cost categories |
Response
Returns an object with a single key matching the regenerated section’s database field name and the newly generated result as the value.POST /analysis/chat
Sends a conversational message to the AI, optionally grounded in a specific analysis report as context. Returns a concise AI-generated reply. Ideal for follow-up questions, clarifications, or exploring specific aspects of a report. Rate limit: 10 requests per 60 seconds per user. Requires:accessToken cookie + X-XSRF-TOKEN header.
Request Body
The question or message to send to the AI assistant. Maximum 500 characters after trimming. Must not be empty.
The analysis report content to use as grounding context for the AI response. Maximum 3000 characters. Pass a stringified summary or the relevant section text from a completed analysis.
Optional CUID of an analysis. When provided, the server verifies the analysis belongs to the authenticated user before processing the message. This is recommended to prevent context injection.
Response
The AI assistant’s response to the message, grounded in the provided context.
Errors
| Status | Condition |
|---|---|
400 Bad Request | message is empty or missing; analysisId provided but analysis not found |
429 Too Many Requests | More than 10 chat requests in the past 60 seconds |
GET /analysis/me/plan
Returns the authenticated user’s current subscription plan, the number of analyses used this calendar month, and the monthly limit for their plan. Requires:accessToken cookie.
Response
The user’s current plan:
"FREE", "PRO", or "TEAM".Number of analyses created in the current calendar month.
Maximum analyses allowed per month for the current plan. FREE = 3, PRO = 50, TEAM = 999.
The monthly usage counter resets at the start of each calendar month. If you receive a
409 Conflict from POST /analysis, check this endpoint to confirm your current usage and consider upgrading your plan.