Progetti e consegne
Progetti, attività, membri, tariffe e allocazioni — automatizza la delivery e sincronizza i dati di progetto.
Progetto
Endpoint
| GET | /projects | Recupera la raccolta di risorse Project. |
| POST | /projects | Crea una risorsa Project. |
| GET | /projects/{id} | Recupera una risorsa Project. |
| PATCH | /projects/{id} | Aggiorna la risorsa Project. |
| DELETE | /projects/{id} | Rimuove la risorsa Project. |
| POST | /projects/{id}/archive | Archive this project |
| GET | /projects/{id}/cost-allocations | Recupera una risorsa Project. |
| GET | /projects/{id}/documents | Recupera una risorsa Project. |
| GET | /projects/{id}/logged-time | Recupera una risorsa 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 | Recupera una risorsa Project. |
| GET | /projects/{id}/reparent-impact | How many employees lose visibility if this project is moved |
| GET | /projects/{id}/travel | Recupera una risorsa Project. |
| POST | /projects/{id}/unarchive | Restore an archived project |
| POST | /projects/{id}/unpin | Unpin this project for the current user |
| GET | /projects/folder-counts | Recupera la raccolta di risorse Project. |
| GET | /projects/preview | Recupera la raccolta di risorse Project. |
| GET | /projects/reference-usage | Recupera la raccolta di risorse Project. |
| GET | /projects/search | Recupera la raccolta di risorse Project. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| 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 |
Membro del progetto
Endpoint
| GET | /project-members | Recupera la raccolta di risorse ProjectMember. |
| POST | /project-members | Crea una risorsa ProjectMember. |
| GET | /project-members/{id} | Recupera una risorsa ProjectMember. |
| PATCH | /project-members/{id} | Aggiorna la risorsa ProjectMember. |
| DELETE | /project-members/{id} | Rimuove la risorsa ProjectMember. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| 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 |
Attività del progetto
Endpoint
| POST | /project_tasks/{id}/subscribe | Crea una risorsa ProjectTask. |
| POST | /project_tasks/{id}/unsubscribe | Crea una risorsa ProjectTask. |
| GET | /project-tasks | Recupera la raccolta di risorse ProjectTask. |
| POST | /project-tasks | Crea una risorsa ProjectTask. |
| GET | /project-tasks/{id} | Recupera una risorsa ProjectTask. |
| PATCH | /project-tasks/{id} | Aggiorna la risorsa ProjectTask. |
| DELETE | /project-tasks/{id} | Rimuove la risorsa ProjectTask. |
| GET | /project-tasks/picker | Recupera la raccolta di risorse ProjectTask. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| 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). |
Prezzo del progetto
Endpoint
| GET | /project-prices | Recupera la raccolta di risorse ProjectPrice. |
| POST | /project-prices | Crea una risorsa ProjectPrice. |
| GET | /project-prices/{id} | Recupera una risorsa ProjectPrice. |
| PATCH | /project-prices/{id} | Aggiorna la risorsa ProjectPrice. |
| DELETE | /project-prices/{id} | Rimuove la risorsa ProjectPrice. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| 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 |
Transazione del progetto
Endpoint
| GET | /project-transactions | Recupera la raccolta di risorse ProjectTransaction. |
| POST | /project-transactions | Crea una risorsa ProjectTransaction. |
| PATCH | /project-transactions/{id} | Aggiorna la risorsa ProjectTransaction. |
| DELETE | /project-transactions/{id} | Rimuove la risorsa ProjectTransaction. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| project* | string,null (iri-reference) | |
| transaction* | string,null (iri-reference) | |
| amount | stringnull | |
| note | stringnull |
Tariffa dipendente per progetto
Endpoint
| GET | /people-project-rates | Recupera la raccolta di risorse EmployeeProjectRate. |
| POST | /people-project-rates | Crea una risorsa EmployeeProjectRate. |
| GET | /people-project-rates/{id} | Recupera una risorsa EmployeeProjectRate. |
| PATCH | /people-project-rates/{id} | Aggiorna la risorsa EmployeeProjectRate. |
| DELETE | /people-project-rates/{id} | Rimuove la risorsa EmployeeProjectRate. |
| POST | /people-project-rates/{id}/extend | Crea una risorsa EmployeeProjectRate. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| 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) |
Commento attività di progetto
Endpoint
| GET | /project-task-comments | Recupera la raccolta di risorse ProjectTaskComment. |
| POST | /project-task-comments | Crea una risorsa ProjectTaskComment. |
| GET | /project-task-comments/{id} | Recupera una risorsa ProjectTaskComment. |
| PATCH | /project-task-comments/{id} | Aggiorna la risorsa ProjectTaskComment. |
| DELETE | /project-task-comments/{id} | Rimuove la risorsa ProjectTaskComment. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| id | integer | |
| task | string (iri-reference) | |
| employee | string (iri-reference) | |
| content | string | |
| createdAt | string (date-time) | |
| updatedAt | string (date-time) |
Elenco attività di progetto
Endpoint
| GET | /project-task-lists | Recupera la raccolta di risorse ProjectTaskList. |
| POST | /project-task-lists | Crea una risorsa ProjectTaskList. |
| GET | /project-task-lists/{id} | Recupera una risorsa ProjectTaskList. |
| PATCH | /project-task-lists/{id} | Aggiorna la risorsa ProjectTaskList. |
| DELETE | /project-task-lists/{id} | Rimuove la risorsa ProjectTaskList. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| id | integer | |
| project | string (iri-reference) | |
| name | string | |
| position | integer | |
| isDefault | boolean | |
| createdAt | string (date-time) | |
| updatedAt | string (date-time) | |
| default | boolean |
Stato attività di progetto
Endpoint
| GET | /project-task-statuses | Recupera la raccolta di risorse ProjectTaskStatus. |
| POST | /project-task-statuses | Crea una risorsa ProjectTaskStatus. |
| GET | /project-task-statuses/{id} | Recupera una risorsa ProjectTaskStatus. |
| PATCH | /project-task-statuses/{id} | Aggiorna la risorsa ProjectTaskStatus. |
| DELETE | /project-task-statuses/{id} | Rimuove la risorsa ProjectTaskStatus. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| 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. |
Regola di ricorrenza attività di progetto
Endpoint
| GET | /project-task-recurrence-rules | Recupera la raccolta di risorse ProjectTaskRecurrenceRule. |
| POST | /project-task-recurrence-rules | Crea una risorsa ProjectTaskRecurrenceRule. |
| GET | /project-task-recurrence-rules/{id} | Recupera una risorsa ProjectTaskRecurrenceRule. |
| PATCH | /project-task-recurrence-rules/{id} | Aggiorna la risorsa ProjectTaskRecurrenceRule. |
| DELETE | /project-task-recurrence-rules/{id} | Rimuove la risorsa ProjectTaskRecurrenceRule. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| 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 |
Piano persone di progetto
Endpoint
| GET | /project-people-plans | Recupera la raccolta di risorse ProjectPeoplePlan. |
| POST | /project-people-plans | Crea una risorsa ProjectPeoplePlan. |
| GET | /project-people-plans/{id} | Recupera una risorsa ProjectPeoplePlan. |
| PATCH | /project-people-plans/{id} | Aggiorna la risorsa ProjectPeoplePlan. |
| DELETE | /project-people-plans/{id} | Rimuove la risorsa ProjectPeoplePlan. |
| GET | /projects/{projectId}/people-plans | Recupera la raccolta di risorse ProjectPeoplePlan. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| project | string (iri-reference) | |
| periodKey | string | |
| forecastHours | integernull | |
| overrideRatePerHour | stringnull |
Regola a cascata di allocazione di progetto
Endpoint
| GET | /project-allocation-cascade-rules | Recupera la raccolta di risorse ProjectAllocationCascadeRule. |
| POST | /project-allocation-cascade-rules | Crea una risorsa ProjectAllocationCascadeRule. |
| GET | /project-allocation-cascade-rules/{id} | Recupera una risorsa ProjectAllocationCascadeRule. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| 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. |
Allegato transazione di progetto
Endpoint
| GET | /project-transaction-attachments | Recupera la raccolta di risorse ProjectTransactionAttachment. |
| POST | /project-transaction-attachments | Crea una risorsa ProjectTransactionAttachment. |
| PATCH | /project-transaction-attachments/{id} | Aggiorna la risorsa ProjectTransactionAttachment. |
| DELETE | /project-transaction-attachments/{id} | Rimuove la risorsa ProjectTransactionAttachment. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| 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) |
Prezzo Meter di Progetto
Endpoint
| GET | /project-meter-prices | Recupera la raccolta di risorse ProjectMeterPrice. |
| POST | /project-meter-prices | Crea una risorsa ProjectMeterPrice. |
| PATCH | /project-meter-prices/{id} | Aggiorna la risorsa ProjectMeterPrice. |
| DELETE | /project-meter-prices/{id} | Rimuove la risorsa ProjectMeterPrice. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| 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) |
Spostamento costo progetto
Endpoint
| POST | /project-costs/move | Crea una risorsa ProjectCostMove. |
Modello di progetto
Endpoint
| GET | /project-templates | Recupera la raccolta di risorse ProjectTemplate. |
| POST | /project-templates | Crea una risorsa ProjectTemplate. |
| GET | /project-templates/{id} | Recupera una risorsa ProjectTemplate. |
| PATCH | /project-templates/{id} | Aggiorna la risorsa ProjectTemplate. |
| DELETE | /project-templates/{id} | Rimuove la risorsa ProjectTemplate. |
| POST | /project-templates/{id}/instantiate | Crea una risorsa ProjectTemplate. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| 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. |
Sottoattività di un'attività di progetto
Endpoint
| GET | /project-task-subtasks | Recupera la raccolta di risorse ProjectTaskSubtask. |
| POST | /project-task-subtasks | Crea una risorsa ProjectTaskSubtask. |
| GET | /project-task-subtasks/{id} | Recupera una risorsa ProjectTaskSubtask. |
| PATCH | /project-task-subtasks/{id} | Aggiorna la risorsa ProjectTaskSubtask. |
| DELETE | /project-task-subtasks/{id} | Rimuove la risorsa ProjectTaskSubtask. |
Campi schema
| Campo | Tipo | Descrizione |
|---|---|---|
| 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. |