Factuarea APIDevelopers
Afegit

Projectes i tasques

El mòdul de tasques arriba a l'API: projectes amb el seu tauler, tasques, etiquetes, temporitzadors, usuaris, notificacions i l'agenda — 80 endpoints nous, 21 esdeveniments, 80 tools MCP i quatre accions d'automatització.

Factuarea ara gestiona també la feina, no només les factures, i tot el mòdul de tasques és al contracte v1: projectes amb un tauler de columnes, tasques vinculades a les teves factures, pressupostos i contactes, temps imputat i facturat, una agenda i els esdeveniments per seguir-ho tot. Són 80 endpoints nous sota set recursos, inclosos en tots els plans. Comença per la guia de projectes i tasques.

  • Set recursos — /v1/projects (22 endpoints: projectes, columnes del tauler, camps personalitzats, l'exportació i importació de tasques en JSON, el resum de temps i la factura de les hores facturables), /v1/tasks i els seus subrecursos (45: cerca, posició al tauler, comentaris, relacions, etiquetes, vincles, adjunts, enllaços de pujada, imputacions de temps, el temporitzador i el registre d'activitat), /v1/task-labels (5), /v1/task-timers (2), /v1/users (2), /v1/notifications (3) i /v1/agenda (1). Tots els endpoints es llisten més avall.
  • 9 scopes nous — projects:read|write|delete, tasks:read|write|delete, users:read i notifications:read|write. projects:* i tasks:* pertanyen al mòdul tasks: una key amb aquests scopes per a una empresa sense ell es rebutja amb scope_not_allowed_by_plan. users:read i notifications:* són transversals. Els scopes projects:delete i tasks:delete són només d'API key: un consentiment OAuth mai no els concedeix. Hi ha nou operacions irreversibles i totes exigeixen una Idempotency-Key; consulta Scopes i operacions irreversibles.
  • Esborrar una columna amb tasques — DELETE /v1/projects/{project}/columns/{column} admet un paràmetre de query move_to_column_id: la columna del mateix projecte que rep les tasques, en el seu ordre, a la mateixa transacció. Sense ell, una columna amb tasques retorna 409 column_has_tasks.
  • Una tasca que neix ja vinculada — POST /v1/tasks accepta un entity_link amb el type i l'id d'una factura, un pressupost, un contacte o qualsevol altra entitat vinculable, i la vincula a la mateixa transacció. Si l'entitat no existeix o és d'una altra empresa, la crida retorna 404 linked_entity_not_found i la tasca no es crea.
  • tasks_count a les etiquetes de tasca — cada etiqueta del catàleg indica quantes tasques la porten, incloses les arxivades.
  • Claus de tasca — DEV-12 es resol amb POST /v1/tasks/find-by-key, i una clau continua funcionant després que la tasca passi a un altre projecte o que el seu projecte canviï de clau.
  • El temps imputat no és el registre de jornada — un task_time_entry és temps dedicat a una tasca, amb els seus propis scopes tasks:* i esdeveniments task_time_entry.*. Mai no apareix al registre del control horari (/v1/time-entries). Consulta Temps imputat a tasques.
  • 21 esdeveniments nous — task.* (created, updated, deleted, status_changed, completed, assigned, unassigned, moved, due_soon i overdue), task_comment.*, task_time_entry.* i project.*. Completar una tasca emet task.status_changed i task.completed, i aquest últim és un subconjunt del primer. Consulta Esdeveniments.
  • 80 tools MCP noves — 22 de projectes, 52 de tasques, 2 d'usuaris, 3 de notificacions i 1 de l'agenda, al ritme de l'API. El catàleg té ara 552 tools; les d'esborrat són només API key. Consulta el catàleg de tools.
  • CLI — factuarea projects, tasks, task-labels, task-timers, users, notifications i agenda, amb els seus scopes i confirmacions. Consulta la guia del CLI.
  • Automatitzacions — els 21 esdeveniments són activadors nous, i quatre accions noves creen i canvien tasques: create_task, change_task_status, assign_task i add_task_comment. En una regla de cartera (cartera), d'elles només s'admet create_task. Consulta Automatitzacions.
  • Codis d'error — 46 codis nous al grup Tasks, cadascun amb la seva causa i què fer, i 18 a Task Integrations per als fluxos que viuen a l'app. Consulta Codis d'error de Tasques.
  • Disponibilitat — el mòdul tasks està inclòs en tots els plans. Les integracions de tasques amb forges de codi i eines de xat, els feeds iCal i el tauler públic existeixen només a l'app; les integracions necessiten el pla Empresario o Enterprise.

Valida els tipus d'acció amb una llista oberta. L'enumerat type d'una acció d'automatització passa de vuit a dotze valors: create_task, change_task_status, assign_task i add_task_comment són nous. Un client que validi actions[].type contra una llista tancada els ha d'afegir. create_calendar_event es queda al vocabulari perquè les versions antigues de les regles continuïn llegint-se, però està retirada: el calendari al qual alimentava ja no existeix, cap adaptador no l'executa i el seu pas no produeix cap efecte. Fes servir create_task en el seu lloc.

Nous endpoints80

