> For the complete documentation index, see [llms.txt](https://docs.corpdev.ai/corpdev.ai-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.corpdev.ai/corpdev.ai-docs/workspace-data-api.md).

# Workspace data API

All paths are relative to `https://api.corpdev.ai/v1/public`. The API key selects the workspace. The reference below identifies current route families; permissions and enabled capabilities still determine which operations your client can use.

## Lists and pipelines

| Method and path                                                              | Operation                                   |
| ---------------------------------------------------------------------------- | ------------------------------------------- |
| `GET /lists` / `POST /lists`                                                 | List or create lists.                       |
| `GET /lists/:id` / `PATCH /lists/:id`                                        | Read or update a list's supported settings. |
| `POST /lists/:id/rows`                                                       | Add rows.                                   |
| `PATCH /lists/:id/rows/:rowId` / `DELETE /lists/:id/rows/:rowId`             | Update or remove a row.                     |
| `GET /pipelines` / `POST /pipelines`                                         | List or create pipelines.                   |
| `GET /pipelines/:id/board`                                                   | Read board information.                     |
| `GET /pipelines/:id/deals`                                                   | Read deals.                                 |
| `PATCH /pipelines/:id`                                                       | Update supported pipeline fields.           |
| `POST /pipelines/:id/deals`                                                  | Add a deal.                                 |
| `PATCH /pipelines/:id/deals/:dealId` / `DELETE /pipelines/:id/deals/:dealId` | Update or remove a deal.                    |
| `PATCH /pipelines/:id/config`                                                | Update supported pipeline configuration.    |

Use returned list, row, pipeline and deal identifiers; a company domain is not interchangeable with every row identifier. Changing deal stages can affect enabled automations. Confirm the target and schema before sending writes.

## Investment criteria and overview

Investment target profiles use `/itps`: list and create at the collection, and read, patch or delete at `/itps/:itpId`. Company overview content is read or written at `/companies/:domain/overview` with `GET` or `PUT`.

Changing criteria can affect later fit assessments. Preserve the meaning and rationale of the criteria in the work product rather than treating a numeric score as independent evidence.

## AI Room

| Method and path                           | Operation                                    |
| ----------------------------------------- | -------------------------------------------- |
| `GET /ai-room/tree`                       | Read the folder hierarchy.                   |
| `GET /ai-room/folders/:folderId/contents` | Read a folder's contents.                    |
| `GET /ai-room/files/:fileId`              | Read an accessible file representation.      |
| `GET /ai-room/index-list`                 | Request the room index list where supported. |
| `POST /ai-room/search`                    | Search source-file contents.                 |
| `POST /ai-room/folders`                   | Create a folder.                             |
| `POST /ai-room/files`                     | Upload using the route's multipart contract. |
| `POST /ai-room/deep-research`             | Run supported research over room content.    |

An uploaded file may still need processing. Check its state before expecting extracted content. Keep file identifiers separate from deliverable document identifiers, and use the appropriate route family.

## AI columns and trigger scans

For either `lists/:containerId` or `pipelines/:containerId`, append these paths:

| Method and suffix                               | Operation                          |
| ----------------------------------------------- | ---------------------------------- |
| `GET /ai-columns`                               | List AI column configuration.      |
| `POST /ai-columns`                              | Create an AI column.               |
| `PATCH` or `DELETE /ai-columns/:columnKey`      | Update or remove a column.         |
| `POST /ai-columns/:columnKey/populate`          | Start population.                  |
| `POST /trigger-columns`                         | Create a trigger column.           |
| `PATCH` or `DELETE /trigger-columns/:columnKey` | Update or remove a trigger column. |
| `POST /trigger-columns/:columnKey/scan`         | Start a scan.                      |

For example, the full population route is `POST /v1/public/lists/:containerId/ai-columns/:columnKey/populate`. Read the column configuration first and use its returned key. This page is a route overview; configuration payloads depend on the column type and should be confirmed for your integration before writing. Use returned run identifiers with `GET /ai-column-runs/:runId` or `GET /trigger-scan-runs/:runId`. An AI-column run supports `POST /ai-column-runs/:runId/cancel` with write access.

A stop or cancel request should be checked against the resulting state; it does not erase work already completed. Batch analysis can consume credits.

## Automations

Read automations with `GET /automations` and `GET /automations/:id`. `POST /automations/plan` prepares a plan. Create, update, delete, run and manifest-apply operations require write access and separate enablement for API automation changes.

Mutation paths include `POST /automations`, `PATCH` or `DELETE /automations/:id`, `POST /automations/:id/run` and `POST /automations/apply`. Review trigger scope, recipients and destination documents before applying a change. A run can produce a document or send configured messages.

## Usage

`GET /usage` exposes usage information available to the key. Keep usage checks separate from rate-limit handling; a client can encounter either restriction independently.

See [API behavior](https://docs.corpdev.ai/corpdev.ai-docs/errors-pagination-and-retries) for errors, pagination, retries and metered reads.
