Projets et livraison
Projets, tâches, membres, taux et allocations — automatisez la livraison et synchronisez les données de projet.
Projet
Points de terminaison
| GET | /projects | Récupère la collection de ressources Project. |
| POST | /projects | Crée une ressource Project. |
| GET | /projects/{id} | Récupère une ressource Project. |
| PATCH | /projects/{id} | Met à jour la ressource Project. |
| DELETE | /projects/{id} | Supprime la ressource Project. |
| POST | /projects/{id}/archive | Archive this project |
| GET | /projects/{id}/cost-allocations | Récupère une ressource Project. |
| GET | /projects/{id}/documents | Récupère une ressource Project. |
| GET | /projects/{id}/logged-time | Récupère une ressource Project. |
| POST | /projects/{id}/merge | Merge this project into another |
| POST | /projects/{id}/pin | Pin this project for the current user |
| GET | /projects/{id}/profitability | Récupère une ressource Project. |
| GET | /projects/{id}/reparent-impact | How many employees lose visibility if this project is moved |
| GET | /projects/{id}/travel | Récupère une ressource Project. |
| POST | /projects/{id}/unarchive | Restore an archived project |
| POST | /projects/{id}/unpin | Unpin this project for the current user |
| GET | /projects/folder-counts | Récupère la collection de ressources Project. |
| GET | /projects/preview | Récupère la collection de ressources Project. |
| GET | /projects/reference-usage | Récupère la collection de ressources Project. |
| GET | /projects/search | Récupère la collection de ressources Project. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| id | integer | |
| parent | mixed | |
| client | string,null (iri-reference) | |
| currency | string,null (iri-reference) | |
| dateFrom | string,null (date-time) | |
| dateTo | string,null (date-time) | |
| name* | string | |
| publicDescription | stringnull | |
| type* | string | |
| clientHash | string | |
| notes | stringnull | |
| description | stringnull | Free-text description. A third free-text field alongside `publicDescription` (customer-facing, 255) and `notes` (internal): the client asked for "description" and got it as its own field rather than a rename, so nothing that reads either of the other two changes meaning (#3431). |
| reference | stringnull | Cross-system integration key — a stable, human-writable handle for joining this project to systems outside Flowtly, because the numeric id is unusable for that (#3431). NOT a display nicety: the UI prefilling it from the name is a convenience on first entry, and every property below is the contract. |
| color | string | |
| icon | stringnull | |
| priceNet | stringnull | |
| taxGroup | string,null (iri-reference) | |
| attributeSet | string,null (iri-reference) | |
| taskCreatePolicy | string | |
| taskVisibility | string | |
| projectMembers | array | |
| archivedAt | string,null (date-time) | Archiving retires a project from view without deleting it (#2896). |
| status | string | |
| flattenType | string | |
| budgets | array |
Membre du projet
Points de terminaison
| GET | /project-members | Récupère la collection de ressources ProjectMember. |
| POST | /project-members | Crée une ressource ProjectMember. |
| GET | /project-members/{id} | Récupère une ressource ProjectMember. |
| PATCH | /project-members/{id} | Met à jour la ressource ProjectMember. |
| DELETE | /project-members/{id} | Supprime la ressource ProjectMember. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| id | string | |
| employee* | string (iri-reference) | |
| project* | string (iri-reference) | |
| position | string | |
| positionName | string | |
| notify | boolean | Whether to send this person the "project assigned" notification (#3955). |
| createdAt | string (date-time) | |
| updatedAt | string (date-time) | |
| possiblePositions | string |
Tâche du projet
Points de terminaison
| POST | /project_tasks/{id}/subscribe | Crée une ressource ProjectTask. |
| POST | /project_tasks/{id}/unsubscribe | Crée une ressource ProjectTask. |
| GET | /project-tasks | Récupère la collection de ressources ProjectTask. |
| POST | /project-tasks | Crée une ressource ProjectTask. |
| GET | /project-tasks/{id} | Récupère une ressource ProjectTask. |
| PATCH | /project-tasks/{id} | Met à jour la ressource ProjectTask. |
| DELETE | /project-tasks/{id} | Supprime la ressource ProjectTask. |
| GET | /project-tasks/picker | Récupère la collection de ressources ProjectTask. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| id | integer | |
| project | string (iri-reference) | |
| requester | string,null (iri-reference) | |
| list | string,null (iri-reference) | |
| status | string (iri-reference) | |
| title | string | |
| description | stringnull | |
| priority* | string | |
| startAt | string,null (date-time) | |
| dueAt | string,null (date-time) | |
| completedAt | string,null (date-time) | |
| position | integer | |
| recurrenceRule | string,null (iri-reference) | |
| recurrenceParent | string,null (iri-reference) | |
| isTemplate | boolean | |
| assignees | array | |
| subtasks | array | The task's checklist, as STRUCTURED items rather than prose (#2210). |
| subscribers | array | |
| asset | string,null (iri-reference) | |
| transaction | string,null (iri-reference) | THE FINANCE DOCUMENT THIS TASK IS ABOUT (#3532). |
| transactionAttachment | string,null (iri-reference) | |
| source | string | |
| raisedBy | string,null (iri-reference) | ZGŁASZAJĄCY — the COLLEAGUE who raised this task (#2210). |
| reporterName | stringnull | |
| reporterEmail | stringnull | |
| createdAt | string (date-time) | |
| updatedAt | string (date-time) | |
| possiblePriorities | string | |
| statusName | stringnull | Slim status accessor for the WorkTime embed — keeps the API payload small (single string) instead of nesting the full ProjectTaskStatus resource on every WorkTime row. |
| template | boolean | |
| subtaskProgress | array | How many of the checklist's items are done, and how many there are (#2210). |
Prix du projet
Points de terminaison
| GET | /project-prices | Récupère la collection de ressources ProjectPrice. |
| POST | /project-prices | Crée une ressource ProjectPrice. |
| GET | /project-prices/{id} | Récupère une ressource ProjectPrice. |
| PATCH | /project-prices/{id} | Met à jour la ressource ProjectPrice. |
| DELETE | /project-prices/{id} | Supprime la ressource ProjectPrice. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| project* | string,null (iri-reference) | |
| property | string,null (iri-reference) | |
| attributeRule* | string (iri-reference) | |
| amount* | string | |
| currency* | string (iri-reference) | |
| dateFrom* | string,null (date-time) | |
| note | stringnull |
Transaction du projet
Points de terminaison
| GET | /project-transactions | Récupère la collection de ressources ProjectTransaction. |
| POST | /project-transactions | Crée une ressource ProjectTransaction. |
| PATCH | /project-transactions/{id} | Met à jour la ressource ProjectTransaction. |
| DELETE | /project-transactions/{id} | Supprime la ressource ProjectTransaction. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| project* | string,null (iri-reference) | |
| transaction* | string,null (iri-reference) | |
| amount | stringnull | |
| note | stringnull |
Tarif du projet employé
Points de terminaison
| GET | /people-project-rates | Récupère la collection de ressources EmployeeProjectRate. |
| POST | /people-project-rates | Crée une ressource EmployeeProjectRate. |
| GET | /people-project-rates/{id} | Récupère une ressource EmployeeProjectRate. |
| PATCH | /people-project-rates/{id} | Met à jour la ressource EmployeeProjectRate. |
| DELETE | /people-project-rates/{id} | Supprime la ressource EmployeeProjectRate. |
| POST | /people-project-rates/{id}/extend | Crée une ressource EmployeeProjectRate. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| id | integer | |
| employee* | string (iri-reference) | |
| project* | string (iri-reference) | |
| position | stringnull | |
| positionRef | string,null (iri-reference) | |
| rate* | number | |
| currency | string (iri-reference) | |
| dateFrom* | string,null (date-time) | Nullable, to match the column, the property, the getter and {@see \App\Service\App\WorkTime\Report\EntryRateResolver::selectEffective()}, all four of which already admit a null left edge. Only this setter and isActive() refused it, which is the same asymmetry: `setDateTo()` and the `dateTo` half of isActive() both handle null, and the `dateFrom` half of neither did (#3159). |
| dateTo | string,null (date-time) | |
| createdAt | string (date-time) | |
| updatedAt | string (date-time) | |
| active | boolean | Does this rate apply on the given date? |
| relatedEmployee | string,null (iri-reference) |
Commentaire de tâche de projet
Points de terminaison
| GET | /project-task-comments | Récupère la collection de ressources ProjectTaskComment. |
| POST | /project-task-comments | Crée une ressource ProjectTaskComment. |
| GET | /project-task-comments/{id} | Récupère une ressource ProjectTaskComment. |
| PATCH | /project-task-comments/{id} | Met à jour la ressource ProjectTaskComment. |
| DELETE | /project-task-comments/{id} | Supprime la ressource ProjectTaskComment. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| id | integer | |
| task | string (iri-reference) | |
| employee | string (iri-reference) | |
| content | string | |
| createdAt | string (date-time) | |
| updatedAt | string (date-time) |
Liste de tâches de projet
Points de terminaison
| GET | /project-task-lists | Récupère la collection de ressources ProjectTaskList. |
| POST | /project-task-lists | Crée une ressource ProjectTaskList. |
| GET | /project-task-lists/{id} | Récupère une ressource ProjectTaskList. |
| PATCH | /project-task-lists/{id} | Met à jour la ressource ProjectTaskList. |
| DELETE | /project-task-lists/{id} | Supprime la ressource ProjectTaskList. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| id | integer | |
| project | string (iri-reference) | |
| name | string | |
| position | integer | |
| isDefault | boolean | |
| createdAt | string (date-time) | |
| updatedAt | string (date-time) | |
| default | boolean |
Statut de tâche de projet
Points de terminaison
| GET | /project-task-statuses | Récupère la collection de ressources ProjectTaskStatus. |
| POST | /project-task-statuses | Crée une ressource ProjectTaskStatus. |
| GET | /project-task-statuses/{id} | Récupère une ressource ProjectTaskStatus. |
| PATCH | /project-task-statuses/{id} | Met à jour la ressource ProjectTaskStatus. |
| DELETE | /project-task-statuses/{id} | Supprime la ressource ProjectTaskStatus. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| id | integer | |
| name | string | |
| color | string | |
| position | integer | |
| isClosed | boolean | READABLE ACCESSOR, and it is not a duplicate of {@see isClosed()} (#3720). |
| isStarted | boolean | Marks a status as meaning "work has begun", exactly parallel to {@see $isClosed}. Not mutually exclusive with it or with itself across rows: like isClosed, more than one status may carry isStarted=true at once (e.g. "In progress" and "In review" could both count as started), and there is no DB or app-level uniqueness enforcement — same as isClosed today. |
| isDefault | boolean | READABLE ACCESSOR, and it is not a duplicate of {@see isDefault()} (#3720). |
| createdAt | string (date-time) | |
| updatedAt | string (date-time) | |
| deletedAt | string,null (date-time) | |
| closed | boolean | |
| started | boolean | |
| default | boolean | |
| deleted | boolean | Check if the entity has been soft deleted. |
Règle de récurrence de tâche de projet
Points de terminaison
| GET | /project-task-recurrence-rules | Récupère la collection de ressources ProjectTaskRecurrenceRule. |
| POST | /project-task-recurrence-rules | Crée une ressource ProjectTaskRecurrenceRule. |
| GET | /project-task-recurrence-rules/{id} | Récupère une ressource ProjectTaskRecurrenceRule. |
| PATCH | /project-task-recurrence-rules/{id} | Met à jour la ressource ProjectTaskRecurrenceRule. |
| DELETE | /project-task-recurrence-rules/{id} | Supprime la ressource ProjectTaskRecurrenceRule. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| id | integer | |
| project | string (iri-reference) | |
| frequency | string | |
| interval | integer | |
| weekday | integernull | |
| monthDay | integernull | |
| timeOfDay | string,null (date-time) | |
| timezone | string | |
| nextRunAt | string,null (date-time) | |
| endAt | string,null (date-time) | |
| maxOccurrences | integernull | |
| occurrencesGenerated | integer | |
| createdAt | string (date-time) | |
| updatedAt | string (date-time) | |
| possibleFrequencies | string |
Plan des personnes du projet
Points de terminaison
| GET | /project-people-plans | Récupère la collection de ressources ProjectPeoplePlan. |
| POST | /project-people-plans | Crée une ressource ProjectPeoplePlan. |
| GET | /project-people-plans/{id} | Récupère une ressource ProjectPeoplePlan. |
| PATCH | /project-people-plans/{id} | Met à jour la ressource ProjectPeoplePlan. |
| DELETE | /project-people-plans/{id} | Supprime la ressource ProjectPeoplePlan. |
| GET | /projects/{projectId}/people-plans | Récupère la collection de ressources ProjectPeoplePlan. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| project | string (iri-reference) | |
| periodKey | string | |
| forecastHours | integernull | |
| overrideRatePerHour | stringnull |
Règle de cascade d'allocation du projet
Points de terminaison
| GET | /project-allocation-cascade-rules | Récupère la collection de ressources ProjectAllocationCascadeRule. |
| POST | /project-allocation-cascade-rules | Crée une ressource ProjectAllocationCascadeRule. |
| GET | /project-allocation-cascade-rules/{id} | Récupère une ressource ProjectAllocationCascadeRule. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| id | string | |
| name | string | |
| assetAttribute | string (iri-reference) | Attribute carried by Property (Asset) entities. Drives the share each selected Asset takes of the total cost. For Juwentus on Horizon this is "Ochrona" (5/13/23.98/23.42/34.60 across the 5 buildings, summing to 100). |
| projectAttribute | string (iri-reference) | Attribute carried by tenant Projects. Drives the within-building split. For Horizon's standard rules this is "Powierzchnia" — each tenant's m² inside its building. |
Pièce jointe de transaction de projet
Points de terminaison
| GET | /project-transaction-attachments | Récupère la collection de ressources ProjectTransactionAttachment. |
| POST | /project-transaction-attachments | Crée une ressource ProjectTransactionAttachment. |
| PATCH | /project-transaction-attachments/{id} | Met à jour la ressource ProjectTransactionAttachment. |
| DELETE | /project-transaction-attachments/{id} | Supprime la ressource ProjectTransactionAttachment. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| project | string (iri-reference) | |
| transactionAttachment | string (iri-reference) | |
| netAmount | integernull | |
| excluded | booleannull | A client the operator DELIBERATELY struck from this split (#3315). |
| line | string,null (iri-reference) |
Tarif du compteur de projet
Points de terminaison
| GET | /project-meter-prices | Récupère la collection de ressources ProjectMeterPrice. |
| POST | /project-meter-prices | Crée une ressource ProjectMeterPrice. |
| PATCH | /project-meter-prices/{id} | Met à jour la ressource ProjectMeterPrice. |
| DELETE | /project-meter-prices/{id} | Supprime la ressource ProjectMeterPrice. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| id | string | |
| project* | string (iri-reference) | |
| utilityType* | string | |
| meter | string,null (iri-reference) | |
| unitPrice* | string | |
| currency | string,null (iri-reference) | |
| effectiveFrom | string,null (date-time) |
Transfert de coût de projet
Points de terminaison
| POST | /project-costs/move | Crée une ressource ProjectCostMove. |
Modèle de projet
Points de terminaison
| GET | /project-templates | Récupère la collection de ressources ProjectTemplate. |
| POST | /project-templates | Crée une ressource ProjectTemplate. |
| GET | /project-templates/{id} | Récupère une ressource ProjectTemplate. |
| PATCH | /project-templates/{id} | Met à jour la ressource ProjectTemplate. |
| DELETE | /project-templates/{id} | Supprime la ressource ProjectTemplate. |
| POST | /project-templates/{id}/instantiate | Crée une ressource ProjectTemplate. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| id | integer | |
| name* | string | |
| structure | object | |
| isDefault | boolean | The org's built-in default template (#3026): applied to a project created with no template explicitly chosen. Read-only over the API — not in the create/update groups — because a user declaring their own template "the default" would leave more than one row with this flag true, and nothing enforces the resulting ambiguity away. Set only by ProjectDefaultTemplateProvisioner, which lazily creates this row once per org and never touches it again. |
| createdAt | string (date-time) | |
| updatedAt | string (date-time) | |
| deletedAt | string,null (date-time) | |
| default | boolean | |
| deleted | boolean | Check if the entity has been soft deleted. |
Sous-tâche de tâche de projet
Points de terminaison
| GET | /project-task-subtasks | Récupère la collection de ressources ProjectTaskSubtask. |
| POST | /project-task-subtasks | Crée une ressource ProjectTaskSubtask. |
| GET | /project-task-subtasks/{id} | Récupère une ressource ProjectTaskSubtask. |
| PATCH | /project-task-subtasks/{id} | Met à jour la ressource ProjectTaskSubtask. |
| DELETE | /project-task-subtasks/{id} | Supprime la ressource ProjectTaskSubtask. |
Champs de schéma
| Champ | Type | Description |
|---|---|---|
| id | integer | |
| task | string (iri-reference) | |
| title* | string | Never empty. An item with no text is not a checklist entry, it is a stray row that renders as a checkbox beside nothing — and the archetype's permanent `.ck.add` row means an accidental blank submit is easy to make. |
| done | boolean | |
| position | integer | Author-arranged order within the task. Ties break on id, via the collection's own ordering. |