> ## Documentation Index
> Fetch the complete documentation index at: https://docs.acturehub.com/llms.txt
> Use this file to discover all available pages before exploring further.

# N1 投资人项目卡

> 通过 JWT 触发 Acture 打标并读取 N1 企业速览卡。

N1 的标准名称是“投资人项目卡（企业速览）”。它不是单独上传目标，而是在 Acture L1/L2/L3 打标完成并保存企业快照后自动生成。

```text theme={null}
已有项目及 BP 源文件
  → 触发 Acture 打标
  → 查询打标任务状态
  → Acture 快照与 N1 卡片生成完成
  → 按 project_id 读取 N1 卡片
```

## 前置条件

* 已有可访问的 `project_id`。
* 项目已绑定可校验的 BP 源文件。
* 调用方已通过账号密码取得 JWT。
* 触发打标的账号必须是租户管理员或系统管理员；读取卡片的账号必须能访问该租户和项目。

## 1. 触发 N1 生成

N1 由 Acture 打标任务自动生成：

```bash theme={null}
curl -sS -X POST \
  -H "Authorization: Bearer ${JWT_ACCESS_TOKEN}" \
  -H "Content-Type: application/json" \
  -d "{\"project_id\":\"${PROJECT_ID}\",\"force\":false}" \
  "${BP_AGENT_BASE_URL}/api/acture/labeling/start"
```

保存响应中的 `data.pipeline_run_id`。当输入未变化且已有可复用结果时，接口可能返回 `data.reused=true`。

## 2. 查询执行状态

```bash theme={null}
curl -sS \
  -H "Authorization: Bearer ${JWT_ACCESS_TOKEN}" \
  "${BP_AGENT_BASE_URL}/api/acture/labeling/${PIPELINE_RUN_ID}/status"
```

等待 `data.status=SUCCEEDED` 且 `data.result_available=true`。任务处于活动状态时继续查询；失败时读取 `data.failure` 和 `data.client_action`。

如需读取本次打标的完整企业快照和页头标签，可以调用：

```http theme={null}
GET /api/acture/labeling/{pipeline_run_id}/result
Authorization: Bearer <JWT_ACCESS_TOKEN>
```

## 3. 读取 N1 项目卡

```bash theme={null}
curl -sS \
  -H "Authorization: Bearer ${JWT_ACCESS_TOKEN}" \
  "${BP_AGENT_BASE_URL}/api/investor-products/projects/${PROJECT_ID}/card"
```

主要响应字段：

| 字段                     | 含义            |
| ---------------------- | ------------- |
| `data.id`              | N1 卡片 ID      |
| `data.project_id`      | 项目 ID         |
| `data.pipeline_run_id` | 生成该卡片的打标流水 ID |
| `data.card_version`    | 卡片结构版本        |
| `data.status`          | 卡片状态          |
| `data.card_json`       | N1 企业速览内容     |
| `data.generated_at`    | 卡片生成时间        |

<Warning>
  `force=true` 会强制创建新的打标任务并消耗相应任务额度。仅在项目材料变化或明确需要重算时使用。
</Warning>

<Note>
  N2 会优先读取同一项目的 N1 卡片作为上下文，但 N1 不会自动触发 N2，N2 也不会反向生成 N1。
</Note>
