Get project home snapshot
GET
/v1/projects/{projectId}/homeReturns the project configuration and the compact tasks, milestones, environments, and thread records needed to render the project home screen in one request.
How to call this endpoint
Every ACP API request uses bearer authentication. The examples here show the actual request path, auth header, and body shape that the platform expects.
Path, query, and header parameters
These parameters control which ACP object the endpoint acts on and how the request is processed.
Path parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| projectId | path | string | Yes | Project ID |
Query parameters
None.
Body schema
This endpoint does not require a request body.
None.
What the API returns
Each response code below includes the documented payload shape for the ACP API.
200Project home snapshotapplication/json
| Field | Type | Required | Description |
|---|---|---|---|
| object | project.home | No | — |
| project | object | No | — |
| project.id | string | No | Unique identifier. |
| project.userId | string | No | User ID. |
| project.ownerUserId | string | No | — |
| project.ownerName | string | No | — |
| project.ownerEmail | string | No | — |
| project.ownerAvatarUrl | string | No | — |
| project.owner | object | No | — |
| project.owner.userId | string | Yes | User ID. |
| project.owner.name | string | Yes | Human-readable name. |
| project.owner.email | string | No | — |
| project.owner.avatarUrl | string | No | — |
| project.canTransferOwnership | boolean | No | — |
| project.organizationId | string | No | — |
| project.createdByUserId | string | No | — |
| project.name | string | No | Human-readable name. |
| project.description | string | No | Human-readable description. |
| project.type | local | cloud | synced | No | — |
| project.primarySource | string | No | — |
| project.sources | object[] | No | — |
| project.createdAt | string | No | ISO 8601 timestamp. |
| project.updatedAt | string | No | ISO 8601 timestamp. |
| summary | object | No | — |
| environments | object[] | No | — |
| environments[].id | string | No | Unique identifier. |
| environments[].userId | string | No | User ID. |
| environments[].organizationId | string | No | — |
| environments[].createdByUserId | string | No | — |
| environments[].projectId | string | No | Project ID. |
| environments[].name | string | No | Human-readable name. |
| environments[].description | string | No | Human-readable description. |
| environments[].environmentVariables | object[] | No | — |
| environments[].environmentVariables[].key | string | No | — |
| environments[].environmentVariables[].value | string | No | — |
| environments[].secrets | object[] | No | — |
| environments[].setupScripts | string[] | No | — |
| environments[].mcpServers | object[] | No | — |
| environments[].mcpServers[].name | string | No | Human-readable name. |
| environments[].mcpServers[].type | stdio | http | No | — |
| environments[].mcpServers[].command | string | No | For stdio servers |
| environments[].mcpServers[].args | string[] | No | — |
| environments[].mcpServers[].url | string | No | For HTTP servers |
| environments[].mcpServers[].bearerToken | string | No | — |
| environments[].mcpServers[].enabled | boolean | No | — |
| environments[].internetAccess | boolean | No | — |
| environments[].isDefault | boolean | No | — |
| environments[].baseImage | string | No | — |
| environments[].dockerfileExtensions | string | No | — |
| environments[].runtimes | object | No | — |
| environments[].packages | object | No | — |
| environments[].packages.system | string[] | No | — |
| environments[].packages.python | string[] | No | — |
| environments[].packages.node | string[] | No | — |
| environments[].metadata | object | No | Free-form metadata object. |
| environments[].metadata.computeProfile | lite | standard | power | desktop | No | Named ACP computer profile controlling runtime resources and pricing. |
| environments[].metadata.computeResources | object | No | — |
| environments[].metadata.computeResources.cpuCores | number | No | — |
| environments[].metadata.computeResources.memoryMb | integer | No | — |
| environments[].metadata.pricing | object | No | — |
| environments[].metadata.pricing.minutePrice | number | No | Runtime price in USD per minute for the selected computer profile. |
| environments[].metadata.guiEnabled | boolean | No | Whether this computer profile exposes a GUI session. |
| environments[].metadata.officeAppsEnabled | boolean | No | Whether desktop productivity apps are enabled for this computer profile. |
| environments[].buildStatus | string | No | — |
| environments[].buildError | string | No | — |
| environments[].imageTag | string | No | — |
| environments[].lastBuildAt | string | No | — |
| environments[].createdAt | string | No | ISO 8601 timestamp. |
| environments[].updatedAt | string | No | ISO 8601 timestamp. |
| tasks | object[] | No | Compact task records without descriptions or embedded attachments, comments, activity, connectors, and enabled-skill payloads. |
| tasks[].id | string | No | Unique identifier. |
| tasks[].userId | string | No | User ID. |
| tasks[].organizationId | string | No | — |
| tasks[].createdByUserId | string | No | — |
| tasks[].creator | object | No | — |
| tasks[].creator.type | user | agent | Yes | — |
| tasks[].creator.userId | string | No | User ID. |
| tasks[].creator.agentId | string | No | Agent ID. |
| tasks[].creator.name | string | No | Human-readable name. |
| tasks[].creator.avatarUrl | string | No | — |
| tasks[].projectId | string | No | Project ID. |
| tasks[].releaseId | string | No | — |
| tasks[].title | string | No | Display title. |
| tasks[].description | string | No | Human-readable description. |
| tasks[].status | backlog | todo | in_progress | blocked | in_review | done | canceled | No | Current lifecycle status. |
| tasks[].priority | low | medium | high | urgent | No | — |
| tasks[].type | task | subtask | loop | No | — |
| tasks[].parentTaskId | string | No | — |
| tasks[].loop | object | No | — |
| tasks[].loop.enabled | boolean | No | — |
| tasks[].loop.goal | string | No | End goal the loop should reach. |
| tasks[].loop.endGoal | string | No | Alias for goal. |
| tasks[].loop.progressSignal | string | No | Observable signal that shows each iteration is making progress. |
| tasks[].loop.verificationCriteria | string | No | How the verifier should judge each iteration. |
| tasks[].loop.successCriteria | string | No | Objective condition that stops the loop successfully. |
| tasks[].loop.maxIterations | integer | No | — |
| tasks[].loop.noProgressLimit | integer | No | — |
| tasks[].loop.workerAgentId | string | No | — |
| tasks[].loop.verifierAgentId | string | No | — |
| tasks[].sprintId | string | No | — |
| tasks[].assigneeAgentId | string | No | — |
| tasks[].dependencyIds | string[] | No | — |
| tasks[].linkedThreadIds | string[] | No | — |
| tasks[].lastStartedThreadId | string | No | — |
| tasks[].scheduledStartAt | string | No | — |
| tasks[].scheduledEndAt | string | No | — |
| tasks[].dueAt | string | No | — |
| tasks[].completedAt | string | No | ISO 8601 timestamp. |
| tasks[].sortOrder | number | No | — |
| tasks[].metadata | object | No | Free-form metadata object. |
| tasks[].createdAt | string | No | ISO 8601 timestamp. |
| tasks[].updatedAt | string | No | ISO 8601 timestamp. |
| releases | object[] | No | — |
| releases[].object | string | No | — |
| releases[].id | string | No | Unique identifier. |
| releases[].userId | string | No | User ID. |
| releases[].organizationId | string | No | — |
| releases[].createdByUserId | string | No | — |
| releases[].projectId | string | No | Project ID. |
| releases[].name | string | No | Human-readable name. |
| releases[].description | string | No | Human-readable description. |
| releases[].successCriteria | string[] | No | Measurable conditions that define when this milestone is complete. |
| releases[].startAt | string | No | — |
| releases[].endAt | string | No | — |
| releases[].sortOrder | number | No | — |
| releases[].status | planned | active | completed | No | Current lifecycle status. |
| releases[].metadata | object | No | Free-form metadata object. |
| releases[].taskCount | integer | No | — |
| releases[].openTaskCount | integer | No | — |
| releases[].taskIds | string[] | No | — |
| releases[].createdAt | string | No | ISO 8601 timestamp. |
| releases[].updatedAt | string | No | ISO 8601 timestamp. |
| sprints | object[] | No | — |
| sprints[].id | string | No | Unique identifier. |
| sprints[].userId | string | No | User ID. |
| sprints[].organizationId | string | No | — |
| sprints[].createdByUserId | string | No | — |
| sprints[].projectId | string | No | Project ID. |
| sprints[].name | string | No | Human-readable name. |
| sprints[].goal | string | No | — |
| sprints[].status | planned | active | completed | No | Current lifecycle status. |
| sprints[].startAt | string | No | — |
| sprints[].endAt | string | No | — |
| sprints[].sortOrder | number | No | — |
| sprints[].metadata | object | No | Free-form metadata object. |
| sprints[].createdAt | string | No | ISO 8601 timestamp. |
| sprints[].updatedAt | string | No | ISO 8601 timestamp. |
| threads | object[] | No | Compact project thread records without attachments, message previews, or pricing snapshots. |
| threads[].id | string | No | Unique identifier. |
| threads[].userId | string | No | User ID. |
| threads[].organizationId | string | No | — |
| threads[].createdByUserId | string | No | — |
| threads[].projectId | string | No | Project ID. |
| threads[].environmentId | string | No | Computer ID. |
| threads[].agentId | string | No | Agent ID. |
| threads[].title | string | No | Display title. |
| threads[].task | string | No | — |
| threads[].appId | string | No | — |
| threads[].status | active | running | completed | failed | cancelled | No | Current lifecycle status. |
| threads[].messageCount | integer | No | — |
| threads[].lastMessageAt | string | No | — |
| threads[].lastMessagePreview | string | No | — |
| threads[].inputTokens | integer | No | — |
| threads[].outputTokens | integer | No | — |
| threads[].totalCost | number | No | — |
| threads[].environmentMinutes | number | No | — |
| threads[].metadata | object | No | Free-form metadata object. |
| threads[].teamExecution | object | No | — |
| threads[].teamExecution.mode | team | No | — |
| threads[].teamExecution.teamAgentId | string | No | — |
| threads[].teamExecution.teamAgentName | string | No | — |
| threads[].teamExecution.orchestrator | object | No | — |
| threads[].teamExecution.orchestrator.agentId | string | No | Agent ID. |
| threads[].teamExecution.orchestrator.agentName | string | No | — |
| threads[].teamExecution.orchestrator.claudeAgentName | string | No | — |
| threads[].teamExecution.subagents | object[] | No | — |
| threads[].teamExecution.subagents[].agentId | string | No | Agent ID. |
| threads[].teamExecution.subagents[].agentName | string | No | — |
| threads[].teamExecution.subagents[].claudeAgentName | string | No | — |
| threads[].subagentActivity | object[] | No | — |
| threads[].subagentActivity[].agentId | string | No | Agent ID. |
| threads[].subagentActivity[].agentName | string | No | — |
| threads[].subagentActivity[].claudeAgentName | string | No | — |
| threads[].subagentActivity[].eventCount | integer | No | — |
| threads[].subagentActivity[].lastActiveAt | string | No | — |
| threads[].subagentActivity[].teamAgentId | string | No | — |
| threads[].subagentActivity[].teamAgentName | string | No | — |
| threads[].environmentName | string | No | — |
| threads[].agentName | string | No | — |
| threads[].createdAt | string | No | ISO 8601 timestamp. |
| threads[].updatedAt | string | No | ISO 8601 timestamp. |
| recentThreads | object[] | No | — |
| recentThreads[].id | string | No | Unique identifier. |
| recentThreads[].userId | string | No | User ID. |
| recentThreads[].organizationId | string | No | — |
| recentThreads[].createdByUserId | string | No | — |
| recentThreads[].projectId | string | No | Project ID. |
| recentThreads[].environmentId | string | No | Computer ID. |
| recentThreads[].agentId | string | No | Agent ID. |
| recentThreads[].title | string | No | Display title. |
| recentThreads[].task | string | No | — |
| recentThreads[].appId | string | No | — |
| recentThreads[].status | active | running | completed | failed | cancelled | No | Current lifecycle status. |
| recentThreads[].messageCount | integer | No | — |
| recentThreads[].lastMessageAt | string | No | — |
| recentThreads[].lastMessagePreview | string | No | — |
| recentThreads[].inputTokens | integer | No | — |
| recentThreads[].outputTokens | integer | No | — |
| recentThreads[].totalCost | number | No | — |
| recentThreads[].environmentMinutes | number | No | — |
| recentThreads[].metadata | object | No | Free-form metadata object. |
| recentThreads[].teamExecution | object | No | — |
| recentThreads[].teamExecution.mode | team | No | — |
| recentThreads[].teamExecution.teamAgentId | string | No | — |
| recentThreads[].teamExecution.teamAgentName | string | No | — |
| recentThreads[].teamExecution.orchestrator | object | No | — |
| recentThreads[].teamExecution.orchestrator.agentId | string | No | Agent ID. |
| recentThreads[].teamExecution.orchestrator.agentName | string | No | — |
| recentThreads[].teamExecution.orchestrator.claudeAgentName | string | No | — |
| recentThreads[].teamExecution.subagents | object[] | No | — |
| recentThreads[].teamExecution.subagents[].agentId | string | No | Agent ID. |
| recentThreads[].teamExecution.subagents[].agentName | string | No | — |
| recentThreads[].teamExecution.subagents[].claudeAgentName | string | No | — |
| recentThreads[].subagentActivity | object[] | No | — |
| recentThreads[].subagentActivity[].agentId | string | No | Agent ID. |
| recentThreads[].subagentActivity[].agentName | string | No | — |
| recentThreads[].subagentActivity[].claudeAgentName | string | No | — |
| recentThreads[].subagentActivity[].eventCount | integer | No | — |
| recentThreads[].subagentActivity[].lastActiveAt | string | No | — |
| recentThreads[].subagentActivity[].teamAgentId | string | No | — |
| recentThreads[].subagentActivity[].teamAgentName | string | No | — |
| recentThreads[].environmentName | string | No | — |
| recentThreads[].agentName | string | No | — |
| recentThreads[].createdAt | string | No | ISO 8601 timestamp. |
| recentThreads[].updatedAt | string | No | ISO 8601 timestamp. |
404Resource not foundapplication/json
| Field | Type | Required | Description |
|---|---|---|---|
| error | string | No | — |