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"

Korduvad ülesanded toimivad instanceide ahelana. URL-is nähtav ID on emaobjekti ID — stabiilne tunnus, mis ei muutu. Iga kord, kui ülesanne kordub, luuakse selle emaobjekti alla uus instance. Kasutage allolevaid otspunkte kõigi instanceide vaatamiseks.

Tagastab korduva ülesande kõik instanceid — nii mineviku kui praeguse. :id on emaobjekti ID, mille leiad ülesande URL-ist Kordoni kasutajaliideses.

Igal instanceil on oma instance_id. Kõik instanceid jagavad sama emaobjekti id-d. Väli state näitab, kas instance on avatud (new, in_progress) või lõpetatud (done, cancelled).

Terminal window
curl --location GET \
--url "https://SINU_KORDONI_DOMEEN/api/v1/tasks/a3f7e291-c4b2-4d8a-9f1e-8b2c5d6e7f0a/archive" \
--header "Authorization: Bearer SINU_VÕTI"

Vastuse näide

Staatus: 200

{
"data": [
{
"id": "a3f7e291-c4b2-4d8a-9f1e-8b2c5d6e7f0a",
"assignee": {
"id": "c9d2e1f0-a3b4-4c5d-8e9f-0a1b2c3d4e5f",
"active": true,
"color": "#1677FF",
"kind": "person",
"name": "Markus Tamm"
},
"completed_at": null,
"completion_summary": "",
"created_at": "2026-05-10T09:00:00+00:00",
"description": "<p>Kontrolli kõik seadmed ja kirjuta tulemus üles.</p>",
"due_at": "2028-03-01T00:00:00+00:00",
"duration": 30,
"frequency": "annual",
"instance_id": "e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b",
"is_overdue": false,
"kind": "maintenance",
"labels": [],
"needs_evidence": false,
"next_instance_id": "e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b",
"outcome": "none",
"permissions": {
"update": true,
"destroy": true,
"connect": true,
"changelog": true,
"complete": false
},
"state": "new",
"taskable": {
"id": "7f8e9d0c-1b2a-4e3d-5c6b-7a8f9e0d1c2b",
"klass": "asset",
"title": "Serveriruum"
},
"title": "Tuleohutusseadmete ülevaatus",
"updated_at": "2026-05-10T09:00:00+00:00"
},
{
"id": "a3f7e291-c4b2-4d8a-9f1e-8b2c5d6e7f0a",
"assignee": {
"id": "c9d2e1f0-a3b4-4c5d-8e9f-0a1b2c3d4e5f",
"active": true,
"color": "#1677FF",
"kind": "person",
"name": "Markus Tamm"
},
"completed_at": "2026-06-12T14:22:00+00:00",
"completion_summary": "<p>Kõik seadmed kontrollitud. 2 vajavad hooldust.</p>",
"created_at": "2025-11-03T08:15:00+00:00",
"description": "<p>Kontrolli kõik seadmed ja kirjuta tulemus üles.</p>",
"due_at": "2027-03-01T00:00:00+00:00",
"duration": 30,
"frequency": "annual",
"instance_id": "b4c5d6e7-f8a9-4b0c-1d2e-3f4a5b6c7d8e",
"is_overdue": false,
"kind": "maintenance",
"labels": [],
"needs_evidence": false,
"next_instance_id": "e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b",
"outcome": "none",
"permissions": {
"update": true,
"destroy": true,
"connect": true,
"changelog": true,
"complete": false
},
"state": "done",
"taskable": {
"id": "7f8e9d0c-1b2a-4e3d-5c6b-7a8f9e0d1c2b",
"klass": "asset",
"title": "Serveriruum"
},
"title": "Tuleohutusseadmete ülevaatus",
"updated_at": "2026-06-12T14:22:01+00:00"
},
{
"id": "a3f7e291-c4b2-4d8a-9f1e-8b2c5d6e7f0a",
"assignee": {
"id": "c9d2e1f0-a3b4-4c5d-8e9f-0a1b2c3d4e5f",
"active": true,
"color": "#1677FF",
"kind": "person",
"name": "Markus Tamm"
},
"completed_at": "2025-12-15T10:05:00+00:00",
"completion_summary": "",
"created_at": "2025-01-20T07:30:00+00:00",
"description": "<p>Kontrolli kõik seadmed ja kirjuta tulemus üles.</p>",
"due_at": "2026-03-01T00:00:00+00:00",
"duration": 30,
"frequency": "annual",
"instance_id": "d7e8f9a0-b1c2-4d3e-4f5a-6b7c8d9e0f1a",
"is_overdue": false,
"kind": "maintenance",
"labels": [],
"needs_evidence": false,
"next_instance_id": "e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b",
"outcome": "none",
"permissions": {
"update": true,
"destroy": true,
"connect": true,
"changelog": true,
"complete": false
},
"state": "done",
"taskable": {
"id": "7f8e9d0c-1b2a-4e3d-5c6b-7a8f9e0d1c2b",
"klass": "asset",
"title": "Serveriruum"
},
"title": "Tuleohutusseadmete ülevaatus",
"updated_at": "2025-12-15T10:05:01+00:00"
}
],
"meta": {
"total_count": 3,
"page": 1,
"permissions": {
"create": true
},
"per_page": 10
}
}

Tagastab ühe konkreetse archiveeritud ülesande instancei täielikud andmed. Siin olev :id on instance_id eelmise otspunkti vastusest — mitte emaobjekti ID.

Terminal window
curl --location GET \
--url "https://SINU_KORDONI_DOMEEN/api/v1/tasks/archive/b4c5d6e7-f8a9-4b0c-1d2e-3f4a5b6c7d8e" \
--header "Authorization: Bearer SINU_VÕTI"

Vastuse näide

Staatus: 200

{
"data": {
"id": "a3f7e291-c4b2-4d8a-9f1e-8b2c5d6e7f0a",
"assignee": {
"id": "c9d2e1f0-a3b4-4c5d-8e9f-0a1b2c3d4e5f",
"active": true,
"color": "#1677FF",
"kind": "person",
"name": "Markus Tamm"
},
"completed_at": "2026-06-12T14:22:00+00:00",
"completion_summary": "<p>Kõik seadmed kontrollitud. 2 vajavad hooldust.</p>",
"created_at": "2025-11-03T08:15:00+00:00",
"description": "<p>Kontrolli kõik seadmed ja kirjuta tulemus üles.</p>",
"due_at": "2027-03-01T00:00:00+00:00",
"duration": 30,
"frequency": "annual",
"instance_id": "b4c5d6e7-f8a9-4b0c-1d2e-3f4a5b6c7d8e",
"is_overdue": false,
"kind": "maintenance",
"labels": [],
"needs_evidence": false,
"next_instance_id": "e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b",
"outcome": "none",
"permissions": {
"update": true,
"destroy": true,
"connect": true,
"changelog": true,
"complete": false
},
"state": "done",
"taskable": {
"id": "7f8e9d0c-1b2a-4e3d-5c6b-7a8f9e0d1c2b",
"klass": "asset",
"title": "Serveriruum"
},
"title": "Tuleohutusseadmete ülevaatus",
"updated_at": "2026-06-12T14:22:01+00:00"
}
}