Skip to main content

Prism API

POST /prism/parse

Parse a product specification into a dependency-ordered list of tasks.

curl -X POST https://api.get-nimbus.com/prism/parse \
-H "X-API-Key: $NIMBUS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"spec": "Build a complete authentication system with email/password signup, login, JWT access tokens, refresh token rotation, and password reset via email."
}'

Response — an array of task objects sorted by dependency order:

[
{
"id": 1,
"description": "Create User model with email, hashed_password, is_active, created_at fields and a migration",
"skill": null,
"depends_on": [],
"priority": 1
},
{
"id": 2,
"description": "Implement password hashing utility using bcrypt with verify function",
"skill": null,
"depends_on": [1],
"priority": 1
},
{
"id": 3,
"description": "Add POST /auth/register endpoint with email validation and duplicate detection",
"skill": "add-tests",
"depends_on": [1, 2],
"priority": 1
}
]

Fields:

FieldTypeDescription
idintegerTask number
descriptionstringPrecise, implementation-ready task description
skillstring or nullSkill to apply, if any
depends_oninteger[]IDs of tasks that must complete first
priorityintegerSuggested execution priority (1 = highest)

POST /prism/queue

Queue a list of parsed tasks to Nimbus. Tasks execute in dependency order.

curl -X POST https://api.get-nimbus.com/prism/queue \
-H "X-API-Key: $NIMBUS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"tasks": [
{"id": 1, "description": "...", "depends_on": [], "skill": null, "priority": 1},
{"id": 2, "description": "...", "depends_on": [1], "skill": null, "priority": 1}
],
"repo_id": "repo-xyz789",
"workspace_id": "ws-abc123",
"auto_approve": false
}'

Response — array of created task IDs:

{
"queued": ["task-1abc", "task-2def", "task-3ghi"],
"execution_order": [[1], [2, 3], [4, 5, 6], [7], [8]]
}

The execution_order shows which tasks run in parallel (same array level) and which must run sequentially (different levels).