Ideas
List Ideas
Section titled “List Ideas”GET /api/v1/ideas
Returns a paginated list of ideas. Use query parameters to filter.
Query Parameters
Section titled “Query Parameters”| Parameter | Type | Description |
|---|---|---|
status | string | Filter by status |
tag | string | Filter by tag name |
limit | number | Items per page (default 20, max 100) |
offset | number | Items to skip (default 0) |
curl "https://neuralrepo.com/api/v1/ideas?status=exploring&limit=10" \ -H "X-API-Key: nrp_YOUR_KEY"const res = await fetch( "https://neuralrepo.com/api/v1/ideas?status=exploring&limit=10", { headers: { "X-API-Key": "nrp_YOUR_KEY" } });const ideas = await res.json();Response 200 OK
[ { "id": 42, "title": "Add dark mode support", "body": "Users have requested a dark theme...", "status": "exploring", "source": "web", "source_url": null, "tags": ["ui", "feature-request"], "created_at": "2026-03-20T10:00:00Z", "updated_at": "2026-03-22T14:30:00Z" }]Create Idea
Section titled “Create Idea”POST /api/v1/ideas
Request Body
Section titled “Request Body”| Field | Type | Required | Description |
|---|---|---|---|
title | string | Yes | 1-200 characters |
body | string | No | Max 50,000 characters |
tags | string[] | No | Max 20 tags, each max 50 characters |
source_url | string | No | Valid URL, max 2,000 characters |
status | string | No | Initial status |
parent_id | number | No | Parent idea ID for nesting |
curl -X POST https://neuralrepo.com/api/v1/ideas \ -H "X-API-Key: nrp_YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{ "title": "Implement webhook notifications", "body": "Send HTTP callbacks when ideas change status.", "tags": ["backend", "integrations"] }'const res = await fetch("https://neuralrepo.com/api/v1/ideas", { method: "POST", headers: { "X-API-Key": "nrp_YOUR_KEY", "Content-Type": "application/json", }, body: JSON.stringify({ title: "Implement webhook notifications", body: "Send HTTP callbacks when ideas change status.", tags: ["backend", "integrations"], }),});const idea = await res.json();Response 201 Created
{ "id": 18, "title": "Implement webhook notifications", "body": "Send HTTP callbacks when ideas change status.", "status": "captured", "source": "api", "source_url": null, "tags": ["backend", "integrations"], "links": [], "relations": [], "processing": true, "created_at": "2026-03-24T09:00:00Z", "updated_at": "2026-03-24T09:00:00Z"}Get Idea
Section titled “Get Idea”GET /api/v1/ideas/:id
Returns a single idea with its tags, links, and relations.
Response 200 OK
{ "id": 18, "title": "Implement webhook notifications", "body": "Send HTTP callbacks when ideas change status.", "status": "captured", "source": "api", "source_url": null, "tags": ["backend", "integrations"], "links": [], "relations": [], "created_at": "2026-03-24T09:00:00Z", "updated_at": "2026-03-24T09:00:00Z"}Update Idea
Section titled “Update Idea”PATCH /api/v1/ideas/:id
All fields are optional. Only provided fields are updated.
Request Body
Section titled “Request Body”| Field | Type | Required | Description |
|---|---|---|---|
title | string | No | 1-200 characters |
body | string | No | Max 50,000 characters |
status | string | No | New status value |
parent_id | number | null | No | Set or remove parent (pass null to detach) |
tags | string[] | No | Replaces all tags; max 20, each max 50 characters |
Response 200 OK — Returns the updated idea object.
Delete Idea
Section titled “Delete Idea”DELETE /api/v1/ideas/:id
Permanently deletes the idea.
Response 200 OK — Returns { "success": true }.
Merge Ideas
Section titled “Merge Ideas”POST /api/v1/ideas/:id/merge
Merges another idea into the target idea. The absorbed idea’s body, tags, and relations are folded into the target.
Request Body
Section titled “Request Body”| Field | Type | Required | Description |
|---|---|---|---|
absorb_id | number | Yes | ID of the idea to absorb |
curl -X POST https://neuralrepo.com/api/v1/ideas/42/merge \ -H "X-API-Key: nrp_YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{"absorb_id": 18}'Response 200 OK — Returns the merged idea.
Develop Idea
Section titled “Develop Idea”POST /api/v1/ideas/:id/develop
Uses AI to generate a detailed specification from the idea. Requires a BYOK (Bring Your Own Key) provider key to be configured.
curl -X POST https://neuralrepo.com/api/v1/ideas/42/develop \ -H "X-API-Key: nrp_YOUR_KEY"Response 200 OK
{ "spec": "## Specification\n\n### Overview\n...", "provider": "anthropic", "model": "claude-sonnet-4-20250514", "usage": { "input_tokens": 2400, "output_tokens": 1800 }}Status Codes
Section titled “Status Codes”| Status | Meaning |
|---|---|
200 OK | Successful read, update, or delete |
201 Created | Idea created |
400 Bad Request | Validation error |
401 Unauthorized | Missing or invalid auth |
404 Not Found | Idea not found |
409 Conflict | Duplicate detected or merge conflict |