Ülesannete API
Siin saab hallata organisatsiooni ülesandeid, määramisi ja automatiseeritud töövooge.
Ülesannete tüübid
Section titled “Ülesannete tüübid”Saadaolevad ülesannete tüübid (kind):
maintenance- Regulaarsed hooldusülesandedaudit- Auditi- ja vastavusülesandedreview- Ülevaatuse ja hindamise ülesanded
Ülesannete sagedused
Section titled “Ülesannete sagedused”Saadaolevad sagedused:
once- Ühekordne ülesanneweekly- Kordub iga nädalmonthly- Kordub iga kuuquarterly- Kordub kord kvartalissemi-annual- Kordub kaks korda aastasannual- Kordub kord aastas
Ülesannete staatused
Section titled “Ülesannete staatused”Saadaolevad ülesannete staatused:
new- Värskelt loodud ülesannein_progress- Ülesanne on töösdone- Ülesanne on tehtudcancelled- Ülesanne on tühistatud
GET /tasks/
Section titled “GET /tasks/”Kõikide ülesannete nimekiri koos filtreerimise võimalusega.
Päringu parameetrid
| Parameeter | Tüüp | Kirjeldus |
|---|---|---|
kind[] | massiiv | Filtreeri ülesande tüübi järgi: maintenance, audit, review. |
state[] | massiiv | Filtreeri staatuse järgi: new, in_progress, done, wont_do. |
assignee[] | massiiv | Filtreeri täitja kasutaja ID-de järgi. |
curl --location GET \--url "https://SINU_KORDONI_DOMEEN/api/v1/tasks/" \--header "Authorization: Bearer SINU_VÕTI"Näide filtritega:
curl --location GET \--url "https://SINU_KORDONI_DOMEEN/api/v1/tasks/?state[]=new&state[]=in_progress" \--header "Authorization: Bearer SINU_VÕTI"Vastuse näide
Staatus: 200
{ "data": [ { "id": "10265263-b1ed-4ddc-82a2-a59aee882840", "assignee": { "id": "98dcb717-al70-4c89-8246-0bb026wc215b", "name": "Jaana Manana" }, "completed_at": "2024-04-13T08:20:41+00:00", "completion_summary": "", "created_at": "2024-04-13T07:51:50+00:00", "description": "<p>This is a description</p>", "due_at": "2024-04-13T00:00:00+00:00", "duration": 15, "frequency": "once", "instance_id": "8f54babf-397f-4119-b55e-d2fa130916a8", "is_overdue": false, "kind": "maintenance", "labels": [], "needs_evidence": false, "next_instance_id": "8f54babf-397f-4119-b55e-d2fa130916a8", "outcome": "none", "state": "done", "taskable": { "id": "08faa5be-bd0a-41be-826a-37170b645b7d", "klass": "control", "title": "Another test control" }, "title": "One time task for something", "updated_at": "2024-04-13T08:20:41+00:00" } ]}GET /tasks/:id
Section titled “GET /tasks/:id”Konkreetse ülesande detailne info.
curl --location GET \--url "https://SINU_KORDONI_DOMEEN/api/v1/tasks/ulesande-id-siia" \--header "Authorization: Bearer SINU_VÕTI"POST /tasks/
Section titled “POST /tasks/”Loo uus ülesanne.
Nõutavad parameetrid:
assignee_id- Ülesande täitja kasutaja IDkind- Ülesande tüüp (maintenance, audit, review)frequency- Ülesande sagedusdue_at- Tähtaeg (ISO 8601 formaat)
Valikulised parameetrid:
title- Ülesande pealkiridescription- Ülesande kirjeldus (toetab lihtsat HTMLi)needs_evidence- Kas ülesanne vajab tõendeid (boolean)duration- Eeldatav kestvus minutites
curl --location POST \--url "https://SINU_KORDONI_DOMEEN/api/v1/tasks/" \--header "Authorization: Bearer SINU_VÕTI" \--header "Content-Type: application/json" \--data '{ "title": "My new task", "assignee_id": "05wa1387-a987-3cyt-y2df-9e41u8569aed", "kind": "maintenance", "frequency": "once", "due_at": "2024-04-13T00:00:00+00:00"}'Vastuse näide
Staatus: 200
{ "data": { "id": "d477c288-96ff-4b99-9fc4-eb2fb9d86bef", "assignee": { "id": "05wa1387-a987-3cyt-y2df-9e41u8569aed", "name": "Martin Lootus" }, "completed_at": null, "completion_summary": null, "created_at": "2024-08-28T15:03:46+00:00", "description": null, "due_at": "2024-04-13T00:00:00+00:00", "duration": null, "frequency": "once", "instance_id": "a02852c4-2b9a-4bd4-a461-61bfb83fc366", "is_overdue": true, "kind": "maintenance", "labels": [], "needs_evidence": false, "next_instance_id": "a02852c4-2b9a-4bd4-a461-61bfb83fc366", "outcome": "none", "state": "new", "taskable": {}, "title": "My new task", "updated_at": "2024-08-28T15:03:46+00:00" }}PATCH /tasks/:id
Section titled “PATCH /tasks/:id”Uuenda olemasolevat ülesannet.
curl --location PATCH \--url "https://SINU_KORDONI_DOMEEN/api/v1/tasks/ulesande-id-siia" \--header "Authorization: Bearer SINU_VÕTI" \--header "Content-Type: application/json" \--data '{ "title": "Updated task title"}'Ühenda ülesanne objektiga
Ühenda ülesanne konkreetse objektiga (meede, vara, tarnija või muu objekt), uuendades taskable_id väärtust.
curl --location PATCH \--url "https://SINU_KORDONI_DOMEEN/api/v1/tasks/ulesande-id-siia" \--header "Authorization: Bearer SINU_VÕTI" \--header "Content-Type: application/json" \--data '{ "task": { "taskable_id": "1f446819-d85e-4ede-a064-568760e02dde" }}'Vastuse näide
Staatus: 200
Vastus sisaldab täielikku ülesande andmestikku koos uuendatud taskable seosega.
{ "data": { "id": "d477c288-96ff-4b99-9fc4-eb2fb9d86bef", "taskable": { "id": "1f446819-d85e-4ede-a064-568760e02dde", "klass": "control", "title": "Security Control" }, ... }}DELETE /tasks/:id
Section titled “DELETE /tasks/:id”Kustuta ülesanne.
curl --location DELETE \--url "https://SINU_KORDONI_DOMEEN/api/v1/tasks/ulesande-id-siia" \--header "Authorization: Bearer SINU_VÕTI"