Projekty i Foldery
Projekty grupują dokumenty tematycznie. Foldery organizują projekty (i brandingi) w hierarchię do 3 poziomów.
Projekty
Wymagane scopy: projects:read, projects:write
Lista projektów
curl -s "https://my.clarife.app/api/v1/projects?limit=20&offset=0" \
-H "Authorization: Bearer clrf_xxxxx" | jqParametry query:
| Parametr | Typ | Domyślnie | Opis |
|---|---|---|---|
| limit | integer | 50 | Wyniki na stronę (1-100) |
| offset | integer | 0 | Przesunięcie paginacji |
| folder_id | uuid | - | Filtruj po folderze |
Odpowiedź 200 OK:
{
"data": [
{
"id": "p1234567-...",
"name": "Onboarding",
"description": "Tutoriale dla nowych użytkowników",
"icon": "rocket",
"folder_id": null,
"sort_order": 0,
"visibility": "private",
"created_at": "2026-03-20T10:00:00Z",
"updated_at": "2026-03-28T12:00:00Z"
}
],
"total": 5,
"limit": 20,
"offset": 0
}Pobierz projekt
curl -s https://my.clarife.app/api/v1/projects/PROJECT_ID \
-H "Authorization: Bearer clrf_xxxxx" | jqZwraca szczegóły projektu wraz z liczbą dokumentów (document_count).
Utwórz projekt
curl -s -X POST https://my.clarife.app/api/v1/projects \
-H "Authorization: Bearer clrf_xxxxx" \
-H "Content-Type: application/json" \
-d '{
"name": "Onboarding",
"description": "Tutoriale dla nowych użytkowników",
"icon": "rocket",
"folder_id": "f1234567-..."
}' | jqParametry body:
| Pole | Typ | Wymagane | Opis |
|---|---|---|---|
| name | string | tak | Nazwa projektu (1-200 znaków) |
| description | string | nie | Opis (max 2000 znaków) |
| icon | string | nie | Identyfikator ikony (max 100 znaków) |
| folder_id | uuid | nie | Folder nadrzędny |
Odpowiedź 201 Created:
{
"data": {
"id": "p1234567-...",
"name": "Onboarding",
"created_at": "2026-03-28T12:00:00Z"
}
}Zaktualizuj projekt
curl -s -X PATCH https://my.clarife.app/api/v1/projects/PROJECT_ID \
-H "Authorization: Bearer clrf_xxxxx" \
-H "Content-Type: application/json" \
-d '{ "name": "Nowa nazwa" }' | jqUsuń projekt
Usunięcie projektu jest trwałe. Dokumenty w projekcie nie są usuwane - jedynie powiązanie jest usuwane.
curl -s -X DELETE https://my.clarife.app/api/v1/projects/PROJECT_ID \
-H "Authorization: Bearer clrf_xxxxx" | jqPrzenieś projekt
curl -s -X POST https://my.clarife.app/api/v1/projects/PROJECT_ID/move \
-H "Authorization: Bearer clrf_xxxxx" \
-H "Content-Type: application/json" \
-d '{ "folder_id": "f1234567-..." }' | jqWyślij "folder_id": null, aby przenieść projekt do korzenia (bez folderu).
Foldery
Wymagane scopy: projects:read, projects:write
Foldery organizują projekty lub brandingi. Maksymalna głębokość to 3 poziomy. Foldery projektowe wymagają planu Pro lub Business, a foldery brandingowe - planu Business.
Lista folderów
curl -s "https://my.clarife.app/api/v1/folders?entity_type=project" \
-H "Authorization: Bearer clrf_xxxxx" | jqParametry query:
| Parametr | Typ | Opis |
|---|---|---|
| entity_type | string | project lub branding |
| parent_id | uuid | Filtruj po folderze nadrzędnym |
| limit | integer | Wyniki na stronę (1-100) |
| offset | integer | Przesunięcie paginacji |
Utwórz folder
curl -s -X POST https://my.clarife.app/api/v1/folders \
-H "Authorization: Bearer clrf_xxxxx" \
-H "Content-Type: application/json" \
-d '{
"name": "Q1 2026",
"entity_type": "project",
"color": "#6366F1"
}' | jqParametry body:
| Pole | Typ | Wymagane | Opis |
|---|---|---|---|
| name | string | tak | Nazwa folderu (1-200 znaków) |
| entity_type | string | tak | project lub branding |
| parent_id | uuid | nie | Folder nadrzędny (max 3 poziomy) |
| color | string | nie | Kolor hex, np. #6366F1 (domyślnie #6b7280) |
Zaktualizuj folder
curl -s -X PATCH https://my.clarife.app/api/v1/folders/FOLDER_ID \
-H "Authorization: Bearer clrf_xxxxx" \
-H "Content-Type: application/json" \
-d '{ "name": "Nowa nazwa", "color": "#10B981" }' | jqUsuń folder
Usunięcie folderu kasuje również jego podfoldery (kaskadowo). Projekty wewnątrz nie są usuwane - tracą jedynie przypisanie do folderu.
curl -s -X DELETE https://my.clarife.app/api/v1/folders/FOLDER_ID \
-H "Authorization: Bearer clrf_xxxxx" | jq