Skip to main content
POST
/
api
/
v1
/
projects
curl -X POST https://api.initrepo.com/v1/projects \
  -H "Authorization: Bearer ir_live_your_api_key" \
  -H "Content-Type: application/json" \
  -H "API-Version: v1.0" \
  -d '{
    "projectIdea": "Build a modern e-commerce platform with AI recommendations",
    "projectType": "web",
    "features": [
      {
        "name": "Product Catalog",
        "description": "Display products with search and filtering capabilities"
      },
      {
        "name": "Shopping Cart",
        "description": "Add/remove items, calculate totals, apply discounts"
      }
    ],
    "integrations": ["stripe", "sendgrid"],
    "format": "full",
    "webhookUrl": "https://your-app.com/webhooks/initrepo",
    "design": {
      "description": "Modern, clean design with dark mode support",
      "figmaUrl": "https://figma.com/design/your-design-link"
    }
  }'
{
  "success": true,
  "data": {
    "projectId": "550e8400-e29b-41d4-a716-446655440000",
    "status": "in_progress",
    "estimatedCompletionMs": 180000
  }
}
Create a new project for AI-powered generation. This endpoint initiates an asynchronous process that generates comprehensive project documentation.

Request

curl -X POST https://api.initrepo.com/v1/projects \
  -H "Authorization: Bearer ir_live_your_api_key" \
  -H "Content-Type: application/json" \
  -H "API-Version: v1.0" \
  -d '{
    "projectIdea": "Build a modern e-commerce platform with AI recommendations",
    "projectType": "web",
    "features": [
      {
        "name": "Product Catalog",
        "description": "Display products with search and filtering capabilities"
      },
      {
        "name": "Shopping Cart",
        "description": "Add/remove items, calculate totals, apply discounts"
      }
    ],
    "integrations": ["stripe", "sendgrid"],
    "format": "full",
    "webhookUrl": "https://your-app.com/webhooks/initrepo",
    "design": {
      "description": "Modern, clean design with dark mode support",
      "figmaUrl": "https://figma.com/design/your-design-link"
    }
  }'

Request Body

projectIdea
string
required
Project description (10-1000 characters). Should clearly describe what you want to build.
projectType
enum
required
Type of project to create. Options: web, mobile, mcp.
features
array
Array of project features (max 20). Each feature should have a name and description.
integrations
array
Array of integration names (max 10). Valid integrations include payment processors, email services, etc.
format
enum
default:"full"
Response format level. Options: full, summary, minimal.
webhookUrl
string
HTTPS webhook URL for completion notifications. Must be HTTPS and not a private IP.
design
object
Design requirements including description and Figma links.

Response

{
  "success": true,
  "data": {
    "projectId": "550e8400-e29b-41d4-a716-446655440000",
    "status": "in_progress",
    "estimatedCompletionMs": 180000
  }
}
success
boolean
Indicates if the request was successful.
data.projectId
string
Unique identifier for the created project.
data.status
string
Current status of the project (always “in_progress” for new projects).
data.estimatedCompletionMs
integer
Estimated time in milliseconds until project completion.

Error Responses

Validation Error (422)

Authentication Error (401)

Insufficient Credits (402)

Rate Limit Exceeded (429)

Rate Limits

This endpoint is rate limited to 100 requests per minute per API key.

Cost

This operation consumes 15,000 credits for live keys. Test keys consume no credits.

Authorizations

Authorization
string
header
required

Bearer token authentication using API keys (ir_live_* or ir_test_*)

Body

application/json
projectIdea
string
required

Project description (10-1000 characters)

Required string length: 10 - 1000
Example:

"Build a modern e-commerce platform with AI recommendations"

projectType
enum<string>
required

Type of project to create

Available options:
web,
mobile,
mcp
Example:

"web"

features
object[]

Array of project features (optional)

Maximum array length: 20
integrations
string[]

Array of integration names (optional)

Maximum array length: 10
Example:
["stripe", "sendgrid"]
format
enum<string>
default:full

Response format level

Available options:
full,
summary,
minimal
Example:

"full"

webhookUrl
string<uri>

HTTPS webhook URL for completion notifications (optional)

Example:

"https://your-app.com/webhooks/initrepo"

design
object

Design requirements (optional)

Response

Project creation started successfully

success
boolean
Example:

true

data
object