Skip to content

Ülesannete API

Siin saab hallata organisatsiooni ülesandeid, määramisi ja automatiseeritud töövooge.

Saadaolevad ülesannete tüübid (kind):

  • maintenance - Regulaarsed hooldusülesanded
  • audit - Auditi- ja vastavusülesanded
  • review - Ülevaatuse ja hindamise ülesanded

Saadaolevad sagedused:

  • once - Ühekordne ülesanne
  • weekly - Kordub iga nädal
  • monthly - Kordub iga kuu
  • quarterly - Kordub kord kvartalis
  • semi-annual - Kordub kaks korda aastas
  • annual - Kordub kord aastas

Saadaolevad ülesannete staatused:

  • new - Värskelt loodud ülesanne
  • in_progress - Ülesanne on töös
  • done - Ülesanne on tehtud
  • cancelled - Ülesanne on tühistatud

Kõikide ülesannete nimekiri koos filtreerimise võimalusega.

Päringu parameetrid

ParameeterTüüpKirjeldus
kind[]massiivFiltreeri ülesande tüübi järgi: maintenance, audit, review.
state[]massiivFiltreeri staatuse järgi: new, in_progress, done, wont_do.
assignee[]massiivFiltreeri täitja kasutaja ID-de järgi.
Terminal window
curl --location GET \
--url "https://SINU_KORDONI_DOMEEN/api/v1/tasks/" \
--header "Authorization: Bearer SINU_VÕTI"

Näide filtritega:

Terminal window
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"
}
]
}

Konkreetse ülesande detailne info.

Terminal window
curl --location GET \
--url "https://SINU_KORDONI_DOMEEN/api/v1/tasks/ulesande-id-siia" \
--header "Authorization: Bearer SINU_VÕTI"

Loo uus ülesanne.

Nõutavad parameetrid:

  • assignee_id - Ülesande täitja kasutaja ID
  • kind - Ülesande tüüp (maintenance, audit, review)
  • frequency - Ülesande sagedus
  • due_at - Tähtaeg (ISO 8601 formaat)

Valikulised parameetrid:

  • title - Ülesande pealkiri
  • description - Ülesande kirjeldus (toetab lihtsat HTMLi)
  • needs_evidence - Kas ülesanne vajab tõendeid (boolean)
  • duration - Eeldatav kestvus minutites
Terminal window
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"
}
}

Uuenda olemasolevat ülesannet.

Terminal window
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.

Terminal window
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"
},
...
}
}

Kustuta ülesanne.

Terminal window
curl --location DELETE \
--url "https://SINU_KORDONI_DOMEEN/api/v1/tasks/ulesande-id-siia" \
--header "Authorization: Bearer SINU_VÕTI"