EndpointDescripció
GET/v1/projectsLlistar projectes
POST/v1/projectsCrear un projecte
GET/v1/projects/{project}Obtenir un projecte
PUT/v1/projects/{project}Actualitzar un projecte
DEL/v1/projects/{project}Eliminar un projecte
GET/v1/projects/{project}/columnsLlistar columnes de projecte
GET/v1/projects/{project}/custom-fieldsLlistar camps personalitzats de projecte
GET/v1/projects/{project}/tasks/exportExportar les tasques d'un projecte
GET/v1/projects/{project}/time-summaryObtenir el resum de temps d'un projecte
POST/v1/projects/{project}/archiveArxivar un projecte
POST/v1/projects/{project}/columnsCrear una columna de projecte
DEL/v1/projects/{project}/columns/{column}Eliminar una columna de projecte
PUT/v1/projects/{project}/columns/{column}Actualitzar una columna de projecte
PUT/v1/projects/{project}/columns/reorderReordenar columnes de projecte
POST/v1/projects/{project}/custom-fieldsCrear un camp personalitzat de projecte
DEL/v1/projects/{project}/custom-fields/{field}Eliminar un camp personalitzat de projecte
PUT/v1/projects/{project}/custom-fields/{field}Actualitzar un camp personalitzat de projecte
POST/v1/projects/{project}/tasks/importImportar tasques a un projecte
POST/v1/projects/{project}/time-invoicesFacturar el temps d'un projecte
POST/v1/projects/{project}/time-invoices/previewPrevisualitzar la factura del temps d'un projecte
POST/v1/projects/{project}/unarchiveDesarxivar un projecte
POST/v1/projects/find-by-keyCercar un projecte per clau
GET/v1/tasksCercar tasques
POST/v1/tasksCrear una tasca
GET/v1/tasks/{task}Obtenir una tasca
PUT/v1/tasks/{task}Actualitzar una tasca
DEL/v1/tasks/{task}Eliminar una tasca
GET/v1/tasks/{task}/activitiesLlistar l'activitat d'una tasca
GET/v1/tasks/{task}/attachmentsLlistar adjunts de tasca
GET/v1/tasks/{task}/attachments/{attachment}Obtenir un adjunt de tasca
GET/v1/tasks/{task}/attachments/{attachment}/downloadDescarregar un adjunt de tasca
GET/v1/tasks/{task}/commentsLlistar comentaris de tasca
GET/v1/tasks/{task}/entity-linksLlistar vincles de tasca amb entitats
GET/v1/tasks/{task}/external-linksLlistar enllaços externs de tasca
GET/v1/tasks/{task}/relationsLlistar relacions de tasca
GET/v1/tasks/{task}/time-entriesLlistar imputacions de temps de tasca
GET/v1/tasks/{task}/time-entries/{time_entry}Obtenir una imputació de temps de tasca
GET/v1/tasks/linkedLlistar tasques vinculades a una entitat
POST/v1/tasks/{task}/assignAssignar una tasca
POST/v1/tasks/{task}/attachmentsPujar un adjunt de tasca
DEL/v1/tasks/{task}/attachments/{attachment}Eliminar un adjunt de tasca
POST/v1/tasks/{task}/commentsCrear un comentari de tasca
DEL/v1/tasks/{task}/comments/{comment}Eliminar un comentari de tasca
PUT/v1/tasks/{task}/comments/{comment}Actualitzar un comentari de tasca
PUT/v1/tasks/{task}/custom-fields/{field}Establir el valor d'un camp personalitzat de tasca
POST/v1/tasks/{task}/duplicateDuplicar una tasca
POST/v1/tasks/{task}/entity-linksVincular una tasca a una entitat
DEL/v1/tasks/{task}/entity-links/{link}Desvincular una tasca d'una entitat
POST/v1/tasks/{task}/external-linksCrear un enllaç extern de tasca
DEL/v1/tasks/{task}/external-links/{link}Eliminar un enllaç extern de tasca
POST/v1/tasks/{task}/labelsAssignar una etiqueta a una tasca
DEL/v1/tasks/{task}/labels/{label}Treure una etiqueta d'una tasca
POST/v1/tasks/{task}/moveMoure una tasca a un altre projecte
POST/v1/tasks/{task}/relationsCrear una relació de tasca
DEL/v1/tasks/{task}/relations/{relation}Eliminar una relació de tasca
POST/v1/tasks/{task}/repositionRecol·locar una tasca
POST/v1/tasks/{task}/statusCanviar l'estat d'una tasca
POST/v1/tasks/{task}/time-entriesCrear una imputació de temps de tasca
DEL/v1/tasks/{task}/time-entries/{time_entry}Eliminar una imputació de temps de tasca
PUT/v1/tasks/{task}/time-entries/{time_entry}Actualitzar una imputació de temps de tasca
POST/v1/tasks/{task}/timer/startIniciar un temporitzador de tasca
POST/v1/tasks/{task}/unassignDesassignar una tasca
POST/v1/tasks/{task}/upload-linksCrear un enllaç de pujada de tasca
POST/v1/tasks/bulk-deleteEliminació massiva de tasques
POST/v1/tasks/bulk-statusCanviar l'estat de tasques en bloc
POST/v1/tasks/bulk-updateActualització massiva de tasques
POST/v1/tasks/find-by-keyCercar una tasca per clau
GET/v1/task-labelsLlistar etiquetes de tasca
POST/v1/task-labelsCrear una etiqueta de tasca
GET/v1/task-labels/{label}Obtenir una etiqueta de tasca
PUT/v1/task-labels/{label}Actualitzar una etiqueta de tasca
DEL/v1/task-labels/{label}Eliminar una etiqueta de tasca
GET/v1/task-timers/currentObtenir el temporitzador de tasca en marxa
POST/v1/task-timers/stopAturar el temporitzador de tasca en marxa
GET/v1/usersLlistar usuaris
GET/v1/users/meObtenir l'usuari actual
GET/v1/notificationsLlistar notificacions
POST/v1/notifications/{notification}/readMarcar una notificació com a llegida
POST/v1/notifications/mark-all-readMarcar totes les notificacions com a llegides
GET/v1/agendaLlistar elements de l'agenda