Projects¶
18 endpoints. Every path below is served by workspace-backend behind the gateway at https://api.trilocore.ai.
GET /api/v1/workspaces/projects¶
List Projects
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 200 |
| Upstream | workspace-backend |
| Pagination | paged: page_size ≤ 200 (default 50) + page_token; the body is {data, has_more, next_page_token, page_size} |
Query parameters
| Parameter | Type | Required | Constraints | Description |
|---|---|---|---|---|
include_archived |
boolean | no | — | — |
page_size |
integer | no | default 50, clamped to 200, minimum 1 |
Items per page. Default 50; values above 200 are clamped to 200 (never an error). The effective value is echoed as page_size. |
page_token |
string | no | maxLength 2048 |
Opaque token from a previous page's next_page_token. Valid for 3 days, only with the same filters and the same caller. Omit it to start from the first page. |
workspace_id |
string | no | — | — |
▶ Run this example in the sandbox
DELETE /api/v1/workspaces/projects/{uuid}¶
Archive Project
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 204 |
| Upstream | workspace-backend |
GET /api/v1/workspaces/projects/{uuid}¶
Get Project
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 200 |
| Upstream | workspace-backend |
▶ Run this example in the sandbox
PATCH /api/v1/workspaces/projects/{uuid}¶
Update Project
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 200 |
| Upstream | workspace-backend |
Request body
| Field | Type | Required | Constraints |
|---|---|---|---|
name |
one of | no | — |
status |
one of | no | — |
▶ Run this example in the sandbox
GET /api/v1/workspaces/projects/{uuid}/audit-logs¶
List Project Audit Logs
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 200 |
| Upstream | workspace-backend |
| Pagination | paged: page_size ≤ 200 (default 50) + page_token; the body is {data, has_more, next_page_token, page_size} |
Query parameters
| Parameter | Type | Required | Constraints | Description |
|---|---|---|---|---|
page_size |
integer | no | default 50, clamped to 200, minimum 1 |
Items per page. Default 50; values above 200 are clamped to 200 (never an error). The effective value is echoed as page_size. |
page_token |
string | no | maxLength 2048 |
Opaque token from a previous page's next_page_token. Valid for 3 days, only with the same filters and the same caller. Omit it to start from the first page. |
▶ Run this example in the sandbox
POST /api/v1/workspaces/projects/{uuid}/audit-logs¶
Append Project Audit Log
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 201 |
| Upstream | workspace-backend |
Request body
| Field | Type | Required | Constraints |
|---|---|---|---|
kind |
string | no | one of note, review, handoff |
message |
string | yes | maxLength 2000, minLength 1 |
▶ Run this example in the sandbox
GET /api/v1/workspaces/projects/{uuid}/content¶
Content
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 200 |
| Upstream | workspace-backend |
| Pagination | paged: page_size ≤ 200 (default 50) + page_token; the body is {data, has_more, next_page_token, page_size} |
Query parameters
| Parameter | Type | Required | Constraints | Description |
|---|---|---|---|---|
page_size |
integer | no | default 50, clamped to 200, minimum 1 |
Items per page. Default 50; values above 200 are clamped to 200 (never an error). The effective value is echoed as page_size. |
page_token |
string | no | maxLength 2048 |
Opaque token from a previous page's next_page_token. Valid for 3 days, only with the same filters and the same caller. Omit it to start from the first page. |
GET /api/v1/workspaces/projects/{uuid}/invitations¶
List Project Invitations
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 200 |
| Upstream | workspace-backend |
| Pagination | paged: page_size ≤ 200 (default 50) + page_token; the body is {data, has_more, next_page_token, page_size} |
Query parameters
| Parameter | Type | Required | Constraints | Description |
|---|---|---|---|---|
include_closed |
boolean | no | — | — |
page_size |
integer | no | default 50, clamped to 200, minimum 1 |
Items per page. Default 50; values above 200 are clamped to 200 (never an error). The effective value is echoed as page_size. |
page_token |
string | no | maxLength 2048 |
Opaque token from a previous page's next_page_token. Valid for 3 days, only with the same filters and the same caller. Omit it to start from the first page. |
▶ Run this example in the sandbox
POST /api/v1/workspaces/projects/{uuid}/invitations¶
Create Project Invitation
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | required |
| Success | 201 |
| Upstream | workspace-backend |
Request body
| Field | Type | Required | Constraints |
|---|---|---|---|
access_expires_in_days |
one of | no | — |
expires_in_days |
one of | no | — |
invited_email |
string | yes | maxLength 320, minLength 3 |
invited_user_id |
one of | no | — |
project_id |
one of | no | — |
role |
string | yes | maxLength 64, minLength 1 |
DELETE /api/v1/workspaces/projects/{uuid}/invitations/{uuid}¶
Revoke Project Invitation
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 204 |
| Upstream | workspace-backend |
GET /api/v1/workspaces/projects/{uuid}/members¶
List Project Members
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 200 |
| Upstream | workspace-backend |
| Pagination | paged: page_size ≤ 200 (default 50) + page_token; the body is {data, has_more, next_page_token, page_size} |
Query parameters
| Parameter | Type | Required | Constraints | Description |
|---|---|---|---|---|
include_inactive |
boolean | no | — | — |
page_size |
integer | no | default 50, clamped to 200, minimum 1 |
Items per page. Default 50; values above 200 are clamped to 200 (never an error). The effective value is echoed as page_size. |
page_token |
string | no | maxLength 2048 |
Opaque token from a previous page's next_page_token. Valid for 3 days, only with the same filters and the same caller. Omit it to start from the first page. |
▶ Run this example in the sandbox
POST /api/v1/workspaces/projects/{uuid}/members¶
Add Project Member
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 201 |
| Upstream | workspace-backend |
Request body
| Field | Type | Required | Constraints |
|---|---|---|---|
expires_at |
one of | no | — |
principal_id |
string | yes | maxLength 128, minLength 1 |
principal_label |
one of | no | — |
principal_type |
string | yes | maxLength 32, minLength 1 |
role |
string | yes | maxLength 64, minLength 1 |
starts_at |
one of | no | — |
DELETE /api/v1/workspaces/projects/{uuid}/members/{uuid}¶
Revoke Project Member
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 204 |
| Upstream | workspace-backend |
GET /api/v1/workspaces/projects/{uuid}/overview¶
Project Overview
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 200 |
| Upstream | workspace-backend |
▶ Run this example in the sandbox
GET /api/v1/workspaces/projects/{uuid}/transfers¶
Pending
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 200 |
| Upstream | workspace-backend |
| Pagination | paged: page_size ≤ 200 (default 50) + page_token; the body is {data, has_more, next_page_token, page_size} |
Query parameters
| Parameter | Type | Required | Constraints | Description |
|---|---|---|---|---|
page_size |
integer | no | default 50, clamped to 200, minimum 1 |
Items per page. Default 50; values above 200 are clamped to 200 (never an error). The effective value is echoed as page_size. |
page_token |
string | no | maxLength 2048 |
Opaque token from a previous page's next_page_token. Valid for 3 days, only with the same filters and the same caller. Omit it to start from the first page. |
POST /api/v1/workspaces/projects/{uuid}/transfers¶
Prepare
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | required |
| Success | 200 |
| Upstream | workspace-backend |
Request body
| Field | Type | Required | Constraints |
|---|---|---|---|
all_content |
boolean | no | — |
destination_project_id |
one of | no | — |
items |
array of Item | no | maxItems 2000 |
mode |
string | yes | one of move, copy |
new_project_name |
one of | no | — |
operation_id |
string | yes | — |
remove_source |
boolean | no | — |
GET /api/v1/workspaces/projects/{uuid}/transfers/{uuid}¶
Transfer Status
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | not required |
| Success | 200 |
| Upstream | workspace-backend |
POST /api/v1/workspaces/projects/{uuid}/transfers/{uuid}/complete¶
Complete
| Property | Value |
|---|---|
| Authentication | Authorization: Bearer (jns_ key or SSO session) |
| Idempotency-Key | required |
| Success | 200 |
| Upstream | workspace-backend |
Request body
| Field | Type | Required | Constraints |
|---|---|---|---|
architecture_receipt |
string | yes | maxLength 1048576, minLength 1 |