Projects API v4
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
Read-only public API for Claromentis Projects data.
Base URLs:
Web: Discover Claromentis
Authentication
- HTTP Authentication, scheme: basic
Projects
Claromentis Projects
List projects
Method: GET
Path: /projects
Returns a paginated list of projects visible to the authenticated user. By default, only active, non-template projects are returned.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| limit | query | integer | false | Maximum number of projects to return (1–100). |
| offset | query | integer | false | Number of projects to skip. |
| status | query | string | false | Filter by project status. Defaults to active. |
| rag | query | string | false | Filter by RAG (Red/Amber/Green) status. |
| following | query | boolean | false | When true, return only projects followed by the authenticated user. |
| template | query | boolean | false | Whether to return template projects instead of non-template projects. |
| query | query | string | false | Substring search across project names. |
Enumerated Values
| Parameter | Value |
|---|---|
| status | active |
| status | draft |
| status | on_hold |
| status | archived |
| status | completed |
| rag | unknown |
| rag | red |
| rag | amber |
| rag | green |
Example responses
200 Response
{
"data": [
{
"id": 0,
"name": "string",
"reference": "string",
"status": "unknown",
"rag": "unknown",
"summary": "string",
"description": "string",
"company_id": 0,
"date_created": "2019-08-24T14:15:22Z",
"created_by": {
"id": 0,
"name": "string"
},
"date_modified": "2019-08-24T14:15:22Z",
"last_modified_by": {
"id": 0,
"name": "string"
},
"todo_status_label": "string",
"completed_status_label": "string",
"metadata": {
"property1": {
"title": "string",
"type": "unknown",
"value": null,
"display_value": "string"
},
"property2": {
"title": "string",
"type": "unknown",
"value": null,
"display_value": "string"
}
}
}
],
"pagination": {
"offset": 0,
"limit": 1,
"total": 0,
"prev": "string",
"next": "string"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Paginated project list. | ProjectList |
| 400 | Bad Request | One or more query parameters are invalid. | Error |
| 401 | Unauthorized | Authentication is required. | Error |
Get a project
Method: GET
Path: /projects/{project_id}
Returns a single project by ID, including all dynamic metadata fields.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| project_id | path | integer | true | none |
Example responses
200 Response
{
"id": 0,
"name": "string",
"reference": "string",
"status": "unknown",
"rag": "unknown",
"summary": "string",
"description": "string",
"company_id": 0,
"date_created": "2019-08-24T14:15:22Z",
"created_by": {
"id": 0,
"name": "string"
},
"date_modified": "2019-08-24T14:15:22Z",
"last_modified_by": {
"id": 0,
"name": "string"
},
"todo_status_label": "string",
"completed_status_label": "string",
"metadata": {
"property1": {
"title": "string",
"type": "unknown",
"value": null,
"display_value": "string"
},
"property2": {
"title": "string",
"type": "unknown",
"value": null,
"display_value": "string"
}
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Project detail. | Project |
| 401 | Unauthorized | Authentication is required. | Error |
| 404 | Not Found | Project not found, or the authenticated user does not have permission to view it. | Error |
Schemas
ProjectList
{
"data": [
{
"id": 0,
"name": "string",
"reference": "string",
"status": "unknown",
"rag": "unknown",
"summary": "string",
"description": "string",
"company_id": 0,
"date_created": "2019-08-24T14:15:22Z",
"created_by": {
"id": 0,
"name": "string"
},
"date_modified": "2019-08-24T14:15:22Z",
"last_modified_by": {
"id": 0,
"name": "string"
},
"todo_status_label": "string",
"completed_status_label": "string",
"metadata": {
"property1": {
"title": "string",
"type": "unknown",
"value": null,
"display_value": "string"
},
"property2": {
"title": "string",
"type": "unknown",
"value": null,
"display_value": "string"
}
}
}
],
"pagination": {
"offset": 0,
"limit": 1,
"total": 0,
"prev": "string",
"next": "string"
}
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| data | [Project] | false | none | none |
| pagination | Pagination | false | none | none |
Pagination
{
"offset": 0,
"limit": 1,
"total": 0,
"prev": "string",
"next": "string"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| offset | integer | false | read-only | none |
| limit | integer | false | read-only | none |
| total | integer | false | read-only | Total number of matching projects. |
| prev | string,null | false | read-only | URL to the previous page of projects. |
| next | string,null | false | read-only | URL to the next page of projects. |
Project
{
"id": 0,
"name": "string",
"reference": "string",
"status": "unknown",
"rag": "unknown",
"summary": "string",
"description": "string",
"company_id": 0,
"date_created": "2019-08-24T14:15:22Z",
"created_by": {
"id": 0,
"name": "string"
},
"date_modified": "2019-08-24T14:15:22Z",
"last_modified_by": {
"id": 0,
"name": "string"
},
"todo_status_label": "string",
"completed_status_label": "string",
"metadata": {
"property1": {
"title": "string",
"type": "unknown",
"value": null,
"display_value": "string"
},
"property2": {
"title": "string",
"type": "unknown",
"value": null,
"display_value": "string"
}
}
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| id | integer | false | none | none |
| name | string | false | none | none |
| reference | string,null | false | none | none |
| status | string | false | none | none |
| rag | string | false | none | RAG (Red/Amber/Green) status indicator. |
| summary | string,null | false | none | none |
| description | string,null | false | none | none |
| company_id | integer,null | false | none | none |
| date_created | string,null(date-time) | false | none | none |
| created_by | User | false | none | none |
| date_modified | string,null(date-time) | false | none | none |
| last_modified_by | User | false | none | none |
| todo_status_label | string,null | false | none | Label used for the project's to-do status column. |
| completed_status_label | string,null | false | none | Label used for the project's completed status column. |
| metadata | object | false | none | Dynamic metadata fields configured for Projects. Keys are symbolic field names. The set of fields varies per installation. |
| » additionalProperties | MetadataField | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| status | unknown |
| status | draft |
| status | active |
| status | on_hold |
| status | archived |
| status | completed |
| rag | unknown |
| rag | red |
| rag | amber |
| rag | green |
MetadataField
{
"title": "string",
"type": "unknown",
"value": null,
"display_value": "string"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| title | string | false | none | Human-readable field label. |
| type | string | false | none | Stable metadata field type, following the existing People API metadata type names. |
| value | any | false | none | Machine-readable metadata value. Its JSON type depends on the metadata field type. |
| display_value | any | false | none | Human-readable field value. Repeatable fields return an array of display values. |
oneOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » anonymous | string | false | none | none |
xor
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » anonymous | [string] | false | none | none |
xor
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » anonymous | null | false | none | none |
Enumerated Values
| Property | Value |
|---|---|
| type | unknown |
| type | default |
| type | int |
| type | text |
| type | special |
| type | date_no_year |
| type | date |
| type | datetime |
| type | select |
| type | multiselect |
| type | check |
| type | link |
| type | address |
| type | user |
| type | doclink |
| type | file |
| type | image |
Error
{
"error": true,
"message": "string",
"code": 0
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| error | boolean | false | read-only | none |
| message | string | false | read-only | none |
| code | integer | false | read-only | none |
User
{
"id": 0,
"name": "string"
}
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| anonymous | object,null | false | none | none |
| id | integer | false | none | none |
| name | string | false | none | none |