Project Transfers API
Project transfer endpoints 通过 request/accept flow 在 workspaces 之间转移 project ownership。
POST /api/v2/projects/:fullname/transfer/plan
返回 project transfer plan,但不应用任何更改。
Arguments:
| Argument | Location | Description |
|---|---|---|
fullname | Path | Source project fullname. |
Payload:
| Field | Required | Description |
|---|---|---|
targetWorkspace | 是 | Target workspace fullname. |
targetName | 否 | target workspace 中的新 project name。如果未传入,则保留当前 name。 |
POST /api/v2/projects/:fullname/transfer-requests
创建 transfer request。只有 target workspace owner accept 后,project 才会被转移。
Arguments:
| Argument | Location | Description |
|---|---|---|
fullname | Path | Source project fullname. |
Payload:
| Field | Required | Description |
|---|---|---|
targetWorkspace | 是 | Target workspace fullname. |
targetName | 否 | target workspace 中的新 project name。 |
expectedPlanHash | 否 | 从 /transfer/plan 获得的 plan hash。如果传入且 plan 已变化,则不会创建 request。 |
GET /api/v2/project-transfer-requests
返回 incoming/outgoing transfer requests。
Arguments:
| Argument | Location | Description |
|---|---|---|
workspace | Query | Workspace fullname. |
direction | Query | incoming 或 outgoing。 |
status | Query | pending, accepted, rejected, cancelled, expired, failed. |
Payload: 无。
POST /api/v2/project-transfer-requests/:id/accept
接受 incoming transfer request 并应用 project transfer。
Arguments:
| Argument | Location | Description |
|---|---|---|
id | Path | Transfer request id. |
Payload: optional action object.
| Field | Required | Description |
|---|---|---|
reason | 否 | Optional comment/reason. |
响应:ProjectTransferAcceptResult。
POST /api/v2/project-transfer-requests/:id/reject
拒绝 incoming transfer request。
Arguments:
| Argument | Location | Description |
|---|---|---|
id | Path | Transfer request id. |
Payload:
| Field | Required | Description |
|---|---|---|
reason | 否 | Optional rejection reason. |
POST /api/v2/project-transfer-requests/:id/cancel
取消 outgoing transfer request。
Arguments:
| Argument | Location | Description |
|---|---|---|
id | Path | Transfer request id. |
Payload:
| Field | Required | Description |
|---|---|---|
reason | 否 | Optional cancellation reason. |